powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Техника программирования
25 сообщений из 46, страница 1 из 2
Техника программирования
    #33171040
Plut
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Задача такая:
На сервере висит 1 процесс и раз в n сек. смотрит базу данных и прверяет ее
на наличие новых данных на придмет обработки.

Сделала так:
Создал класс одиночку(Singleton) который и проверяет состояние базы данных.
Создаю его экземпляр в сервлете, сервлет отрабатывает и процесс висит на сервере.
Вроде все работает.

А вообще правельный ли подход?
...
Рейтинг: 0 / 0
Техника программирования
    #33171056
Фотография stdio
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А я бы через очереди и Message Driven Bean бы извратился ;-)
...
Рейтинг: 0 / 0
Техника программирования
    #33171099
По моему мнению, если OC Windows, то имеет смысл создать службу, под UNIX - демона. В вашем случае не очень понятно, кто будет запускать процесс в случае рестарта сервера. Ну и предложение stdio так же мне нравится.
...
Рейтинг: 0 / 0
Техника программирования
    #33171114
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PlutЗадача такая:
На сервере висит 1 процесс и раз в n сек. смотрит базу данных и прверяет ее
на наличие новых данных на придмет обработки.


Существует-ли возможность обработки факта получения новых
данных вне-базы?
...
Рейтинг: 0 / 0
Техника программирования
    #33171126
Фотография А.Грасоff™
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Музыка Александрне очень понятно, кто будет запускать процесс в случае рестарта сервераTomcat
...
Рейтинг: 0 / 0
Техника программирования
    #33171135
Plut
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
stdioА я бы через очереди и Message Driven Bean бы извратился ;-)
Дело в том что я мало имел дело с бинами :)
Был некий опыт с Entity и Session Bean
Но с другой стороны это как раз тот случай когда можно
получить новые знания :)
Как это реализовать в общих чертах?
...
Рейтинг: 0 / 0
Техника программирования
    #33171147
Plut
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
mayton PlutЗадача такая:
На сервере висит 1 процесс и раз в n сек. смотрит базу данных и прверяет ее
на наличие новых данных на придмет обработки.


Существует-ли возможность обработки факта получения новых
данных вне-базы?

Нет, то что поступили новые данные можно узнать только просмотрев базу данных
...
Рейтинг: 0 / 0
Техника программирования
    #33171163
Plut
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А.Грасоff™ Музыка Александрне очень понятно, кто будет запускать процесс в случае рестарта сервераTomcat

На самом деле так и надо бы сделать, только я еще не знаю как это организовать :)
Не в настройках ли сервера это нужно прописывать?
...
Рейтинг: 0 / 0
Техника программирования
    #33171166
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Plut
Нет, то что поступили новые данные можно узнать только просмотрев базу данных

Тогда - присоединяюсь к мнению stdio
...
Рейтинг: 0 / 0
Техника программирования
    #33171167
А.Грасоff™ Музыка Александрне очень понятно, кто будет запускать процесс в случае рестарта сервераTomcat
Да, про load-on-startup = "true" я упустил...
...
Рейтинг: 0 / 0
Техника программирования
    #33171190
коты
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
мне такая архитектура кажется немного стремной

было бы проще организоваться промежуточное звено (ejb, corba), через которое работали бы все пользователи базы, и в нем складывать информацию об обновлениях куда-нибудь, предоставляя их той программе, которая занимается обновлениями

не совсем понятно, как ты поднимаешь процесс - создаешь новую jvm? или обработчик запроса сервлета находится в бесконечном цикле?

полюбому было бы удобнее воспользоваться javax.ejb.Timer (EJB 2.1)
...
Рейтинг: 0 / 0
Техника программирования
    #33171236
Фотография stdio
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Plut stdioА я бы через очереди и Message Driven Bean бы извратился ;-)
Дело в том что я мало имел дело с бинами :)
Был некий опыт с Entity и Session Bean
Но с другой стороны это как раз тот случай когда можно
получить новые знания :)
Как это реализовать в общих чертах?Создаём очередь ( если база Oracle, то очередь создаётся в ней). Все данные которые нужно обработать, посылаем в виде сообщений в очередь. Создаём MDB, настраиваем на очередь.
И всё. Это вкратце.
...
Рейтинг: 0 / 0
Техника программирования
    #33171271
Plut
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
котымне такая архитектура кажется немного стремной

Да мне тоже это не очень нравиться...

котыне совсем понятно, как ты поднимаешь процесс - создаешь новую jvm? или обработчик запроса сервлета находится в бесконечном цикле?

Точно - цикл.
...
Рейтинг: 0 / 0
Техника программирования
    #33171293
коты
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
повторюсь, ejb timer вам поможет. с удаленной инициацией цикла обработки тоже никаких проблем не будет - спокойно запустите в сервлете и все.
...
Рейтинг: 0 / 0
Техника программирования
    #33171306
