-
есть прога, которая обменивается данными с sql сервером по ado. Вопрос: можно ли как то в ней мерить вх-исходящий трафик в байтах по порту 1433?
-
сплайсишь локально send()/recv() и считаешь
-
? сплайсишь
-
это каким компонентом делается? это каким компонентом делается? или почитать где?
-
-
спасибо. ппц. а попроще никак? и что-то я там не вижу про сетевой перехват.
а нельзяли с помощью инди что-то типа простого прокси сделать на 1433 и просто считать траф?
-
Через прокси можно
-
можете хотябы направление дать куда копать? или что в основу взять? хотябы зацепку, далее разберусь, а сейчас не на йоту не продвинулся и в инете както мало инфы (или ищу не то). про инди - это просто мысля пришла (как то читал про их проксю для http). или может еще чего е? а может в родных компонентах адо что-то е, отвечающее за кол-во байт передачи\приема?
-
потом, на сколько понимаю, нельзя порт слушать, если он уже занят. во кудато бы его зазеркалить... правильно думаю или в дельфи такое нельзя?
-
Ну берешь любой прокси потом просто в настройках своей программы указываешь его параметры и все, программа работает а ты на прокси считаешь ее трафик
-
Я просто пока не понимаю в чем причина затруднений у тебя, поэтому толком и подсказать не могу
-
ммм..
еще раз.
есть прога, в ней адоконнект, адодатасет
раз в час прога делает
- коннектится к серваку, если он доступен, в адодатасет открывает таблицу с именами пк, ищет там имя своего пк (пк клиента, определяет предварительно) - если нашла - выход (еще есть параметр в табличке - t\f флаг опроса - если он есть - опрос не производится если нет - перезаписываются только измененные параметры в строке таблицы) - если нет - производит опрос железа (память, проц, хдд и тп) и записывает в таблицу на сервере новую строку.
на серваке из этой sql таблицы формируется html страничка с "пк организации".
пк более 1000 (сервер в ЦО), регионов много, связь не везде стабильная.
старт проги пройсходит по шедулеру с рандомом 10 мин + в самой проге есть рандомное откладывание старта на 5 мин. если прога запущена - вторая копия не запускается. в шедулере работа проги прекращается через 10 мин, если "".
ща админы начали грузить, что прога создает "охренеть какой траф". при разбирательстве и просмотре графиков вижу, что с сервера затаскивается около 20 мб инфы каждым клиентом, по 1433 (подозреваю, что прога затаскивает таблицу целиком, а потом в ней ищет себя). это как бы решено - сделал курсор адо server (стало примерно пр\пер 100-300\100 кб).
но все равно, вопрос остается открытым (самому интересно): как, при старте проги до ее закрытия, посчитать, сколько пришло и сколько ушло трафика вот по 1433 (sql) запросам (ну и потом в лог их вставить, уже мало важно).
-
++ да - средствами самой проги
-
Давай так, подождем немного ребят, которые специализирутся по базам, а если они не смогут помочь то я попробую рассказать как это сделать в лоб
-
ок, хороших выходных
-
Microsoft network monitor
Средствами программы - во-первых, нафига, во-вторых, программа не имеет доступа (чаще всего) к той части клиента, которая создает трафик.
Базы тут не при чем.
|