![]() |
|
Модераторы: LSD, AntonSaburov |
![]()
|
|
| Girin |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 81 Регистрация: 6.2.2008 Репутация: нет Всего: нет |
Какой фреймворк выбрать для написания приложения использующего плагины ? В частности, хочу прикрутить систему плагинов к сервлет контейнеру(томкат), работающему как удаленный агент/сервис , который предоставляет решение определенного набора задач. Набор задач необходимо постоянно расширять , а их описание желательно хранить в виде XML
Нашел информацию о Java Plugin Framework и OSGI. Какое ваше мнение о них, и есть ли еще аналоги для реализации хот деплоймента |
|||
|
||||
| Girin |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 81 Регистрация: 6.2.2008 Репутация: нет Всего: нет |
Просьба к модератором : перенесите тему в J2EE
Это сообщение отредактировал(а) Girin - 27.3.2008, 17:37 |
|||
|
||||
| w1nd |
|
|||
![]() Вертилятор ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1077 Регистрация: 22.3.2006 Где: Москва Репутация: 7 Всего: 54 |
OSGI обладает ужасным, на мой взгляд, недостатком: при указании экспортируемых (доступных для других плагинов) классов их все надо упоминать по именам. Очень "весёлое" и часто бесполезное занятие, когда этих классов - тыщ пять-десять.
Известная мне реализация OSGI (Eclipse) при этом ещё глючная и сделана через зад. -------------------- ![]() ![]() |
|||
|
||||
| Girin |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 81 Регистрация: 6.2.2008 Репутация: нет Всего: нет |
Я тоже склоняюсь больше к использованию Java Plugin Framework. Тогда вопрос если есть приложение построенное на плагинной архитектуре , как мне его сделать доступным удаленно ? То есть нужно писать свой ClassLoader который из сервлета будет загружать основной плагин , а тот в свою очередь остальные ? Или создать свою фабрику которая будет искать файлы классов и подгружать плагины по отдельности ? З.Ы. Как я понял из документации интерфейс плагинов соотвествующих этому фреймворку описывается в XML Это сообщение отредактировал(а) Girin - 29.3.2008, 16:02 |
|||
|
||||
| COVD |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1655 Регистрация: 26.7.2005 Репутация: 4 Всего: 43 |
Мне плагинная архитектура представляется в виде бюрократической добавки к проекту, которая "не пущает без бумажки", т.е. ее задача - не позволить подключить то, что не соответствует требованиям. Это защита системы от добавлений, когда их пишут все , кому не лень ( opensource community ) . Какая связь между плагинами и удаленностью? Если нужно добавлять сервлеты в Томкат на удаленном компьютере - надо установить Radmin или другой инструмент удаленного доступа. Это сообщение отредактировал(а) COVD - 29.3.2008, 17:56 |
|||
|
||||
| Girin |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 81 Регистрация: 6.2.2008 Репутация: нет Всего: нет |
Нет смысл задачи не в удаленном управлении томкатом , а набором задач который он решает как агент в распределенной вычислительной сети. Класс решаемых задач может варьировать от матричных до задач связанных с безопасностью. Добавлено @ 17:54 Конкретно есть двухранговая вычислительная сеть . В этой сети функционирует сервер JBoss, осуществляющий диспетчеризацию и планирование, а также набор одинаково реализованных(на основе томкат) удаленных агентов, решающих поставленные сервером задачи. Вот способ расширения числа решаемых агентами задач и представляется в виде плагинов Это сообщение отредактировал(а) Girin - 29.3.2008, 17:55 |
|||
|
||||
| COVD |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1655 Регистрация: 26.7.2005 Репутация: 4 Всего: 43 |
Мне представлялось, что управление набором задач Томката есть изменение сервлетов. |
|||
|
||||
| Girin |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 81 Регистрация: 6.2.2008 Репутация: нет Всего: нет |
Я тоже сначала хотел организовать набор решаемых с помощью соотвествующего кол-ва сервлетов. Но сервлеты afaik загружаются в память при первом обращении , и не выгружаются до останова томката. Если сервлетов много то это нерационально держать все в ОЗУ удаленного агента. А в плагинах есть возможность т.н. "ленивой" активации , то есть подключение/выгрузки по мере необходимости |
|||
|
||||
| COVD |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1655 Регистрация: 26.7.2005 Репутация: 4 Всего: 43 |
Если сервлетом ни один поток не пользуется, а контейнеру не хватает памяти, то контейнер этот сервлет выгружает. И обычно лимитируют количество потоков, т.е. количество одновременно обрабатываемых запросов, а не количество сервлетов в приложении. Сервлет - это всего лишь функциональность. Он данных никаких не держит и места много не занимает. Это сообщение отредактировал(а) COVD - 30.3.2008, 00:33 |
|||
|
||||
![]()
|
| Правила форума "Java" | |
|
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |