|
IIS+ASP+Sybase(unix)=Trable!!!
|
|||
---|---|---|---|
#18+
Через несколько часов работы сервер IIS тормозит и падает. Сервер IIS выполняет ASP скрипты, в качестве сервера баз данных выступает Sybase. Драйвер Sybase System 11 3.11.00.01 Sybase, Inc. 10/08/1998. На сервере IIS одновременно работают около 10-15 пользователей. Сервер Sybase кроме IIS обслуживает и другие сервера. Схема работы страницы на IIS: 1. При открытии страниц создается подключение к Sybase серверу. 2. Создаются объекты запросов к серверу. 3. Все объекты после получения ответа от Sybase закрываются. 4. В конце загрузки страницы подключение разрывается. Описание проблемы: 1. После запуска IIS процесс dllhost занимает в памяти 20 MB. При открытии страницы на сайте появляется поток в процесесе dllhost. Который открывает сокет на динамическом порту. Сокет подключается к серверу Sybase и слушает на этом же порту. Подключение находится в режиме использования. Далее два варианта развития событий. После загрузки страницы поток либо завершается сокет закрывается, либо не завершается, а использующийся сокет переходит в режим ожидания закрытия и продолжает слушать. После запуска IIS таких висящих потоков сразу создается около двадцати. Ресурсы процессора, использующиеся этими потоками, минимальны. Появление этих потоков ни как не проявляется в работе пользователей. Когда этих процессов накопится около 140 (через несколько часов работы) один из потоков начинает занимать ресурсы сервера: 50-100% процессорного времени. 2. Во время формирования объемного запроса (когда клиенту возвращается большой объем данных) может произойти следующее: открывается страница в окне браузера, индикатор загрузки доходит примерно до половины, в это время на сервере IIS создается поток в dllhost, создается подключение к серверу Sybase в режиме использования, на сервере Sybase создается подключение, которое достаточно быстро переходит из режима запроса в режим ожидания команды. Это соединение завершается, либо зависает и на Sybase остается соединение в режиме ожидания команды, на IIS остается поток, использующий ресурсы процессора на 100%, и два соединения с Sybase на одном порту (одно слушающее а другое в режиме ожидания закрытия. В браузере в это время окно может повиснуть на несколько часов. При запуске запроса без параметров с большой вероятностью можно повесить сервер. Чем объемнее запрос, тем больше вероятность. При запуске такого объемного запроса трафик на сервере увеличивается в два раза. При пропускной способности во много раз превышающей трафик нагрузка на сеть очень небольшая. Грешу на драйвер Sybase. Что здесь может быть? Спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.10.2003, 13:31 |
|
|
start [/forum/topic.php?fid=55&fpage=132&tid=2014807]: |
0ms |
get settings: |
11ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
44ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
28ms |
get tp. blocked users: |
2ms |
others: | 15ms |
total: | 136ms |
0 / 0 |