|
|
|
Прокси на сокетах
|
|||
|---|---|---|---|
|
#18+
Добрый день! Есть такая задачка : архитектура состоит из трех модулей которые общаются друг с другом по http(адрес : порт) /tcp (модули написаны на с++) M1<-->M2<-->M3 хочется логировать все запросы между ними/ т.е нужно в разрывы вставить слушателей - прокси и писать все вызовы в лог в базу. M1<-0->M2<-0->M3 идея такая - создать сокеты и получать данные из M1 - класть их в базу и отправлять в M2 итд ... M1:8111 <->| P8511<->P8611 | <-> M2:8100 вопрос как и можно ли это сделать ? как обрабатывать ошибки ? мониторинг ? может есть еще решения? как отслеживать коннект ? теоретически протокол взаимодействия между M1<-->M2 известен. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.04.2014, 11:16 |
|
||
|
Прокси на сокетах
|
|||
|---|---|---|---|
|
#18+
Apache tcpmon? А зачем это делать на Java? Может взять какой-то нативный tcp sniffer? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.04.2014, 11:23 |
|
||
|
Прокси на сокетах
|
|||
|---|---|---|---|
|
#18+
Запускать какой-нибудь tcpdump и агрегировать его логи. Только толку в этом никого нет т.к. если уж нужен подобный инструментарий, то он нужен для того, чтобы иметь возможность видеть сообщения не как поток байт, а как сообщения конкретного протокола, который реализован поверх tcp. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.04.2014, 11:31 |
|
||
|
Прокси на сокетах
|
|||
|---|---|---|---|
|
#18+
http://habrahabr.ru/post/70690/ есть примеры на nio , толковые? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.04.2014, 11:38 |
|
||
|
Прокси на сокетах
|
|||
|---|---|---|---|
|
#18+
Atum1, т.е можно конкретезировать - нужно слушать своей проксей порт -получать данные - и перекладывать их в другой порт - редиректить . и так же обратно , при этом писать поток в лог. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.04.2014, 11:48 |
|
||
|
Прокси на сокетах
|
|||
|---|---|---|---|
|
#18+
Atum1 http://habrahabr.ru/post/70690/ есть примеры на nio , толковые? Не знаю. Лень вникать. Похоже на правду. А подвобные камни они в мелочах. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.04.2014, 11:51 |
|
||
|
Прокси на сокетах
|
|||
|---|---|---|---|
|
#18+
Atum1Atum1, т.е можно конкретезировать - нужно слушать своей проксей порт -получать данные - и перекладывать их в другой порт - редиректить . и так же обратно , при этом писать поток в лог. Если задачу нужно решить, то tcpdump на всех машинах + агрегация полученных логов. Если задачу нужно решить только на java, то если у вас http, то пишите свой Socks прокси сервер, либо ищите готовый и логгируйте что вам нужно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.04.2014, 11:59 |
|
||
|
Прокси на сокетах
|
|||
|---|---|---|---|
|
#18+
Сокеты это конечно наше все ! быстро и все ок! работает ! но Нашел такое вот решение : apache camel - очень понравилось что можно в виде билтеда указать откуда придут данные - куда их записать и куда потом отправить ! from().convertBodyTo().to() остался один только вопрос - будет ли это работать с http и tcp / пока в документации этого не нашел . И на сколько это медленно ? может кто нибудь что нибудь рассказать про продукт у кого есть опыт? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.04.2014, 10:42 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=38609519&tid=2127353]: |
0ms |
get settings: |
10ms |
get forum list: |
19ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
50ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
48ms |
get tp. blocked users: |
2ms |
| others: | 249ms |
| total: | 399ms |

| 0 / 0 |
