Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> JBoss кластер, как организовать 
:(
    Опции темы
KostenkoSergey
Дата 28.9.2006, 18:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 290
Регистрация: 31.10.2005
Где: Kiev

Репутация: 3
Всего: 8



Может кто уже решал подобную задачу.

Есть один жбос - с нагрузкой не справляется - хочу развернуть ещё один и объеденить в кластер, для распределения нагрузки.

С чего начать ? В какую сторону смотреть  ?
PM ICQ   Вверх
y3u
Дата 28.9.2006, 18:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 440
Регистрация: 9.9.2006
Где: Москва

Репутация: 7
Всего: 13



в документацию  smile больше некуда


--------------------
В нашей стране настаивать на кореньях, черной смородине, лимонных корках - гораздо эффективнее, чем на правах
PM MAIL   Вверх
Sun
Дата 29.9.2006, 09:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Account removed
***


Профиль
Группа: Экс. модератор
Сообщений: 1611
Регистрация: 14.8.2002

Репутация: 2
Всего: 48



Цитата(y3u @  28.9.2006,  15:41 Найти цитируемый пост)
в документацию  smile больше некуда 

Вряд-ли там что-нибудь подобное найдешь. Самый простой способ - поставить JBoss на нескольких серверах и на каждый задиплоить свой вэб аппликейшн. Если им нужны общие файлы - выносишь их на отдельный файловый сервер и расшариваешь директорию для доступа из твоего кластера. Если используешь базу данных, то подключаешь все свои приложения к одному и тому-же серверу баз данных. Далее пишешь сервлет, который проверяет загрузку на каждом сервере и который будет форвардить запросы на менее загруженный.


--------------------
Account removed
PM MAIL   Вверх
tux
Дата 29.9.2006, 10:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Летатель
***


Профиль
Группа: Участник Клуба
Сообщений: 1853
Регистрация: 10.2.2005
Где: msk.ru

Репутация: 74
Всего: 132



В документации есть документ "Clustering with JBoss", думаю в любом случае должен помочь хотя в том, чтобы разобраться что проще сделать - использовать средства JBoss или реализовать самому.
PM MAIL Skype GTalk Jabber YIM   Вверх
y3u
Дата 29.9.2006, 11:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 440
Регистрация: 9.9.2006
Где: Москва

Репутация: 7
Всего: 13



во-первых, надо разобраться для чего надо делать кластер на джейбоссе. Джейбосс - это аппсервер, веб контейнер - это всего лишь его компонент, т.ч. рассматривать кластер на джейбоссе в рамках простейших веб аппликейшенов просто глупо. Чаще всего на джейбоссе деплоятся EAR-ники, состоящие из двух частей - серверной и веб. В серверной части лежат все бины и пр. Если разворачивать такие приложения на нескольких джебоссах, где гарантии, что во-первых, все синглтоны, которые я использую, с учетом сериализации/десериализации будут существовать действительно в единичном экземпляре? Вы это как собираетесь контролировать на разных серверах? Если отстроить кластер, то у кластера будут общие спейсы, бины сами разберутся по каким интерфейсам им бегать по локальным или ремоутным на уровне контейнера, получается, такого рода контролем заморачиваться не нужно, все равно грамотно его сделать достаточно сложно. То же самое относится к EJB... Кластер джейбосса, равно как и EJB изначально разрабатывались под распределенные приложения, лично я не понимаю, зачем извращаться, нужно просто изучить документацию...

ПыСы
просто у меня есть тут у знакомых девелоперов яркий пример, у них как раз сделан не кластер а сделаны именно несколько срверов, так вот, приложение достаточно крупное, 60% времени написания, устранения багов и текущей поддержки уходит как раз на синхронизацию серверов и прочую лабудень, с бизнес логикой приложения абсолютно ни как не связаной... оно кому надо?

Это сообщение отредактировал(а) y3u - 29.9.2006, 11:08


--------------------
В нашей стране настаивать на кореньях, черной смородине, лимонных корках - гораздо эффективнее, чем на правах
PM MAIL   Вверх
Sun
Дата 29.9.2006, 14:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Account removed
***


Профиль
Группа: Экс. модератор
Сообщений: 1611
Регистрация: 14.8.2002

Репутация: 2
Всего: 48



Цитата(y3u @  29.9.2006,  08:05 Найти цитируемый пост)
рассматривать кластер на джейбоссе в рамках простейших веб аппликейшенов просто глупо

Думаю как раз на вэб часть идет наибольшая нагрузка и именно ее следует кластеризировать. 

Цитата(tux @  29.9.2006,  07:48 Найти цитируемый пост)
В документации есть документ "Clustering with JBoss", думаю в любом случае должен помочь хотя в том, чтобы разобраться что проще сделать - использовать средства JBoss или реализовать самому. 

Да, действительно, пожалуй надо было с него начать  smile 


--------------------
Account removed
PM MAIL   Вверх
y3u
Дата 29.9.2006, 16:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 440
Регистрация: 9.9.2006
Где: Москва

Репутация: 7
Всего: 13



Цитата(Sun @  29.9.2006,  14:04 Найти цитируемый пост)
Думаю как раз на вэб часть идет наибольшая нагрузка и именно ее следует кластеризировать. 


а вот и ни фига smile сервлет отработал и сдох, JSP один раз скомпилилась и стала сервелетом, а больше в вебе ничего и нету... Если хочется разгрузить именно веб, тогда надо сделать томкету связку с апачем, там даже на оффсайте написано по каким причинам smile
Ну естественно, за DDOSить можно все что угодно, но тут  уже  дроугой вопрос, тут решается не кластером smile


--------------------
В нашей стране настаивать на кореньях, черной смородине, лимонных корках - гораздо эффективнее, чем на правах
PM MAIL   Вверх
Sun
Дата 29.9.2006, 17:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Account removed
***


Профиль
Группа: Экс. модератор
Сообщений: 1611
Регистрация: 14.8.2002

Репутация: 2
Всего: 48



Цитата(y3u @  29.9.2006,  13:56 Найти цитируемый пост)
а вот и ни фига smile сервлет отработал и сдох, JSP один раз скомпилилась и стала сервелетом, а больше в вебе ничего и нету...

Но сервлет или JSP запустили код который отрабатывает в той же виртуальной машине и соотвественно пожирает ресурсы. Ты наверно говоришь про такую идеальную модель, когда у тебя сервлеты лишь перенаправляют запросы EJB, которые выполняется в своем отдельном Java процессе, возможно даже на другой машине, но гораздо чаще вэб приложение несет в себе тяжелую бизнес-логику и в таком случае кластеризация вполне уместна.


--------------------
Account removed
PM MAIL   Вверх
y3u
Дата 29.9.2006, 17:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 440
Регистрация: 9.9.2006
Где: Москва

Репутация: 7
Всего: 13



с одной стороны да, но что мешает сделать Runnable и увеличить хип? smile Вообще тут можно долго спорить smile Это архитектурная задача, которую нужно решать комплексно, начиная с профайлинга.


--------------------
В нашей стране настаивать на кореньях, черной смородине, лимонных корках - гораздо эффективнее, чем на правах
PM MAIL   Вверх
Sun
Дата 29.9.2006, 17:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Account removed
***


Профиль
Группа: Экс. модератор
Сообщений: 1611
Регистрация: 14.8.2002

Репутация: 2
Всего: 48



Цитата(y3u @  29.9.2006,  14:48 Найти цитируемый пост)
Это архитектурная задача, которую нужно решать комплексно, начиная с профайлинга. 

Она архитектурная до тех пор пока идет разработка, а когда она уже вышла в продакшн - это уже административная задача  smile 

Цитата(y3u @  29.9.2006,  14:48 Найти цитируемый пост)
с одной стороны да, но что мешает сделать Runnable и увеличить хип?

Не совсем понял про Runable, это в смысле новый поток создать? Но он ведь все равно будет крутится в той же виртуальной машине и точно также жрать ресурс, даже больше, так как на новый поток нужны дополнительные затраты. А тюнить сервер до бесконечности также невозможно.


--------------------
Account removed
PM MAIL   Вверх
y3u
Дата 29.9.2006, 23:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 440
Регистрация: 9.9.2006
Где: Москва

Репутация: 7
Всего: 13



повторюсь, тут можно спорить до усрачки  smile 
Это как раз та ситуация, где во всех случаях нужна башка и прямые руки  smile  smile 


Цитата(Sun @  29.9.2006,  17:56 Найти цитируемый пост)
Но он ведь все равно будет крутится в той же виртуальной машине и точно также жрать ресурс, даже больше, так как на новый поток нужны дополнительные затраты. А тюнить сервер до бесконечности также невозможно


ага, значит поставить новый сервак и увеличить память это сложнее, чем сделать кучу серверов с одним и тем же апликейшыном smile Кстати, я так и не услышал ни одного предложения по поводу синхронизации в таком случае синглтонов  smile 


--------------------
В нашей стране настаивать на кореньях, черной смородине, лимонных корках - гораздо эффективнее, чем на правах
PM MAIL   Вверх
Sun
Дата 30.9.2006, 09:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Account removed
***


Профиль
Группа: Экс. модератор
Сообщений: 1611
Регистрация: 14.8.2002

Репутация: 2
Всего: 48



Цитата(y3u @  29.9.2006,  20:11 Найти цитируемый пост)
 Кстати, я так и не услышал ни одного предложения по поводу синхронизации в таком случае синглтонов  smile  

А какие проблемы с синглтонами? Для каждого кластеризированого приложения будет свой личный синглтон, с которым будет работать данное приложение. Синхронизировать их совершенно не нужно и каждый из них будет сериализироватся в своё личное хранилище. Если тебе такая схема не нравится - опиши ситуацию когда она не сработает.

Цитата(y3u @  29.9.2006,  20:11 Найти цитируемый пост)
повторюсь, тут можно спорить до усрачки  smile 

Тема интересная, почему бы её не развить?  smile 

Цитата(y3u @  29.9.2006,  20:11 Найти цитируемый пост)
ага, значит поставить новый сервак и увеличить память это сложнее, чем сделать кучу серверов с одним и тем же апликейшыном


А если приложение ну очень распределённое. Одни юзера сидят в штатах - другие в Австралии, третьи в Москве? Узким местом уже становится сеть. И всем надо одинаково быстро работать.



--------------------
Account removed
PM MAIL   Вверх
KostenkoSergey
Дата 30.9.2006, 11:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 290
Регистрация: 31.10.2005
Где: Kiev

Репутация: 3
Всего: 8



Цитата(y3u @  29.9.2006,  23:11 Найти цитируемый пост)
поставить новый сервак и увеличить память

не совсем справедливое замечание, так как JVM всё равно не сможет адресовать более ~1 ГБт (для крупного приложения этого явно не достаточно) .. так что тут увеличивай не увеличивай хип, - а выше головы не прыгнешь...

Цитата(Sun @  30.9.2006,  09:08 Найти цитируемый пост)
приложение ну очень распределённое

приложение таки действительно ну очень распределённое (филиалы по всей украине)

Но в моём случае сервлет на JBoss'е не является точкой входа - запросы проиходят на BEAS(там что - то вроде кластера из  8 серверов уже организовано, но с физич. распределением нагрузки путём случайной маршрутизации), а тот в свою очередь либо обрабатывает их сам - либо форвардит на JBoss(а он пока один, почему так - это уже совсем другая история), причём форвардит посредством вызова уже непосредственно EJB.

Я вот ещё подумал, может достаточно организовать что то вроде "зеркала", например, когда один JBoss выходит из строя, что бы запросы автоматич. перенаправлялись на другой - у JBoss'a есть какие то средства для этого ? (что то подобное видел у WebSpherЫ)

За ссылки на доку спасибо - буду сейчас смотреть. 
Но хотелось бы несколько примеров из личных практик. smile  smile 


Это сообщение отредактировал(а) KostenkoSergey - 30.9.2006, 11:20
PM ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема »


 




[ Время генерации скрипта: 0.0537 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.