Спешу поделиться большими новостями про большое обновление Jelastic — облачной платформы для Java приложений. Последний релиз действительно большой. В нем были добавлены долгожданные
Читать дальше →
Поздравляю всех и каждого с великим Днем Программиста! Желаю ...
Добрый день, Хабражитель!
Поздравляю всех и каждого с великим Днем Программиста! Желаю рабочего кода, уверенных сокетов и самых продвинутых пользователей!
Работая над автоматизацией концертного агентства, мне на каком-то этапе разработки понадобилась система уведомлений. Доступ к автоматизации происходит через написанное мною web-приложение. И, соответственно, моментальные уведомления должны приходить в браузер пользователя.
Для реализации такой задачи есть три решения:
- «бесконечный iframe»,
- используя XMLHttpRequest (a.k.a. Ajax),
- используя WebSocket.
Первое решение я сразу «отметаю» (причины объяснять не буду, web-разработчики меня поймут).
Второе решение нравится гораздо больше, но у него есть свои минусы:
- браузер отправляет запрос каждую секунду создавая лишнюю нагрузку на:
- сервер;
- ОС, на которой работает браузер;
- и еще раз на сервер, так как сервер постоянно выполняет запрос БД на выборку последних уведомлений.
- тяжело отследить онлайн-статус пользователя (то есть нужно, например, хранить сессии в БД и постоянно мониторить каждую на timeout).
Третье решение — как раз то, что доктор прописал.
Итак, WebSocket.
Читать дальше →
... , который запустит сервер
сразу с нужными ...
Как вы разрабатываете веб-приложение на Java?
После каждого изменения, как вы его запускаете и проверяете? Сколько времени занимает
редеплой приложения и
рестарт контейнера?
Мне довелось видеть разные варианты: от полной пересборки WAR-файла до использования плагинов для IDE типа MyEclipse, WTP и «коннекторов» для сервлет-контерйнеров. У некоторых из них есть явные недостатки, другие вполне работают — но есть способ проще!
Запускалка
Этот способ разработки позволяет максимально
просто и
гибко настроить приложение
с минимальным временем редеплоя. Вам надо всего лишь написать один простенький Java-класс с main-методом, который запустит сервер Jetty сразу с нужными приложениями (т.н. Embedded Mode).
под катом - примеры кода и обзор альтернативных решений