Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java EE (J2EE) и Spring > Какой выбрать путь для построение web-сервиса


Автор: Su_ 29.9.2010, 16:39
Всем привет!

Хотелось бы понять как строятся крупные веб-сервисы . Уже не много почитал, и понял что подходов может быть много)

Что бы вы посоветовали? Задача примерно следующая : в бд появляется запись с координатой , это координата отображается в Yandex/Google api maps.


Верно ли я понял ?(см. картинку)

  user posted image

Автор: Vasay 29.9.2010, 18:30
Su_, 

А так ли нужны EJB  и, соответственно, GlassFish (как апликэйшен сервер) ?


Автор: Vasay 29.9.2010, 18:52
ИМХО, в Вашем случае:

Servlet <-> DAO <-> ORM (думаю, в данном случае не нужен) <-> Connection Pool <-> DB

Автор: Su_ 29.9.2010, 23:34
Спасибо!
А если допустим будет 10 000 записей одновременно меняться в таблице , подход измениться?
Т.е в каких случаех лучше использовать web+ejb+glassfish а в каких Servlet <-> DAO <-> Connection Pool <-> DB ?

Автор: Vasay 30.9.2010, 09:50
Цитата

А если допустим будет 10 000 записей одновременно меняться в таблице , подход измениться?


Это проблема базы данных, не относящаяся к выбору технологий для построения веб-сервиса (я так понял, меняются данные не через веб сервис?)

Цитата

Т.е в каких случаех лучше использовать web+ejb+glassfish а в каких Servlet <-> DAO <-> Connection Pool <-> DB ?


glassfish - это сервер приложений. Есть и другие (JBoss например). Единственное, релиз с поддержкой EJB3.1, вроде, пока только у него. 

Автор: Su_ 30.9.2010, 12:44
Цитата

Это проблема базы данных, не относящаяся к выбору технологий для построения веб-сервиса (я так понял, меняются данные не через веб сервис?)

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


Цитата

glassfish - это сервер приложений. Есть и другие (JBoss например). Единственное, релиз с поддержкой EJB3.1, вроде, пока только у него. 

Тут была http://forum.vingrad.ru/forum/topic-238915/kw-application-server-javaee.html какие сервера народ пользует. После прочтения как то начать захотелось с glassfish

Автор: Старовъръ 30.9.2010, 12:55
[quote]Т.е. идея сделать именно гибкий, масштабируемый сервис.[quote]Да нет разницы как ты это сделаешь - выбирай WSDL first подход, любой провайдер (например, Apache CXF) и вперед за сокровищами smile EJB дает гибкость в том смысле, что можно выбирать разные транспорты/протоколы для вызова веб служб. Например, если это будет вызов на той же машине, то EJB может передать данные не черезь сеть, а напрямую в службу.

Автор: Vasay 30.9.2010, 13:25
Цитата

выбирай WSDL first подход, любой провайдер (например, Apache CXF)


а почему не RESТ ? 

Цитата

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


Мне кажется, смысла в EJB в данной задачи нет. 

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

Автор: Su_ 30.9.2010, 13:26
Спасибо, я думаю пора начинать.  
Для начало я установил mysql , Apache , при помощи Денвера smile
Далее создал табличку в phpmyadmin.
Далее скачал mysql-connector и поставил.

А вот дальше не очень понятно .Создать Connection Pool к BD , а дальше? Если честно не очень понял эту строчку: 
Цитата

выбирай WSDL first подход, любой провайдер (например, Apache CXF) и вперед за сокровищами

Автор: Vasay 30.9.2010, 13:35
Su_, 
вы с Java знакомы?

Автор: Su_ 30.9.2010, 13:36

Цитата

Мне кажется, смысла в EJB в данной задачи нет. 

Ок , тут я понял ) Просто с EJB, RMI я имел дело давно)
Цитата

а почему не RESТ ? 

Цитата

REST – это набор архитектурных принципов и стиль проектирования приложений, ориентированный на создание сетевых систем, в основе которых лежат простые механизмы для обращения к ресурсам (get, post, put, delete). Сам термин REST, предложенный Роем Филдингом (Roy Fielding) в его диссертации, используется в более широком смысле для описания инфраструктуры передачи данных через протоколы, подобные HTTP, без дополнительных семантических слоев или специального управления сессиями
. 

А с чего начать например в netBeans ? Java Web ?

Автор: Vasay 30.9.2010, 13:37
Su_, 

Начать можно с прочтения этой статьи. Кстати, там как раз работа с гуглМапс: http://netbeans.org/kb/docs/websvc/rest.html

Автор: Su_ 30.9.2010, 13:39
Цитата

вы с Java знакомы? 

Да , до этого только Swing, awt . 

В web-сервисах на java я новичек, начал читать , увидел что сам web-сервис можно построить многими методами, поэтому спрашиваю тут какой выбрать 

Автор: Vasay 30.9.2010, 13:39
Цитата

, Apache , при помощи Денвера 
Далее создал табличку в phpmyadmin.


можно было бы без этого - NetBeans имеет консольку для работы с БД.

Автор: Su_ 30.9.2010, 13:40
Цитата

Начать можно с прочтения этой статьи. Кстати, там как раз работа с гуглМапс: http://netbeans.org/kb/docs/websvc/rest.html 

Спасибо, дело пошло веселее)

Пошел разбираться

Автор: Su_ 3.10.2010, 10:04
Ну что же , сделал небольшой web-сервис с использование google maps, glassfish ,mysql.  То что я и хотел. Буду продолжать. Всем спасибо !

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)