Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Соединение клиента с сервером. Как работает?  [new]
SIMPLicity_
Member

Откуда: (((@)))
Сообщений: 8877
Нужен экспресс-ликбез по теме, что называется "на пальцах".

Ситуация достаточно специфическая: у одного из клиентов на одном из рабочих мест приложения происходит какая-то непонятная разнонаправленная херь. Клиент - толстый (ну, достаточно толстый), серверная часть тоже не может похвастаться "воздушностью". Облачности и прочей пыли вроде бы как нет. Другие рабочие места в рамках той же сети функционируют вполне себе мирно и нормально. Компьютер, кажется, меняли уже пару раз.
Херь НЕСТАБИЛЬНА, ёпта, и разнонаправлена (т.е. сегодня документ не сохранился, позавчера при коррекции удалился другой хотя прав на удаление в рамках программы у сотрудника нет и т.п.).
Зная кой чего о том "как оно всё устроено", хочу тихонько помониторить сеть. Думаю, что банальный пинг ни чего не даст. SSMS ни кто ставить на клиента точно не даст (дабы проверить "отвалы" клиента от сервера). Клиентская часть работает на BDE, поэтому стопроцентный контроль целостности и стабильности соединения невозможен. Хочу попробовать что-то написать такое, что эмулировало бы на злополучном месте коннект к MS SQL Server и в случае отвала просто бы фиксировало в журнал проблему.

Куда копать не знаю.
Откуда,- тоже.
Телнет не предлагать.
Я натуральный блондин.

Заранее спасибо!
--------------------------
No ROM Basic...
27 ноя 12, 21:22    [13539516]     Ответить | Цитировать Сообщить модератору
 Re: Соединение клиента с сервером. Как работает?  [new]
ScareCrow
Member

Откуда: Белый город
Сообщений: 17422
автор
Клиентская часть работает на BDE

аминь.
27 ноя 12, 21:49    [13539573]     Ответить | Цитировать Сообщить модератору
 Re: Соединение клиента с сервером. Как работает?  [new]
Ozerov
Member

Откуда: Москва
Сообщений: 3637
поток сознания...
для начала
27 ноя 12, 21:51    [13539575]     Ответить | Цитировать Сообщить модератору
 Re: Соединение клиента с сервером. Как работает?  [new]
SIMPLicity_
Member

Откуда: (((@)))
Сообщений: 8877
ScareCrow
автор
Клиентская часть работает на BDE

аминь.

Ахуительно в тему ответ... Что, остальные технологии - это стопроцентная панацея от неведомойхуйни?
27 ноя 12, 22:00    [13539597]     Ответить | Цитировать Сообщить модератору
 Re: Соединение клиента с сервером. Как работает?  [new]
SIMPLicity_
Member

Откуда: (((@)))
Сообщений: 8877
Ozerov
поток сознания...
для начала

Спасибо, тудаже...
27 ноя 12, 22:00    [13539599]     Ответить | Цитировать Сообщить модератору
 Re: Соединение клиента с сервером. Как работает?  [new]
Crimean
Member

Откуда:
Сообщений: 13147
профайлером глянуть. будут и запросы - если они хоть что-то скажут и факты логон/логофа
errorlog файлик полистать на сервере в каталоге log или через студию - там бывают интересности по коннектам
"написать" - смешно. в смысле ничего не даст, но время - да - займет
27 ноя 12, 22:15    [13539624]     Ответить | Цитировать Сообщить модератору
 Re: Соединение клиента с сервером. Как работает?  [new]
PaulYoung
Member

Откуда: Москва
Сообщений: 2567
SIMPLicity_, а Вы уверены, что Ваш толстый клиент не виноват? Чудес-то ведь не бывает... Ну посмотрите внимательно, очень уж подозрительно удаляются "другие" данные. Крайне маловероятно, что с "плохого" рабочего места кто-то запросы на сервер в обход программы шлёт. Думаю, дело в Вашей программе, Барабашку исключаем.
27 ноя 12, 22:24    [13539648]     Ответить | Цитировать Сообщить модератору
 Re: Соединение клиента с сервером. Как работает?  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31959
SIMPLicity_
Хочу попробовать что-то написать такое, что эмулировало бы на злополучном месте коннект к MS SQL Server и в случае отвала просто бы фиксировало в журнал проблему.
Зачем пробовать? Очевидно, что удаление документа не может происходить из за проблем сети...

Несохранение тоже в общем то не может, хотя убеждённый "простокодер" с опытом может такое сделать, если постарается :-)
28 ноя 12, 00:25    [13539904]     Ответить | Цитировать Сообщить модератору
 Re: Соединение клиента с сервером. Как работает?  [new]
SIMPLicity_
Member

Откуда: (((@)))
Сообщений: 8877
Там достаточно формальная процедура обработки оператором документов; права операторов в рамках программы (клиентской части) достаточно неплохо ограничены. Есть вариант повесить триггер/ограничение на таблицах серверной части, но из-за этого могут начать подвисать остальные сотрудники (такое уже было, когда я привернул нехилый лог, который только обозначил "куда валица гомно", но не указал ту жопу, которая стрясается). Поскольку "херь" проскакивает крайне (крайне!) нестабильно, сидеть и трейсить нереально. Можно, конечно, накрячить трассу на целую неделю...; но мне не очень приятна перспектива пойти к заказчику и объяснять что для нормальной работы нужен новый сервер за лимон, который должен делать то же самое, что делает существующий незабрендованный сервак за стольник (кстати, вполне нормальный сервак, разве что тысячедолларовой батарейки на дисковом контроллере нет). К тому же десяток аналогичных рабочих мест с аналогичными настройками и аналогичными по квалификации сотрудниками вполне нормально работают рядом без особых казусов (насколько мне известно).

