Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / Как play работает без сервлетов? / 25 сообщений из 42, страница 1 из 2
28.03.2017, 22:26
    #39428814
questioner
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как play работает без сервлетов?
Начал интересоваться play фреимворком.

Где-то зацепил мысль, что там внутри нет сервлетов.

А как тогда это может работать? Ну то есть есть html страница, есть java код. Как они ещё могут быть связаны как не через сервлеты?
...
Рейтинг: 0 / 0
28.03.2017, 22:46
    #39428822
Usman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как play работает без сервлетов?
...
Рейтинг: 0 / 0
29.03.2017, 08:00
    #39428907
Alexey Tomin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как play работает без сервлетов?
questionerНачал интересоваться play фреимворком.

Где-то зацепил мысль, что там внутри нет сервлетов.

А как тогда это может работать? Ну то есть есть html страница, есть java код. Как они ещё могут быть связаны как не через сервлеты?

Не знаю play! ;) но Вы просто не понимаете сути.
Приложение слушает порт. Любое приложение может слушать любой порт.
При входящем зарпосе на этот порт вызывается некоторые метод.
Он должен вернуть ответ.
В случае html есть стандарт- что можно получить, что надо отдавать.

В java есть стандартная привязка этого к методам с помощью классов HttpServlet и GenericServlet.

Но это всё общий подход. Можно использовать что угодно. Более того, чтобы заработал Servlet надо чтобы сервер это обеспечил. См. например org.eclipse.jetty.server.HttpChannel.handle
...
Рейтинг: 0 / 0
29.03.2017, 08:06
    #39428911
dimonz80
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как play работает без сервлетов?
questionerНачал интересоваться play фреимворком.

Где-то зацепил мысль, что там внутри нет сервлетов.

А как тогда это может работать? Ну то есть есть html страница, есть java код. Как они ещё могут быть связаны как не через сервлеты?

Там либо это либо это


Alexey TominquestionerНачал интересоваться play фреимворком.

Где-то зацепил мысль, что там внутри нет сервлетов.

А как тогда это может работать? Ну то есть есть html страница, есть java код. Как они ещё могут быть связаны как не через сервлеты?

Не знаю play! ;) но Вы просто не понимаете сути.
Приложение слушает порт. Любое приложение может слушать любой порт.
При входящем зарпосе на этот порт вызывается некоторые метод.
Он должен вернуть ответ.
В случае html есть стандарт- что можно получить, что надо отдавать.

В java есть стандартная привязка этого к методам с помощью классов HttpServlet и GenericServlet.

Но это всё общий подход. Можно использовать что угодно. Более того, чтобы заработал Servlet надо чтобы сервер это обеспечил. См. например org.eclipse.jetty.server.HttpChannel.handle
+1
...
Рейтинг: 0 / 0
29.03.2017, 11:18
    #39429041
questioner
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как play работает без сервлетов?
Alexey Tomin
Не знаю play! ;) но Вы просто не понимаете сути.


Поэтому и спрашиваю

Alexey TominПриложение слушает порт. Любое приложение может слушать любой порт.
При входящем зарпосе на этот порт вызывается некоторые метод.
Он должен вернуть ответ.


Что это более детально значит? Какой механизм позволяет "слушать" порт? что вообще понимается под слушанием?
Как труба, на одной стороне которой клиент, а на другой сервер?

Alexey Tomin
В случае html есть стандарт- что можно получить, что надо отдавать.

Что за стандарт?
Alexey Tomin
В java есть стандартная привязка этого к методам с помощью классов HttpServlet и GenericServlet.

Привязка чего?

Alexey TominНо это всё общий подход. Можно использовать что угодно. Более того, чтобы заработал Servlet надо чтобы сервер это обеспечил. См. например org.eclipse.jetty.server.HttpChannel.handle

Что понимается под сервером? контейнер сервлетов?
...
Рейтинг: 0 / 0
29.03.2017, 11:40
    #39429066
questioner
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как play работает без сервлетов?
Usmanquestioner,

https://playframework.com/documentation/2.6.x/Philosophy#powerful-build-system

