|
|
|
Обмен данными между приложениями одного Tomcat
|
|||
|---|---|---|---|
|
#18+
BlazkowiczНе могу сказать как это делается на варниках и в Томкате. В полноценном JEE для этого можно завести EJB JAR и выпячить его наружу через локальный интерфейс. Интересно, можно ли реализовать Persistence Units в отдельном jar и положить его в tomcat/lib? Так вообще делают? Будет ли работать DI от Spring? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2016, 12:56 |
|
||
|
Обмен данными между приложениями одного Tomcat
|
|||
|---|---|---|---|
|
#18+
DS-MaxИнтересно, можно ли реализовать Persistence Units в отдельном jar и положить его в tomcat/lib? Так вообще делают? Будет ли работать DI от Spring? Можно. С другой стороны на stackoverflow вот пишут, что не нужно так делать, как и использовать общий PU. Интересно почему? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2016, 12:59 |
|
||
|
Обмен данными между приложениями одного Tomcat
|
|||
|---|---|---|---|
|
#18+
DS-MaxЧто считается лучшей практикой для обмена данными между приложениями в рамках одного Tomcat?Обычный (локальный) вызов метода класса. Не знаю, как это делать в CI и т.п. мавенах, но технически задача решается вполне тривиально для разработчиков в "одной локалке". Предположим, что "ваш девопс" разместил tomcat-ы нужных версий на одном сетевом ресурсе и организовал второй сетевой ресурс, куда разработчик "общего приложения" выкладывает сборки в каталоги, именуемые по номерам этих сборок. Если сборка остаётся в виде отдельных классов, то сборка вашего "отдельного приложения" тривиальна: Код: plaintext Если ваше "отдельное приложение" зависит только от общего приложение, но не от других "отдельных приложений", то и остальное достаточно тривиально. Котяра (tomcat) опирается на структуру двух каталогов. Первый задаётся свойством catalina.home, второй - свойством catalina.base. "Домик" видит только сервер, "базу" - сервер и все приложения хоста. Структура каталогов "домика" и "базы" задаётся в файле catalina.properties (по умолчанию). Стандартный catalina.properties содержит примерно такое: Код: plaintext 1. 2. 3. 4. Далее нам требуется, чтобы наше отдельное приложение находилось вне catalina.base. Для этого внутри ${catalina.base}/conf (в правильном подкаталоге) должен быть параметризованный описатель развёртывания. Примерно такой для "корневого" приложения: Код: xml 1. Тогда несложный скрипт вида: Код: plaintext 1. 2. 3. 4. 5. Скучно, но вполне прямолинейно, решение обобщается на "каждый разработчик выкладывает свою готовую сборку в сеть". Только свойства придётся дополнить до максимально возможного числа разворачиваемых "отдельных приложений". Если какое-то приложение вам в принципе не требуется - можно сделать так, чтобы при пустом значении свойства (-Dсвойство="") развёртывался пустой контекст. P.S. Да, по рабоче-крестьянски, но вполне работоспособно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2016, 18:33 |
|
||
|
Обмен данными между приложениями одного Tomcat
|
|||
|---|---|---|---|
|
#18+
Автор, а почему ты каждое приложение не создашь как рест-сервис? И общаться они будут без проблем. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2016, 20:14 |
|
||
|
Обмен данными между приложениями одного Tomcat
|
|||
|---|---|---|---|
|
#18+
Паша01Автор, а почему ты каждое приложение не создашь как рест-сервис? И общаться они будут без проблем. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2016, 20:18 |
|
||
|
Обмен данными между приложениями одного Tomcat
|
|||
|---|---|---|---|
|
#18+
Паша01Автор, а почему ты каждое приложение не создашь как рест-сервис? И общаться они будут без проблем. Наверное потому что ему нужно не столько общаться, сколько выделить общую функциональность это раз. А "два" это удивительная разница в производительности между REST вызовом и вызовом Java метода. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2016, 20:20 |
|
||
|
Обмен данными между приложениями одного Tomcat
|
|||
|---|---|---|---|
|
#18+
BlazkowiczПаша01Автор, а почему ты каждое приложение не создашь как рест-сервис? И общаться они будут без проблем. Наверное потому что ему нужно не столько общаться, сколько выделить общую функциональность это раз. А "два" это удивительная разница в производительности между REST вызовом и вызовом Java метода. Тогда как вариант OSGI спецификация. Тяжелая для понимания вещь, но он же этого очень хочет, правда? )))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2016, 20:45 |
|
||
|
Обмен данными между приложениями одного Tomcat
|
|||
|---|---|---|---|
|
#18+
Паша01но он же этого очень хочет, правда? )))) )) Пока он озвучил задачу - каждому программисту свою песочницу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.11.2016, 20:54 |
|
||
|
Обмен данными между приложениями одного Tomcat
|
|||
|---|---|---|---|
|
#18+
Паша01Автор, а почему ты каждое приложение не создашь как рест-сервис? И общаться они будут без проблем. BlazkowiczПаша01Автор, а почему ты каждое приложение не создашь как рест-сервис? И общаться они будут без проблем. Наверное потому что ему нужно не столько общаться, сколько выделить общую функциональность это раз. А "два" это удивительная разница в производительности между REST вызовом и вызовом Java метода. Да, так. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2016, 08:14 |
|
||
|
Обмен данными между приложениями одного Tomcat
|
|||
|---|---|---|---|
|
#18+
Petro123Паша01но он же этого очень хочет, правда? )))) )) Пока он озвучил задачу - каждому программисту свою песочницу. Скорее это одна из подзадач. Не самая главная :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2016, 08:17 |
|
||
|
Обмен данными между приложениями одного Tomcat
|
|||
|---|---|---|---|
|
#18+
Паша01Автор, а почему ты каждое приложение не создашь как рест-сервис? И общаться они будут без проблем. Кстати, они и так REST, SOAP или WebSocket сервисы. И, кстати, тогда уж лучше WebSocket. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2016, 09:11 |
|
||
|
Обмен данными между приложениями одного Tomcat
|
|||
|---|---|---|---|
|
#18+
DS-Max, Переведи. А то у тебя полтора слова и молчание. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2016, 09:32 |
|
||
|
Обмен данными между приложениями одного Tomcat
|
|||
|---|---|---|---|
|
#18+
Petro123DS-Max, Переведи. А то у тебя полтора слова и молчание. Сори, на работе работать заставляют :( Petro123)) Пока он озвучил задачу - каждому программисту свою песочницу. Это не задача, а скорее бонус от разделения. Основная задача это обмен между отдельными приложениями в одном Tomcat и более производительный чем REST. Задача эта возникла в основном из-за нескольких PU (в каждом приложении свой) и общих таблицах. Но высокопроизводительное взаимодействие между локальными приложениями в любом случае пригодится и хотелось бы разобраться. В теме прозвучали интересные советы, изучаю по мере наличия свободного времени. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2016, 10:06 |
|
||
|
Обмен данными между приложениями одного Tomcat
|
|||
|---|---|---|---|
|
#18+
DS-MaxЭто не задача, а скорее бонус от разделения интереснее, когда собеседник вместе с бонусом видит минусы. DS-Maxизучаю по мере наличия свободного времени ОК Тут было три решения. Изучайте. Удачи! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.11.2016, 10:44 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=39347251&tid=2123493]: |
0ms |
get settings: |
10ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
58ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
44ms |
get tp. blocked users: |
1ms |
| others: | 209ms |
| total: | 354ms |

| 0 / 0 |