Фотография А.Грасоff™
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
котыповторюсь, ejb timer вам поможет. с удаленной инициацией цикла обработки тоже никаких проблем не будет - спокойно запустите в сервлете и все.а просто Timer?
...
Рейтинг: 0 / 0
Техника программирования
    #33171315
коты
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А.Грасоff™ котыповторюсь, ejb timer вам поможет. с удаленной инициацией цикла обработки тоже никаких проблем не будет - спокойно запустите в сервлете и все.а просто Timer?

в смысле "а просто"? бесконечный цикл в сервлете у человека уже есть
...
Рейтинг: 0 / 0
Техника программирования
    #33171340
Фотография А.Грасоff™
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
коты А.Грасоff™ котыповторюсь, ejb timer вам поможет. с удаленной инициацией цикла обработки тоже никаких проблем не будет - спокойно запустите в сервлете и все.а просто Timer?

в смысле "а просто"? бесконечный цикл в сервлете у человека уже есть
смысл в ejb?
...
Рейтинг: 0 / 0
Техника программирования
    #33171385
коты
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А.Грасоff™ коты А.Грасоff™ котыповторюсь, ejb timer вам поможет. с удаленной инициацией цикла обработки тоже никаких проблем не будет - спокойно запустите в сервлете и все.а просто Timer?

в смысле "а просто"? бесконечный цикл в сервлете у человека уже есть
смысл в ejb?

изначально вопрос был о правильности подхода

использовать висящий сервлет - неправильно
инициировать процесс обновления через http - неправильно

использовать ejb - правильно
инициировать процесс обновления удаленным или местным вызовом - правильно

хотите поспорить? =)
...
Рейтинг: 0 / 0
Техника программирования
    #33171403
Фотография А.Грасоff™
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
котыхотите поспорить? =)
а ты не думал о том, что у человека вообще может не быть j2ee-сервера?
...
Рейтинг: 0 / 0
Техника программирования
    #33171412
коты
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А.Грасоff™ котыхотите поспорить? =)
а ты не думал о том, что у человека вообще может не быть j2ee-сервера?


такие ограничения не были наложены в исходном посте

однако если чел себе может позволить висящий сервлет, то поставить вместо tomcat - jboss не составит труда. =)
...
Рейтинг: 0 / 0
Техника программирования
    #33171424
Фотография А.Грасоff™
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
котыоднако если чел себе может позволить висящий сервлет
что такое - висящий сервлет? и чем это плохо?
...
Рейтинг: 0 / 0
Техника программирования
    #33171584
коты
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А.Грасоff™ котыоднако если чел себе может позволить висящий сервлет
что такое - висящий сервлет? и чем это плохо?

Plut
котыне совсем понятно, как ты поднимаешь процесс - создаешь новую jvm? или обработчик запроса сервлета находится в бесконечном цикле?

Точно - цикл.
...
Рейтинг: 0 / 0
Техника программирования
    #33171591
Фотография А.Грасоff™
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
котычто такое - висячий сервлет, и чем это плохо?
...
Рейтинг: 0 / 0
Техника программирования
    #33171615
коты
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А.Грасоff™ котычто такое - висячий сервлет, и чем это плохо?

тебе нравится задавать однообразные тупые вопросы?

>> что такое - висячий сервлет
см. цитату выше

>> и чем это плохо?
вопрос был по архитектуре приложения
ты себе представляешь, чё такое сервлет-контейнер?
по-твоему, для обработчика http-запроса нормально застревать в бесконечном цикле?

с другой стороны, мне совсем не интересно, что ты думаешь, так что можешь просто не отвечать :)
...
Рейтинг: 0 / 0
Техника программирования
    #33171628
Фотография А.Грасоff™
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
коты А.Грасоff™ котычто такое - висячий сервлет, и чем это плохо?

тебе нравится задавать однообразные тупые вопросы?

>> что такое - висячий сервлет
см. цитату выше

>> и чем это плохо?
вопрос был по архитектуре приложения
ты себе представляешь, чё такое сервлет-контейнер?
по-твоему, для обработчика http-запроса нормально застревать в бесконечном цикле?

с другой стороны, мне совсем не интересно, что ты думаешь, так что можешь просто не отвечать :)
ну на вопрос ты так и не ответил, что такое висячий сервлет.
знаешь, чем сервлеты отличаются от cgi-скриптов? тем, что сервлет,
однократно создавшись, "висит" в памяти и вызывается по мере надобности.
это упрощенное толкование. и все сервлеты можно смело называть висячими.
эту висячесть обеспечивает контейнер сервлетов, кстати.

в бесконечном цикле "застревает" не обработчик http-запроса, а
экземпляр singleton'a.

//тебе нравится задавать однообразные тупые вопросы?
да.
...
Рейтинг: 0 / 0
25 сообщений из 46, страница 1 из 2
Форумы / Java [игнор отключен] [закрыт для гостей] / Техника программирования
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]