А Вы сами то читали, что скинули?

Из относящегося к вопросу только
https://playframework.com/documentation/2.6.x/Philosophy#powerful-build-system it was crucial to providing an asynchronous HTTP API instead of the standard Servlet API

По-моему не очень то отвечает на мой вопрос.
...
Рейтинг: 0 / 0
29.03.2017, 11:45
    #39429069
questioner
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как play работает без сервлетов?
И кстати в чем асинхронность HTTP API ?

Там каким то образом сервер шлёт acknowledge клиенту, что обработка запроса начата, а потом, когда обработка завершена, каким-то хитрым способом доставляет данные на клиент?
...
Рейтинг: 0 / 0
29.03.2017, 11:51
    #39429073
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как play работает без сервлетов?
questionerА как тогда это может работать? Ну то есть есть html страница, есть java код. Как они ещё могут быть связаны как не через сервлеты?
Какой смешной вопрос. Есть Java - язык программирования общего назначения. Есть HTTP - текстовый протокол передачи данных по TCP. PHP вот как-то умудряется работать без сервлетов. А в .NET там ещё страшнее... Даже HTTP сервер "не нужен". Сразу HttpListener лепят. И почему-то тоже без сервлетов.
Кстати, Jetty умеет работать без сервлетов. Это из популярного. А вот ещё из невероятного: JAX-WS работает без сервлетов!
...
Рейтинг: 0 / 0
29.03.2017, 11:54
    #39429076
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как play работает без сервлетов?
questionerИ кстати в чем асинхронность HTTP API ?
В чем асинхронность HTTP API, который использует Play framework? Или в чем вопрос?

questionerТам каким то образом сервер шлёт acknowledge клиенту, что обработка запроса начата, а потом, когда обработка завершена, каким-то хитрым способом доставляет данные на клиент?
Callback-ами как обычно.
...
Рейтинг: 0 / 0
29.03.2017, 11:56
    #39429077
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как play работает без сервлетов?
...
Рейтинг: 0 / 0
29.03.2017, 12:08
    #39429091
Usman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как play работает без сервлетов?
questionerПо-моему не очень то отвечает на мой вопрос.вобщем, используется JBoss Netty сервер
...
Рейтинг: 0 / 0
29.03.2017, 12:15
    #39429101
questioner
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как play работает без сервлетов?
BlazkowiczquestionerА как тогда это может работать? Ну то есть есть html страница, есть java код. Как они ещё могут быть связаны как не через сервлеты?
Какой смешной вопрос. Есть Java - язык программирования общего назначения. Есть HTTP - текстовый протокол передачи данных по TCP. PHP вот как-то умудряется работать без сервлетов. А в .NET там ещё страшнее... Даже HTTP сервер "не нужен". Сразу HttpListener лепят. И почему-то тоже без сервлетов.
Кстати, Jetty умеет работать без сервлетов. Это из популярного. А вот ещё из невероятного: JAX-WS работает без сервлетов!

Хм, и как мне теперь с этим жить?

сервлеты это просто обёртка над http, лишающая последний набора фичей ?

BlazkowiczВ чем асинхронность HTTP API, который использует Play framework? Или в чем вопрос?

Да, в чем асинхронность HTTP API, который использует Play framework?

BlazkowiczКстати, Jetty умеет работать без сервлетов
Ничоси. а как?



BlazkowiczquestionerТам каким то образом сервер шлёт acknowledge клиенту, что обработка запроса начата, а потом, когда обработка завершена, каким-то хитрым способом доставляет данные на клиент?

Callback-ами как обычно.

А обычно для каких ситуаций?

Моё представление о HTTP

Есть клиент, есть сервер.

Клиент шлёт запрос, висит пока сервер не ответил.
Сервер принимает запрос, обрабатывает его, отправляет ответ клиенту
клиент получает ответ, отвисает.

В случае с веб сокетами насколько я понимаю всё иначе. шлём хоть от клиента серверу, хоть от сервера клиенту - всё одно. Никто не блокируется.
...
Рейтинг: 0 / 0
29.03.2017, 12:33
    #39429137
