Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
ASA9 При увеличении подключений производительность сильно падает ...
|
|||
|---|---|---|---|
|
#18+
Каждая копия клиентского приложения использует 3 коннекта. На 1 и 2 коннекте в среднем по 1-2 открытых курсора. На 3 коннекте порядка 25 открытых курсора. Все пользователи и коннекшоны коннектятся под DBA. Что можно сделать? Может из-за того что всё под dba тормозить? Сервак приличный, но на нём ещё запущены помимо севера ASA9 2 сервера ASA7. Занятость процессоров в среднем по 60%. (2 процессора по 2 ядра). OS Win 2003. Не удается инициализировать область данных системного монитора NT; запуск сервера продолжается Adaptive Server Anywhere Network Server Version 9.0.2.3131 Copyright c 1989-2004 Sybase, Inc. Частичное Copyright c 2002-2004, iAnywhere Solutions, Inc. Все права защищены. Все неопубликованные права защищены. This software contains confidential and trade secret information of iAnywhere Solutions, Inc. Use, duplication or disclosure of the software and documentation by the U.S. Government is subject to restrictions set forth in a license agreement between the Government and iAnywhere Solutions, Inc. or other written agreement specifying the Government's rights to use the software and any applicable FAR provisions, for example, FAR 52.227-19. iAnywhere Solutions, Inc., One Sybase Drive, Dublin, CA 94568, USA ru:4 logical processor(s) on 2 physical processor(s) detected. Модель лицензирования по числу процессоров. Доступ к серверу ограничен 4 процессорами. Лицензией на этот сервер обладает: AZ AZ Выполняется на Windows 2003 Build 3790 462832K памяти использовано для кэширования Минимальный размер кэша: 2048К, максимальный размер кэша: 462832К Использование страницы максимального размера 8192 байт Запуск базы данных "z9" (D:\z9.db) в Ср 03 Авг 2005 г. 12:57 Системное предупреждение: файл базы данных "D:\z9.db" состоит из 2 дисковых фрагментов Журнал транзакций: z9.log Зеркальная копия журнала транзакций: z9.mlg Запуск контрольной точки "z9" (z9.db) в Ср 03 Авг 2005 г. 12:57 Завершение контрольной точки "z9" (z9.db) в Ср 03 Авг 2005 г. 12:57 База данных "z9" (z9.db) запущена в Ср 03 Авг 2005 г. 12:57 Сервер базы данных запущен Ср 03 Авг 2005 г. 12:57 Попытка запустить канал связи SharedMemory ... канал связи SharedMemory запущен успешно Попытка запустить канал связи TCPIP ... Запуск в порте 49152 канал связи TCPIP запущен успешно Сейчас принимаются запросы ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.08.2005, 16:28 |
|
||
|
ASA9 При увеличении подключений производительность сильно падает ...
|
|||
|---|---|---|---|
|
#18+
Строка запуска dbsrv9.exe -x tcpip(ServerPort=49152) -n Z9 -m -p 2048 -u -zl "D:\z9.db" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.08.2005, 16:35 |
|
||
|
ASA9 При увеличении подключений производительность сильно падает ...
|
|||
|---|---|---|---|
|
#18+
Igor111111Все пользователи и коннекшоны коннектятся под DBA. Это нехорошо с точки зрения безопасности. Это очень нехорошо с точки зрения безопасности. Но с точки зрения производительности разницы нет. Что можно сделать? Запустить профайлер, набрать статистику и посмотреть какие запросы занимают основное время. Подумать каких индексов не хватает, какие лишние. Оптимизировать запросы. В общем обычная рутина. Igor111111dbsrv9.exe -x tcpip(ServerPort=49152) -n Z9 -m -p 2048 -u -zl "D:\z9.db" А зачем используется ключик -m? Он же запрещает серверу вести лог, вернее обнуляет его по завершению транзакции и совсем убивает по шатдауну сервера. А у тебя в базе при этом есть простой лог и зеркальный. В общем бессмысленно как-то :) Ключ -u тоже может слегка притормаживать сервер. Конфликты кешей знаете-ли... Но вряд ли это будет заметно глазу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.08.2005, 16:58 |
|
||
|
ASA9 При увеличении подключений производительность сильно падает ...
|
|||
|---|---|---|---|
|
#18+
White Owl Это нехорошо с точки зрения безопасности. Это очень нехорошо с точки зрения безопасности. Но с точки зрения производительности разницы нет. Коннект идёт автоматом из приложения. Пользователи не могут администрировать... White Owl Что можно сделать? Запустить профайлер, набрать статистику и посмотреть какие запросы занимают основное время. Подумать каких индексов не хватает, какие лишние. Оптимизировать запросы. В общем обычная рутина. Профайлер? Это что? В смысле план запроса в ISQL смотреть, какие ветви как отрабатывают? White Owl А зачем используется ключик -m? Он же запрещает серверу вести лог, вернее обнуляет его по завершению транзакции и совсем убивает по шатдауну сервера. А у тебя в базе при этом есть простой лог и зеркальный. В общем бессмысленно как-то :) Ключ -u тоже может слегка притормаживать сервер. Конфликты кешей знаете-ли... Но вряд ли это будет заметно глазу. -m поставлен был что-бы логи гигабитные не получались, бэкапилась база с такими логами... А зеркальный поставил потому что был случай когда лог поролся. Ну может я с этим немного и напутал :). Самое главное в том что, при разработке одновременно 5 человек работало с базой (3 программера и 2 проверяли параллельно(т.е. работали с такими же клиентскими приложениями)). Так сервак на моей машине крутился которая на несколько порядков по производительности ниже. (у меня полный П4, гиг памяти у клиента сервер HP 2*Xeon, 2Gb, SCSI массив) так у меня при таком же кол-ве пользователей работало раз в 5 быстрее. Есть смысл смотреть свойства соединений через sa_conn_properties? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.08.2005, 17:15 |
|
||
|
ASA9 При увеличении подключений производительность сильно падает ...
|
|||
|---|---|---|---|
|
#18+
Ещё специфика приложения в том что запускаются сложные расчёты (на них то в принципе и тормозит), При расчёте в программе идёт куча запросов в перемешку с расчётами. ХП использовать не представляется возможным... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.08.2005, 17:23 |
|
||
|
ASA9 При увеличении подключений производительность сильно падает ...
|
|||
|---|---|---|---|
|
#18+
Igor111111Коннект идёт автоматом из приложения. Пользователи не могут администрировать... Не важно. Все равно это очень плохая идея давать пользователям DBA права. Igor111111Профайлер? Это что? В смысле план запроса в ISQL смотреть, какие ветви как отрабатывают? Запускаешь Sybase Central, правой кнопкой по имени базы данных выбираешь Profiling->Start Profiling Потом смотришь страницу (там же, в Централе) базы Profile. Там будут все запросы за период после старта профайлера отсортированые по тяжести. Смотришь какие запросы выполняются долго, какие быстро. И оптимизируешь те которые выполняются долго. Для оптимизации естественно прийдется план запроса поизучать. Igor111111-m поставлен был что-бы логи гигабитные не получались, бэкапилась база с такими логами... Дак там вообще никакие логи получаться не будут! :) Igor111111Есть смысл смотреть свойства соединений через sa_conn_properties? Вряд-ли :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.08.2005, 21:01 |
|
||
|
ASA9 При увеличении подключений производительность сильно падает ...
|
|||
|---|---|---|---|
|
#18+
Igor111111Ещё специфика приложения в том что запускаются сложные расчёты (на них то в принципе и тормозит), При расчёте в программе идёт куча запросов в перемешку с расчётами. ХП использовать не представляется возможным... Это почему вдруг? Лично я, все расчеты, всегда, стараюсь запихнуть в хранимки. Тогда я буду уверен что расчеты делаются правильно и однообразно и не важно какой клиент в данный момент полез к базе. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.08.2005, 21:03 |
|
||
|
ASA9 При увеличении подключений производительность сильно падает ...
|
|||
|---|---|---|---|
|
#18+
А еще вызывает легкое недоумение фраза выданная автором о 25 открытых курсорах. Они что, одновременно? Вложенные друг в друга в 25 уровней? Нах, нах, ой. Вах! Вах! Вот в MSSQL по умолчанию не откроешь следующий пока не закроешь предыдущий. А тут если открыть 25 подряд одним коннектом, так может АСА и поплохеет. Автор, разъясните ситуацию с курсорами! Posted via ActualForum NNTP Server 1.2 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.08.2005, 23:19 |
|
||
|
ASA9 При увеличении подключений производительность сильно падает ...
|
|||
|---|---|---|---|
|
#18+
Igor111111Строка запуска dbsrv9.exe -x tcpip(ServerPort=49152) -n Z9 -m -p 2048 -u -zl "D:\z9.db" Imho -c 80P добавьте... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2005, 02:57 |
|
||
|
ASA9 При увеличении подключений производительность сильно падает ...
|
|||
|---|---|---|---|
|
#18+
White Owl Запускаешь Sybase Central, правой кнопкой по имени базы данных выбираешь Profiling->Start Profiling Потом смотришь страницу (там же, в Централе) базы Profile. Там будут все запросы за период после старта профайлера отсортированые по тяжести. Смотришь какие запросы выполняются долго, какие быстро. И оптимизируешь те которые выполняются долго. Для оптимизации естественно прийдется план запроса поизучать. Да штука конечно интересная... Но вот что-то не получается через неё мои запросы видеть. Вот то что вижу... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2005, 11:54 |
|
||
|
ASA9 При увеличении подключений производительность сильно падает ...
|
|||
|---|---|---|---|
|
#18+
Картика ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2005, 11:55 |
|
||
|
ASA9 При увеличении подключений производительность сильно падает ...
|
|||
|---|---|---|---|
|
#18+
Кстати что-то форум глючит при добавлении картинки с именем "tmp.bmp" говорит "Документ не содержит данных" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2005, 11:56 |
|
||
|
ASA9 При увеличении подключений производительность сильно падает ...
|
|||
|---|---|---|---|
|
#18+
iLLer А еще вызывает легкое недоумение фраза выданная автором о 25 открытых курсорах. Они что, одновременно? Вложенные друг в друга в 25 уровней? Нах, нах, ой. Вах! Вах! Вот в MSSQL по умолчанию не откроешь следующий пока не закроешь предыдущий. А тут если открыть 25 подряд одним коннектом, так может АСА и поплохеет. Автор, разъясните ситуацию с курсорами! Одни курсоры (6 штук) открываются для навигации по объектам и отображения вспомогательной информации про объекты. В редакторе объекта находится несколько закладок, данные на которую выбираются через отдельный запрос (1 закладка - 1 курсор). Закладок до 10 в зависимости от типа объекта. На одной из закладок есть до 10 выпадающих списков (Delphi.DBLookUpComboBox), которые также имеют свой DataSource (а соответственно и курсор). CursorLocation = clUseClient CursorType = Static А вот можно как нибудь посмотреть инфо об открытых курсорах на конкретном коннекте (ну кроме их кол-ва в sa_conn_properties). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2005, 12:16 |
|
||
|
ASA9 При увеличении подключений производительность сильно падает ...
|
|||
|---|---|---|---|
|
#18+
_Dog Imho -c 80P добавьте... Попробовать можно конечно, но я думаю не сильно спасёт сама база около 600Мб кеш по запуску под 500мб сам ставилсяююю ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2005, 12:26 |
|
||
|
ASA9 При увеличении подключений производительность сильно падает ...
|
|||
|---|---|---|---|
|
#18+
IgorCCSДа штука конечно интересная... Но вот что-то не получается через неё мои запросы видеть. Вот то что вижу... Так а ты подожди чуток. Запусти например своего клиента и попытайся поработать. В профайл попадают все команды которые дают все клиенты. Простые команды будут там в открытом виде лежать, по процедуры можно пощелкать - попадешь в тело процедуры и там каждая команда данная процедурой будет иметь цифру миллисекунд выполнения и сколько процентов времени эта команда заняла от общего времени выполнения процедуры. Узкие места просто в лет находятся! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2005, 17:49 |
|
||
|
ASA9 При увеличении подключений производительность сильно падает ...
|
|||
|---|---|---|---|
|
#18+
White Owl Простые команды будут там в открытом виде лежать Не видно у меня простых команд. Может потому что они через ADO посылаются. Вот по количеству вызовов sa_oledb_indexes (4414 раз) sa_oledb_primary_keys (5658 раз) можно сказать что было выполнено около 5000 тыщ query (запросов, курсоров) Но я их не вижу... :( В Folter Object by Owner dba стоит. Все пользователи коннектятся под ним. Под именем DBA в профайлера только 1 строка стоит когда у меня BackUp отработал... White Owl по процедуры можно пощелкать - попадешь в тело процедуры и там каждая команда данная процедурой будет иметь цифру миллисекунд выполнения и сколько процентов времени эта команда заняла от общего времени выполнения процедуры. Узкие места просто в лет находятся! Это да, по ХП всё видно, всё заходится ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2005, 18:22 |
|
||
|
ASA9 При увеличении подключений производительность сильно падает ...
|
|||
|---|---|---|---|
|
#18+
IgorCCS White Owl Простые команды будут там в открытом виде лежать Не видно у меня простых команд. Может потому что они через ADO посылаются. хм.... сейчас попробовал из VBS через ADO - действительно не видно простых команд. Странно. Наверное я их где-то в другом месте видел.... О! Там же в Централе есть еще одна пакость называется Index Consultant. Вызывается так же через контекстное меню для базы. Вот оно точно умеет перехватывать отдельные команды пришедшие от клиентов и сразу предлагает добавить/убрать индексы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2005, 20:46 |
|
||
|
ASA9 При увеличении подключений производительность сильно падает ...
|
|||
|---|---|---|---|
|
#18+
White Owl IgorCCS White Owl Простые команды будут там в открытом виде лежать Не видно у меня простых команд. Может потому что они через ADO посылаются. хм.... сейчас попробовал из VBS через ADO - действительно не видно простых команд. Странно. Наверное я их где-то в другом месте видел.... О! Там же в Централе есть еще одна пакость называется Index Consultant. Вызывается так же через контекстное меню для базы. Вот оно точно умеет перехватывать отдельные команды пришедшие от клиентов и сразу предлагает добавить/убрать индексы. Консультант это конечно хорошо, спасибо за наводку завтра посмотрю. Если б в профайлере это было вообще было бы замечательно. А консультант он только по индексам. С ними уже вроде разобрался. Отследить поступающие запросы вот это было бы класс. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2005, 21:02 |
|
||
|
ASA9 При увеличении подключений производительность сильно падает ...
|
|||
|---|---|---|---|
|
#18+
На такой машине, да с такой базой(600М) должно все летать, ведь фактически вся БД грузится в память!!! Может из-за ключа -м сервак вынужден сбрасывать страницы на диск, поэтому если у вас очень много транзакций, то лучше от этого ключа избавиться. У сервера есть средство логгирования запросов. Вроде ключ -zr, может поможет. Но только это не профайлер. Еще советую добавить -cw, потому как винда считает себя умней, и без этого ключа может запросто держать сервачный кэш на диске. Что из этого получается - можете догадаться. Ну и лучше, конечно, принудительно указать размер кэша. Держать курсоры открытыми - плохой тон. Клиент должен закрывать курсоры как можно скорее. Вы уверены, что курсоры не закрываются? Ибо "1 закладка - 1 курсор" еще не говорит о том, что курсор не закрывается! Posted via ActualForum NNTP Server 1.2 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.08.2005, 23:37 |
|
||
|
ASA9 При увеличении подключений производительность сильно падает ...
|
|||
|---|---|---|---|
|
#18+
iLLer На такой машине, да с такой базой(600М) должно все летать, ведь фактически вся БД грузится в память!!! Может из-за ключа -м сервак вынужден сбрасывать страницы на диск, поэтому если у вас очень много транзакций, то лучше от этого ключа избавиться. У сервера есть средство логгирования запросов. Вроде ключ -zr, может поможет. Но только это не профайлер. смотреть через -zr конечно можно... :) Спасибо за наводку. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. iLLer Еще советую добавить -cw, потому как винда считает себя умней, и без этого ключа может запросто держать сервачный кэш на диске. Что из этого получается - можете догадаться. Ну и лучше, конечно, принудительно указать размер кэша. Попробуем iLLer Держать курсоры открытыми - плохой тон. Клиент должен закрывать курсоры как можно скорее. Вы уверены, что курсоры не закрываются? Ибо "1 закладка - 1 курсор" еще не говорит о том, что курсор не закрывается! Согласен. Придётся ещё раз по запросам. Но всё равно меньше 10 одновременно открытых не получится, т.к. не можем себе позволить тормоза при бегании по закладкам. И всё же курсоры были упомянуты как возможная причина замедления. Проблема всё таки в том, что запросы дольше выполняются (у нас в принципе можно сказать всё быстро работает чего не скажеш о клиенте). Такое ощущение что в какой-то момент в цепи ADO - OLE - ASA при выполнении запроса (открытии курсора) есть тормоз. Может и небольшой, но при расчёте 1 записи когда выполняются пара десятков запросов это даёт о себе знать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.08.2005, 09:22 |
|
||
|
ASA9 При увеличении подключений производительность сильно падает ...
|
|||
|---|---|---|---|
|
#18+
А вот с параметром -cw не получается. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.08.2005, 13:04 |
|
||
|
ASA9 При увеличении подключений производительность сильно падает ...
|
|||
|---|---|---|---|
|
#18+
Честно говоря, с Вин2003 еще не рисковали работать)) У нас все на 2000 крутится. Но судя по сообщению, следует поставить SP1. Лучше попробывать(хотя бы в сторонке), думаю эффект будет. Posted via ActualForum NNTP Server 1.2 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.08.2005, 23:37 |
|
||
|
|

start [/forum/topic.php?fid=55&msg=33200428&tid=2013478]: |
0ms |
get settings: |
11ms |
get forum list: |
20ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
79ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
84ms |
get tp. blocked users: |
2ms |
| others: | 239ms |
| total: | 459ms |

| 0 / 0 |
