SocketServer troubles
Релиб
Форумы       Участники    Календарь    Кто он-лайн?
Добро пожаловать, гость ( Вход | Регистрация )
        



SocketServer troubles Expand / Collapse
Автор
Сообщение
10.08.2001 14:20
Forum Member

Forum MemberForum MemberForum MemberForum MemberForum MemberForum MemberForum MemberForum Member

участник
Last Login: 01.03.2005 10:15
Сообщ.: 34, Visits: 375
Господа, кто встречался со следующей проблемой:
Трехзвенка, на клиенте используется TSocketConnection, соответственно на компе с сервером стоит Borland SocketServer. И вот эта милая парочка при общениии по модему (видимо при каких-то ошибках связи при перекачке данных) намертво виснет (точнее, виснет клиент, перестает отзываться на запросы)
Вопрос в том, как побороть эту гадость...
Сообщ. #719604
23.08.2001 4:47
новичок

новичокновичокновичокновичокновичокновичокновичокновичок

участник
Last Login: 12.09.2001 9:08
Сообщ.: 9, Visits: 100
у себя я делал два варианта
брал у сервера информацию о количестве клиентов
(загружен или нет?)
если загружен то:
1. уменьшал размер пакета.
2. уменьшал максимальное количество процессов.

если не загружен то наооборот.

Сеанс был такой:
Cоздаю клиент, после сенса его удаляю.

вроде:

var
a: TSocetClient;

begin
Inc(i); //Количество процессов
...
try
a.Connect;
...
//сдесь передаю инф-ию но пакетами с уведомлением
a.free
Dec(i);
end;
...
end;

Отдельно завожу таймер (можно еще как-нибудь)
где проверяю кол-во клиентов - если клиент завис
i - не уменьшается.
При определенном кол-ве выдаю сообщение, (себе на адм-ую
машину - копию), что систему сильно загружена - надо что-то сделать.

Можно для сеанса создавать отдельный процесс и если он завис, то убивать его - но под Win95-98 не часто завешивается
комп полностью. В NT никаких проблем (кстати и зависший клиент освобождается тоже a.Free, только
тогда надо запомнить всех клиентов.)

Исходиков под рукой нет. Если не получится, скинь мне фрагмент, я посмотрю.
Сообщ. #721335
« пред. тема | след. тема »


Эту тему читают Expand / Collapse
Посетители: 0 (0 гостей, 0 участников, 0 скрыт.участников)
Сейчас нет участников, просматривающих тему.
Модераторы: Alexey, boombastik, bazile, pl

Время GMT +3:00, Сейчас 9:45