questioner
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как play работает без сервлетов?
BlazkowiczquestionerИ кстати в чем асинхронность HTTP API ?
В чем асинхронность HTTP API, который использует Play framework? Или в чем вопрос?

А это асинхронное http api над синхронным http ?

Пример может какой-то жизненный?
...
Рейтинг: 0 / 0
29.03.2017, 12:53
    #39429164
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как play работает без сервлетов?
questionerсервлеты это просто обёртка над http, лишающая последний набора фичей ?

JEE sucks.

questionerДа, в чем асинхронность HTTP API, который использует Play framework?

В реализации.

questionerНичоси. а как?

Хэндлеры

questionerА обычно для каких ситуаций?
Для реализации асинхронных API callback - обычная практика.

questionerМоё представление о HTTP Есть клиент, есть сервер. Клиент шлёт запрос, висит пока сервер не ответил. Сервер принимает запрос, обрабатывает его, отправляет ответ клиенту клиент получает ответ, отвисает. В случае с веб сокетами насколько я понимаю всё иначе. шлём хоть от клиента серверу, хоть от сервера клиенту - всё одно. Никто не блокируется.
Ты путаешь Java API для работы с HTTP и возможности специфицированые для HTTP протокола. В случае playframework речь идёт только об API, а не о возможностях протокола HTTP.
...
Рейтинг: 0 / 0
29.03.2017, 12:57
    #39429169
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как play работает без сервлетов?
questionerА это асинхронное http api над синхронным http ?

Для старых версий - да. Для новых может уже чего-то придумали.

questionerПример может какой-то жизненный?
В смысле? Создали новый поток. Запустили туда ожидание Http отклика. Вернули управление вызывающему коду. Вуаля! Асинхронный API готов.
...
Рейтинг: 0 / 0
29.03.2017, 13:47
    #39429225
Диез
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как play работает без сервлетов?
questionerBlazkowiczпропущено...

В чем асинхронность HTTP API, который использует Play framework? Или в чем вопрос?

А это асинхронное http api над синхронным http ?

Пример может какой-то жизненный?

Абстрагируйтесь от HTTP.

Представьте, что вам надо передать файл для обработки какой-то внешней системе, а она должна его обработать и результаты вернуть вам в другом файле.

Ваша программа кладет файл "request.txt" на диск, подписывается средствами OS на событие появления файла "response.txt", и занимается другими задачами.
Как только внешняя система обработает request.txt, она кладет на диск файл response.txt, после чего OS вызывает событие, по которому отрабатывает код в вашей программе (возможно, совсем не в том потоке, который клал request).

Никто не ждет, пока обработается файл. Вот вам и асинхронность.
...
Рейтинг: 0 / 0
29.03.2017, 13:55
    #39429237
questioner
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как play работает без сервлетов?
BlazkowiczquestionerА это асинхронное http api над синхронным http ?

Для старых версий - да. Для новых может уже чего-то придумали.

questionerПример может какой-то жизненный?
В смысле? Создали новый поток. Запустили туда ожидание Http отклика. Вернули управление вызывающему коду. Вуаля! Асинхронный API готов.

Это для случая если мне из моего сервера надо сделать http запрос на другой сервер?

Я как-то себе представлял, что речь идёт о том, что сервер принимает запросы. Какого отклика мы можем ждать?
...
Рейтинг: 0 / 0
29.03.2017, 14:13
    #39429256
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как play работает без сервлетов?
questionerХм, и как мне теперь с этим жить?
сервлеты это просто обёртка над http, лишающая последний набора фичей ?
)) у тебя прям синдром вади. Который любит чистый код нижнего уровня.
Сервлет это кусок Java строчек с кодом.
Так вроде пишут в первом классе.
И не мешай тут твою любимую многопоточность. Она только мешает разглядеть главное).
...
Рейтинг: 0 / 0
29.03.2017, 14:18
    #39429261
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как play работает без сервлетов?
questioner,

Разговор опять сводится к "мне не понятно". Давай конкретные вопросы.
...
Рейтинг: 0 / 0
29.03.2017, 14:56
    #39429302