Хочу посмотреть просто - а не отваливается ли ли что-то откуда-то каким-то кривым образом....
28 ноя 12, 01:28    [13539965]     Ответить | Цитировать Сообщить модератору
 Re: Соединение клиента с сервером. Как работает?  [new]
Mind
Member

Откуда: Лучший город на Земле
Сообщений: 2322
SIMPLicity_
разве что тысячедолларовой батарейки на дисковом контроллере нет
Кэш надеюсь выключен? А то у вас не что документы пропадать могут, а вся база может случайно пропасть :)
28 ноя 12, 03:03    [13540013]     Ответить | Цитировать Сообщить модератору
 Re: Соединение клиента с сервером. Как работает?  [new]
locky
Member

Откуда: Харьков, Украина
Сообщений: 62034
SIMPLicity_
Хочу попробовать что-то написать такое, что эмулировало бы на злополучном месте коннект к MS SQL Server и в случае отвала просто бы фиксировало в журнал проблему.

взять да написать на делфине приладу, которая гоняет типовые приложенческие запросы
вместо ссмс можно юзать osql - или самописный в 10 строчек аналог
28 ноя 12, 03:24    [13540018]     Ответить | Цитировать Сообщить модератору
 Re: Соединение клиента с сервером. Как работает?  [new]
SIMPLicity_
Member

Откуда: (((@)))
Сообщений: 8877
Mind
SIMPLicity_
разве что тысячедолларовой батарейки на дисковом контроллере нет
Кэш надеюсь выключен? А то у вас не что документы пропадать могут, а вся база может случайно пропасть :)

Это реальный сервер (россиянской сборки, кажется) с дисками в десятом рэйде... На контроллере стоит батарейка, только маленькая (НЕ предполагающая двадцатичасовое хранение закэшированных данных в памяти контроллера).
28 ноя 12, 08:58    [13540254]     Ответить | Цитировать Сообщить модератору
 Re: Соединение клиента с сервером. Как работает?  [new]
SIMPLicity_
Member

Откуда: (((@)))
Сообщений: 8877
locky
SIMPLicity_
Хочу попробовать что-то написать такое, что эмулировало бы на злополучном месте коннект к MS SQL Server и в случае отвала просто бы фиксировало в журнал проблему.

взять да написать на делфине приладу, которая гоняет типовые приложенческие запросы
вместо ссмс можно юзать osql - или самописный в 10 строчек аналог


Думал насчёт посниферить, но тут у меня вообще знаний "-1" по десятибальной шкале :( ...
28 ноя 12, 08:59    [13540262]     Ответить | Цитировать Сообщить модератору
 Re: Соединение клиента с сервером. Как работает?  [new]
angel_zar
Member

Откуда: Барнаул
Сообщений: 902
Моя точка зрения, проблема в сотруднике сидящем на этом рабочем месте.
Поменяйте его местами на недельку с другим сотрудником.

Ну и еще варианты, кривая прога (и этот пользователь нашел какой то баг, то есть работает не стандартным алгоритмом, не как все остальные сотрудники, и отсюда проблема), ну можно еще на память на машине погрешить.
28 ноя 12, 09:12    [13540331]     Ответить | Цитировать Сообщить модератору
 Re: Соединение клиента с сервером. Как работает?  [new]
Sevolod
Member

Откуда:
Сообщений: 106
А целостность базы у вас не нарушается при таких чудесах?
28 ноя 12, 12:22    [13541689]     Ответить | Цитировать Сообщить модератору
 Re: Соединение клиента с сервером. Как работает?  [new]
SIMPLicity_
Member

Откуда: (((@)))
Сообщений: 8877
База в норме, юзера - в форме.

За три часа ping на сервер с клиентского мееста дал только один сбой (пропал пакет). Это хреново, в общем-то, но, думается,- допустимо. Трассу запустил, но все начали подтормаживать так, что под конец признался, что это мои делишки и пришлось трассировку выключить. За сегодня искомых ошибок не было (ХЗ,- эффект присутствия?)...

Продолжаем "копать" дальше.

PS Скуль на нормальном железе, вообще говоря, очень тяжело убить. Живёт, как ни странно, иногда даже на совсем говне. ИМХО (более 10 лет работы с MSSQL в разных ипостасях).
30 ноя 12, 01:45    [13553383]     Ответить | Цитировать Сообщить модератору
 Re: Соединение клиента с сервером. Как работает?  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31959
SIMPLicity_
Трассу запустил, но все начали подтормаживать так, что под конец признался, что это мои делишки и пришлось трассировку выключить.
Может, настроено слишком много событий? нужно не так много - 2 события: Batch и RPC
30 ноя 12, 09:41    [13553920]     Ответить | Цитировать Сообщить модератору
 Re: Соединение клиента с сервером. Как работает?  [new]
angel_zar
Member

Откуда: Барнаул
Сообщений: 902
alexeyvg
SIMPLicity_
Трассу запустил, но все начали подтормаживать так, что под конец признался, что это мои делишки и пришлось трассировку выключить.
Может, настроено слишком много событий? нужно не так много - 2 события: Batch и RPC

Может трассу из профайлера запускали???
4 дек 12, 10:23    [13573110]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить