2010-07-13 5 views
1

Я пишу приложение Java, которое будет работать в течение длительного времени (по существу, оно будет работать между перезапусками системы) и делает справедливую бит интенсивной обработки данных в реальном времени. Данные доставляются в приложение, некоторые работы выполняются по этим данным, а затем передаются для доставки.Как я могу предоставить консоль управления HTTP для приложения Java?

Мне нужно обеспечить способ проверки внутренней работы приложения во время выполнения. У меня уже есть хорошо налаженный, но ручной интерфейс интерфейса telnet, который позволяет вам использовать командную строку, чтобы задавать вопросы о статистике, очередях данных и т. Д., Но я хотел бы переместить это на HTTP, поскольку я думаю, что это будет позвольте мне предоставить гораздо более богатую картину того, что происходит (показывая графики нагрузки и т. д.).

Существуют ли установленные Java-фреймворки, которые позволяют мне встраивать веб-сервер и обрабатывать запросы разумным образом? Я действительно не хочу, чтобы вручную вырезать много обработки HTML и генерации ответов, поскольку это всего лишь раздражающий фоновый шум в сущности того, что мне нужно.

ответ

1

Вы действительно хотите встроить HTTP-интерфейс?

Довольно распространенный способ выполнения подобных действий - установить приложение Java с ограниченным интерфейсом RMI. Затем вы пишете веб-интерфейс J2EE (JSP/Servlet), который вызывает обращения RMI к приложению для данных.

Эта установка позволяет избежать использования протокола HTTP (или любого другого протокола интерфейса - вызовы RMI - это только методы Java), а также отделяет данные (встроенную программу J2SE) от представления (программа J2EE для пользовательского интерфейса).

+0

Звучит идеально. Благодаря! – Andrew

1

Возможно, вы захотите использовать jconsole и JMX (http://java.sun.com/developer/technicalArticles/J2SE/jconsole.html).

Они предоставляют графический способ увидеть, что происходит внутри вашего приложения, и вы также можете настроить элементы управления для выполнения заданных действий через jconsole.

+0

VisualVM - это надстройка для JConsole (и jinfo, jmap, jstack, jstat). Он поставляется вместе с более новыми JVM вместе с jconsole - типа «jvisualvm». Опубликовать об этом: [От JConsole до VisualVM] (http://marxsoftware.blogspot.com/2008/08/from-jconsole-to-visualvm.html) –

Смежные вопросы