dimonz80
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как play работает без сервлетов?
questioner,

Попробуй написать простой TCP сервер (используя java.net.ServerSocket) и добейся того, чтобы запросы обрабатывались параллельно а не по очереди. Многие вопросы тогда отпадут сами собой, в т/ч и про асинхронность.
...
Рейтинг: 0 / 0
29.03.2017, 15:55
    #39429354
Usman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как play работает без сервлетов?
UsmanquestionerПо-моему не очень то отвечает на мой вопрос.вобщем, используется JBoss Netty сервер https://www.playframework.com/documentation/2.6.x/Server
...
Рейтинг: 0 / 0
29.03.2017, 16:07
    #39429362
Leonid Kudryavtsev
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как play работает без сервлетов?
questionerИз относящегося к вопросу только
https://playframework.com/documentation/2.6.x/Philosophy#powerful-build-system it was crucial to providing an asynchronous HTTP API instead of the standard Servlet API

По-моему не очень то отвечает на мой вопрос.

На мой взгляд эта строчка совершенно полностью отвечает на Ваш вопрос, поставленный в первом сообщении.
...
Рейтинг: 0 / 0
29.03.2017, 16:45
    #39429395
lleming
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как play работает без сервлетов?
Alexey TominВ случае html есть стандарт- что можно получить, что надо отдавать.

html это больше рекомендации w3c, тут наверное имелось ввиду протокол http1.1 например
...
Рейтинг: 0 / 0
30.03.2017, 06:27
    #39429626
Юрий321
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как play работает без сервлетов?
questionerBlazkowiczпропущено...

Для старых версий - да. Для новых может уже чего-то придумали.

пропущено...

В смысле? Создали новый поток. Запустили туда ожидание Http отклика. Вернули управление вызывающему коду. Вуаля! Асинхронный API готов.

Это для случая если мне из моего сервера надо сделать http запрос на другой сервер?

Я как-то себе представлял, что речь идёт о том, что сервер принимает запросы. Какого отклика мы можем ждать?

на пальцах если, оно работает так:

клиент запросил, сервер принял и считает, клиент ждет ответа, сервер отдает ответ, соединение закрывается - это обычное синхронное.

асинхронное работает так:
клиент запросил, сервер принял и ответил Ок (или Ошибка) и закрыл соединение, потом только начал считать.

далее может быть два варианта:

1) клиент периодически запрашивает сервер - как там моя задача, сервер отвечает или результатом счета, или кодом типа "пока считаю", "ошибка" и т.п.
Такое обычно называют polling.

2) клиент поднимает у себя свой собственный сервер (листен сокет), при запросе передает серверу свой адрес и слушает на нем ответ от сервера. Когда сервер заканчивает считать, он подключается к тому клиентскому "серверу" и отдает туда ответ.
Про такое говорят, что работает через callback.
...
Рейтинг: 0 / 0
30.03.2017, 07:50
    #39429642
dimonz80
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как play работает без сервлетов?
Юрий321questionerпропущено...


Это для случая если мне из моего сервера надо сделать http запрос на другой сервер?

Я как-то себе представлял, что речь идёт о том, что сервер принимает запросы. Какого отклика мы можем ждать?

на пальцах если, оно работает так:

клиент запросил, сервер принял и считает, клиент ждет ответа, сервер отдает ответ, соединение закрывается - это обычное синхронное.

асинхронное работает так:
клиент запросил, сервер принял и ответил Ок (или Ошибка) и закрыл соединение, потом только начал считать.

далее может быть два варианта:

1) клиент периодически запрашивает сервер - как там моя задача, сервер отвечает или результатом счета, или кодом типа "пока считаю", "ошибка" и т.п.
Такое обычно называют polling.

2) клиент поднимает у себя свой собственный сервер (листен сокет), при запросе передает серверу свой адрес и слушает на нем ответ от сервера. Когда сервер заканчивает считать, он подключается к тому клиентскому "серверу" и отдает туда ответ.
Про такое говорят, что работает через callback.

Че правда что-ли?
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / Как play работает без сервлетов? / 25 сообщений из 42, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]