Статистика времени обслуживания Blazeds - PullRequest
0 голосов
/ 08 октября 2009

Мое приложение: На моем сервере (Tomcat BlazeDS) есть службы удаленного взаимодействия Java (более 25), которые вызываются из моего клиентского приложения Flex.

Мое требование: Мне нужно собирать статистику по ним, например, сколько времени занимает каждая служба (общее время).

Есть три подхода, которые я могу сделать по моему мнению (может быть больше)

1) изменить каждую услугу и добавить таймер в начале и конце. --- плохая практика 2) Я также могу использовать АОП, но я чувствую, что это требование является чрезмерным. --- за убийство 3) Фильтр сервлетов. ---- Хороший вариант

   I really like option three but I am not sure how to do this with BlazeDS. Can it be done and if so any example/direction would be great.

спасибо

Ответы [ 3 ]

1 голос
/ 17 октября 2009

Я нашел решение:

Я расширяю JavaAdaptor и в методе invoke я могу получить имя назначения и общее время.

спасибо

0 голосов
/ 09 октября 2009

Чтобы использовать ServletFilter, ему нужно будет десериализовать необработанное содержимое HTTP-запроса от AMF в граф объектов Java. Если вы можете найти экземпляр AsyncMessage на графике, вы можете проверить его свойство "destination", которое отображается непосредственно на рассматриваемый сервис. Похоже, что вы можете использовать MessageDeserializer из API-интерфейсов BlazeDS для этого, но это также зависит от некоторых других объектов для работы.

Вы используете Spring? Если это так, сделать это с помощью АОП очень просто.

0 голосов
/ 08 октября 2009

Я использую фильтр сервлетов для этого в своем приложении Census . Вы можете найти фильтр код на sourceforge .

...