Это промежуточное ПО Tomcat? - PullRequest
4 голосов
/ 31 июля 2009

Итак, у меня есть клиент, который должен запускать tomcat для разных вещей (Solr и веб-сервис), и после встречи с ним и другим программистом в проекте я немного запутался. Другой программист разбрасывал модные слова и говорил что-то вроде: «Нам нужно промежуточное программное обеспечение для tomcat». В ответ на это мой клиент просит меня найти промежуточное программное обеспечение для tomcat, которое смутило меня, потому что я думал, что написание веб-сервиса будет специфичным для данного проекта, и поэтому «промежуточное программное обеспечение» будет разработано нами. Если это так, то почему бы просто не сказать «Веб-сервис»?

У меня такой вопрос: есть ли сервлет или плагин с открытым исходным кодом для tomcat, который делает его промежуточным программным обеспечением (может быть, что-то с сайта apache?) Или имеет смысл писать свой собственный промежуточный программный продукт для tomcat? Или ... tomcat считается промежуточным ПО? Я полностью n00b, когда дело доходит до Java и Tomcat, но у меня большой опыт работы с C #, поэтому я пытаюсь выяснить, как это относится к C #. Я никогда раньше не использовал термин «промежуточное программное обеспечение», и я уверен, что «веб-сервис» - это почти то же самое.

Есть идеи?

Ответы [ 5 ]

5 голосов
/ 31 июля 2009

Все эти ответы слишком многословны.Да, Tomcat - это промежуточное ПО.он расположен между слоем HTML / Javascript в браузере клиента и уровнем базы данных на вашем сервере.Он не такой полнофункциональный, как сервер J2EE, но все же является «промежуточным программным обеспечением», насколько общепринятым является термин «умное слово».

3 голосов
/ 31 июля 2009

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

Если вы пишете веб-сервисы поверх другого приложения, а третье приложение будет общаться с веб-сервисами. Тогда да, вы пишете промежуточное ПО.

Если вы обычно работаете в среде .NET, а некоторые системы работают на Tomcat. Тогда вполне вероятно, что другой программист утверждал, что для подключения приложений .NET к приложениям Java на Tomcat необходимо написать некоторое промежуточное программное обеспечение. (Вероятно, он прав.)

0 голосов
/ 31 июля 2009

Я думаю, что очевидный ответ будет: «Промежуточное программное обеспечение для Tomcat, что делать?»

Если человек отвечает «Стоять между базой данных и браузером», то правильный ответ - «Tomcat - это промежуточное ПО».

Если ответ «Стоять между нашим сервером безопасности и Tomcat», то ответ, вероятно, «Хорошо, нам придется проверить, есть ли у нас такое программное обеспечение у себя дома или нам нужно приобрести или построить его . "

В реальной жизни, когда возникают подобные вещи, ответ, который я часто получаю, больше напоминает: «Потому что я читал в журнале, что веб-промежуточное программное обеспечение - это новейшая передовая технология, и поэтому мы должны его использовать» или «Умм, потому что, как-то, я где-то слышал, что вам всегда нужно промежуточное или металлическое изделие или что-то в этом роде », тогда правильный ответ:« Когда вы определили проблему, мы можем обсудить решения. Давайте не будем выбирать решение, а затем искать проблема, которую он может решить. "

0 голосов
/ 31 июля 2009

Вы можете по праву поставить ярлык «Middleware» на все, что имеет отдельных клиентов и серверные части. Для меня вопрос не в том, как вы это называете, а в том, является ли «это» правильной архитектурой / технологией для ситуации.

0 голосов
/ 31 июля 2009

Middleware - это буквально просто программное обеспечение, которое находится в центре двух систем. Это происходит так: если одна система говорит по XML через HTTP, другая система говорит по-COBOL. Промежуточное программное обеспечение может выполнять перевод между двумя системами.

Большая часть промежуточного программного обеспечения в пространстве J2EE - это просто программная сборка поверх контейнера J2EE. К сожалению, tomcat не является полноценным J2EE-контейнером, он просто реализует спецификацию сервлета. Следовательно, нет поддержки для других средств J2EE, таких как JMS, EJB, SMTP и т. Д., Которые ограничивают его автономную возможность подключения к другой системе.

Однако, если вы работаете с современными системами, на tomcat может работать много программного обеспечения, которое позволяет вам подключаться к другой системе с помощью веб-службы на основе SOAP. В этом случае вам не нужна отдельная система промежуточного программного обеспечения.

В целом, определите, к каким системам вам нужно подключиться сейчас, какие системы вам нужно подключить в ближайшем будущем, и «Делайте это глупо и просто» (KISS). Не просто слепо доверяйте поставщикам, которые утверждают, что их промежуточное ПО будет делать кофе и ежедневно доставлять его генеральному директору, если это то, что они должны сказать, чтобы совершить продажу.

Что касается "веб-службы", веб-служба действительно означает любую услугу, которую вы можете вызвать из Интернета. Так что это снова зависит от вашей аудитории: если вы общаетесь с внешними поставщиками, знакомыми с веб-сервисом на основе SOAP, у вас есть много вариантов. Однако, если ваша аудитория хочет позвонить вам в службу, отправив сообщение в Твиттере на свою учетную запись твитера, это также веб-служба.

...