powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Async servlet db connection
54 сообщений из 54, показаны все 3 страниц
Async servlet db connection
    #38610510
Atum1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вопрос такой есть ли от такого решения профит?
Есть 1000 пользователей , у каждого создается и храниться сессия, все активно обращаются к базе за данными , база mysql.
Есть tomcat 7 c maxThreads="100" - не более 100 тредов .
DataSource - это pool c3p0 propertise , где создается 10 коннетов базе.


Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
@WebServlet("/foo", asyncSupported=true)
public class MyServlet extends HttpServlet {

@Resourse(name = "myDBRef")
private DataSource dataSource;

//есть ли смысл создавать больше?
private ScheduledThreadPoolExecutor executor = new ThreadPoolExecutor(10);


    public void doGet(HttpServletRequest req, HttpServletResponse res) {
        // Обрабатываем запрос
        // Формируем контекст асинхронной обработки
        final AsyncContext aCtx = request.startAsync(req, res);
        // запускаем обращение к медленным ресурсам в отдельном потоке.
        executor.submit(new Callable<Object>(){  
                    public Object call() throws Exception  
                    {  
                             //  тут соединение с базой и получение данных.
                             //  а если это будет не процедура а select ?
                              Connection conn = dataSource.getConnection();   
                              CallableStatement cst = conn.prepareCall("call doSomeAnalytics()");  
                              cst.execute();   
                              async.getResponse().getWriter().print("Database procedure executed");   
                              async.complete();  
                              conn.close();
                              return this;   
                    }  

    }
}



1)будет ли такой сервлет эффективнее обычного не синхронного ?
2)ThreadPoolExecutor - имеет ли смысл создавать больше 10 тредов? (по количеству коннектов к базе ?)
3)
...
Рейтинг: 0 / 0
Async servlet db connection
    #38610513
Atum1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
3) как я понимаю Если все потоки заняты, то запрос ставится в очередь (по умолчанию = 100) ?
...
Рейтинг: 0 / 0
Async servlet db connection
    #38610526
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Соотношение числа запросов к размеру пула определяется исключительно скоростью обработки запросов.
Т.е. не протестируете - не узнаете. Но десять подключений к базе для тысячи активных пользователей - "этврятли".
...
Рейтинг: 0 / 0
Async servlet db connection
    #38610530
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Atum13) как я понимаю Если все потоки заняты, то запрос ставится в очередь (по умолчанию = 100) ?Неправильно - запрос обламывается.
Поэтому - не надо экономить на размере пула запросов сервлет-контейнера.
...
Рейтинг: 0 / 0
Async servlet db connection
    #38610535
Atum1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. Sidorov,

а как установить счетчик запросов которые обломились???

ServletFilter ?
...
Рейтинг: 0 / 0
Async servlet db connection
    #38610556
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Atum1а как установить счетчик запросов которые обломились???Зачем? Лог смотрите.
...
Рейтинг: 0 / 0
Async servlet db connection
    #38626451
Atum1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
возник такой вот вопрос , после прочтения доков

по сервлетам

http://docs.oracle.com/javaee/7/tutorial/doc/servlets017.htm

и по сокетам

http://docs.oracle.com/javaee/7/tutorial/doc/websocket.htm


модель сайта такая : клиент подключился - авторизовался на сайте - и больше ничего не делает - только смотрит "мультик" и и посылает запрос на обновление данных. ( ajax GET getInfo()) - ему вернеться json .

чтобы не мучить сервер постоянные запросами о том обновились ли данные или нет - можно пойти таким путем
(асинхронный чат или сокеты)

я правильно понял что :

на асинхронных сервлетах можно построить такую схему общения ,как :

клиенты подключаются (авторизуются ) для них создается сессия и они добавляются в очередь ...

как только появились обновления- они автоматом в цикле все рассылаются клиентам - по средствам long pooling и того что
сервлет асинхронный и держит соединение .

вопрос какие накладные расходы на http сессию ? если у нас 5000 пользователей ,
значит ли это что нам надо в среднем 5 МБ одну http сессию - итого (5*5000 = 25 Гб оперативки?)


сколько весит сессия? ( tomcat ? jetty?)

как постоит такой чат? асинхронный тред будет делать out.flush() - чтобы отправить новые данные?

Второй подход - это вебсокеты :

как описано тут

http://findevelop.blogspot.de/2013/02/websocket-tomcat-7.html


но тогда вопрос - в такой схеме максимальное количество пользователей какое? 60000 ? по количеству портов или как?

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

Сколько это по памяти?

по какому пути пойти?
...
Рейтинг: 0 / 0
Async servlet db connection
    #38626489
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
смотри websockets - это решение твоих проблем
можно организовать клиентов по типу "пидписки" если событие отвечает данной подписки - ему отправляются данные, причем данные могут отправлятся без подключения к базе, можно проанализировать изменения и отправить клиенту данные без обращения к базе.
websockets снимают нагрузка на сервер многократно, если у тебя 5000 клиентов и каждый долбит сервер в ожидании обновлений, и каждое требование это обращение к базе....даже если каждое обращение раз в минуту...бедняжка сервер...
websockets снимает это, обращение к базе будут только при изменении данных, ну и если это изменение требует обязательного обращения к базе, но при этом обращение будет одно и данные будут разосланы множеству "подписчиков"
основное преимущество websockets - сервер сам рассылает данные, а не отправляет их по запросу.
причем это будет работать и для клиента-браузера, и для клиента-андроида. для сервера никакой разницы нет.
одновременно обслуживаются клиенты на андроидах и браузерах - с софтом меньше проблем
правда во всех примерах есть один ньюанс, о котором умалчивается....
я его решил.
я тащусь от websockets .....
количество подключений - вопрос интересный, но 60 000 подключений (клиентов) - это круто....
...
Рейтинг: 0 / 0
Async servlet db connection
    #38626597
Atum1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадясмотри websockets - это решение твоих проблем
можно организовать клиентов по типу "пидписки" если событие отвечает данной подписки - ему отправляются данные

причем это будет работать и для клиента-браузера, и для клиента-андроида. для сервера никакой разницы нет.
одновременно обслуживаются клиенты на андроидах и браузерах - с софтом меньше проблем
правда во всех примерах есть один ньюанс, о котором умалчивается....
я его решил.
я тащусь от websockets .....
количество подключений - вопрос интересный, но 60 000 подключений (клиентов) - это круто....

тогда сразу два вопроса :

Первый что за нюанс?
Второй как быть с безопасностью - websockets и прозрачные прокси ?! будут ли сокеты работать везде?
...
Рейтинг: 0 / 0
Async servlet db connection
    #38626611
Atum1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
т.е с асинхронностью вот хороший пример :

https://plumbr.eu/blog/how-to-use-asynchronous-servlets-to-improve-performance
...
Рейтинг: 0 / 0
Async servlet db connection
    #38626629
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сервлет-контейнер принял запрос, сервлет обнаружил, что есть изменения и отправил отклик.
Сервлет-контейнер принял запрос, сервлет обнаружил, что изменений пока нет, сформировал часть заголовков ответа.
Сервлет подождал секунд тридцать и, если изменений не появилось, сформировал остальные заголовки и отправил отклик "нет изменений".
Т.е. в самом худшем случае клиент будет опрашивать сервер не чаще двух раз в минуту. Никого не напряжёт.
...
Рейтинг: 0 / 0
Async servlet db connection
    #38626645
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. SidorovСервлет-контейнер принял запрос, сервлет обнаружил, что изменений пока нет, сформировал часть заголовков ответа.
Сервлет подождал секунд тридцать и, если изменений не появилось, сформировал остальные заголовки и отправил отклик "нет изменений".Сервлет-контейнер принял запрос, сервлет обнаружил, что изменений пока нет и, если в течении тридцати секунд изменений не появилось, отправил отклик "нет данных".
...
Рейтинг: 0 / 0
Async servlet db connection
    #38626682
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторПервый что за нюанс?
Второй как быть с безопасностью - websockets и прозрачные прокси ?! будут ли сокеты работать везде?

мыло в профиле, позволю себе сохранить интригу :)
с безопасностию - существуют wss, которые к тому ж спокойно ходят через прокси, в отличие от ws
я для авторизации использую типа http://findevelop.blogspot.de/2013/10/web-spring-security-100.html
и после авторизации включаю (открываю) страницы для работы с передачей данных по websocketss


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

авторТ.е. в самом худшем случае клиент будет опрашивать сервер не чаще двух раз в минуту. Никого не напряжёт.
один клиент конечно не напряжёт. а если их 5000? 5000 пустых обращений в минуту....
...
Рейтинг: 0 / 0
Async servlet db connection
    #38626693
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяодин клиент конечно не напряжёт. а если их 5000? 5000 пустых обращений в минуту....При пяти тысячах клиентов опрос два раза в минуту станет последней проблемой с которой вы будете разбираться. Если, конечно, вообще заметите эту проблему.
...
Рейтинг: 0 / 0
Async servlet db connection
    #38626700
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. Sidorovвадяодин клиент конечно не напряжёт. а если их 5000? 5000 пустых обращений в минуту....При пяти тысячах клиентов опрос два раза в минуту станет последней проблемой с которой вы будете разбираться. Если, конечно, вообще заметите эту проблему.

5000 клиентов в минуту = 80 в секунду не много, но это пустые обращения,
и куча коонектов к базе..
и оперативность получения данных клиентом страдает...
при ws данные на клиенте обновляются практически "мнгновенно".
и загрузка сервера намного меньше - соответственно, требования к серверу меньше.
если есть современное, более качественное решение - зачем использоать старое?
я работал с прочими решениями, куча головняков.
особенно когда данные от сервера - через довольно долгие запросы/процедуры.
причем через ws клиент может получать данные по любому количеству процессов.
к примеру куча графиков на экране и все отображают данные в реальном времени, а не с задержкой.
и главное - логика проще некуда, пришли данные - изменения в базу при помощи хранимки, из этой же храмнимки данные для рассылки.
кода минимум.
...
Рейтинг: 0 / 0
Async servlet db connection
    #38626703
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя5000 клиентов в минуту = 80 в секунду не много, но это пустые обращения,
и куча коонектов к базе..Если "куча коннектов", то это кривые руки. Никто не заставляет брать соединение из пула раньше времени и держать его вне пула дольше, чем надо.
...
Рейтинг: 0 / 0
Async servlet db connection
    #38626714
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
если есть инструмент, при котором множество проблем просто не возникают, и поэтому незачем задумываться даже голове с прямыми руками, надо использовать этот инструмент, а на голову загружать более нужными задачами.
я ведь не говорю что решений нет без ws, просто с ws решения более красивые и дешёвые. и прямые ручки могут заработать больше.
при ws (повторюсь) клиент может быть и браузером, и приложением - серверу на это наплевать - он отправляет данные однообразно, не надо делать разный код для отправки браузеру и приложению.
...
Рейтинг: 0 / 0
Async servlet db connection
    #38626735
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяпри ws (повторюсь) клиент может быть и браузером, и приложением - серверу на это наплевать - он отправляет данные однообразно, не надо делать разный код для отправки браузеру и приложению.На уровне HTTP не различаются браузеры и приложения.
...
Рейтинг: 0 / 0
Async servlet db connection
    #38626741
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. Sidorov,
ты отвергаешь ws?
или?
ты их пробовал?
...
Рейтинг: 0 / 0
Async servlet db connection
    #38626768
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Atum1модель сайта такая : клиент подключился - авторизовался на сайте - и больше ничего не делает - только смотрит "мультик" и и посылает запрос на обновление данных. ( ajax GET getInfo()) - ему вернеться json .

чтобы не мучить сервер постоянные запросами о том обновились ли данные или нет - можно пойти таким путем
(асинхронный чат или сокеты)
всё таки - связь двухсторонняя или нет?
Асинхронность \ чат \ простой сайт с пулом - никак не связаны между собой.
Выбери из 3-х вопросов - один.
По 1 вопросу у тебя не требуется асинхронность, чат и обновление клиента с сервера.
...
Рейтинг: 0 / 0
Async servlet db connection
    #38626771
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя,
для ws тут нет ТЗ imho
...
Рейтинг: 0 / 0
Async servlet db connection
    #38626810
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
любой из 3 просто решается через ws
...
Рейтинг: 0 / 0
Async servlet db connection
    #38626814
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадялюбой из 3 просто решается через ws
ты отвергаешь HTTP?
или?
ты их пробовал?
...
Рейтинг: 0 / 0
Async servlet db connection
    #38626823
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяты отвергаешь ws?
или?
ты их пробовал?Я отвергаю восторги по поводу их появления.
Нет, не пробовал и не собираюсь.
...
Рейтинг: 0 / 0
Async servlet db connection
    #38626826
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
я не отвергаю HTTP
я делаю проекты на ws.
и впервом проекте (когда ws ещё только появились) у меня используется два протокола jax-ws и ws
ws "идет поверх" http, поэтому отвергать http просто неразумно.
я не отвергаю старые инструменты, я утверждаю, что с новым инструментом (ws/wss) можно пржние проблемы решать намного проще, а некоторых проблем просто нет.
у ws есть один недостаток -ie10
отлично с ними работают FF и CHrome.
поэтому выбор зависит от задачи.
...
Рейтинг: 0 / 0
Async servlet db connection
    #38626828
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторЯ отвергаю восторги по поводу их появления.
Нет, не пробовал и не собираюсь.


напоминает историческую фразу
"...не читал, но осуждаю..."
:)
...
Рейтинг: 0 / 0
Async servlet db connection
    #38626830
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадянапоминает историческую фразу
"...не читал, но осуждаю...":)Как раз читал. Именно поэтому отвергаю восторги.
...
Рейтинг: 0 / 0
Async servlet db connection
    #38626852
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяws "идет поверх" http, поэтому отвергать http просто неразумно.
вот мы и пришли от Восторгов к конкретики Проекта).
Есть простое слово - "оверхед"
...
Рейтинг: 0 / 0
Async servlet db connection
    #38626854
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123Есть простое слово - "оверхед"websockets не совсем over. Используется upgrade-механизм, что может кардинально менять поток данных.
Другое дело, что в реальной жизни нет (принципиальной) разницы - пятьдесят байт в пакете или пятьсот.
...
Рейтинг: 0 / 0
Async servlet db connection
    #38626913
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторвот мы и пришли от Восторгов к конкретики Проекта).

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

авторКак раз читал. Именно поэтому отвергаю восторги.
не знаете историю....
...
Рейтинг: 0 / 0
Async servlet db connection
    #38633137
Atum1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
спасибо за мнения и дискуссию - было очень интересно почитать .

По поводу описания задачи : поясню - под термином "асинхронный чат" - я имел ввиду паттерн - который часто приводят как пример при работе с асинхронными сервлетами.

Сама задача формулируется просто : пользователь авторизуется и может просматривать сводки новостей, информацию которую обновляет сервер - никаких post запросов от клиента нет.

в такой схеме идеально подходит wss , но из за консерватизма -думаю будет создано решение по "классической схеме", как альтернатива - параллельно сделаем и wss - чтобы была возможность сравнить оба решения .
...
Рейтинг: 0 / 0
Async servlet db connection
    #38633540
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Atum1пользователь авторизуется и может просматривать сводки новостей, информацию которую обновляет сервер - никаких post запросов от клиента нет.
осталось получить от тебя ссылку на подобный сайт.
Т.к. lenta_ru и т.д. и т.п. без запроса от пользователя инфу не шлют.
Если это "бегущая строка новостей", то сервлет тут причём....обычный AJAX подойдёт.
imho
...
Рейтинг: 0 / 0
Async servlet db connection
    #38633556
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяи впервом проекте (когда ws ещё только появились) у меня используется два протокола jax-ws и ws
ws "идет поверх" http, поэтому отвергать http просто неразумно.

- jax-ws это не протокол.
- websocket и web service не одно и то же. При чем тут JAX-WS?
- websocket не "идет поверх" HTTP ( http://en.wikipedia.org/wiki/WebSocket)
...
Рейтинг: 0 / 0
Async servlet db connection
    #38633690
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
автор jax-ws это не протокол.
- websocket и web service не одно и то же. При чем тут JAX-WS?
- websocket не "идет поверх" HTTP ( http://en.wikipedia.org/wiki/WebSocket)

полностью согласен
это всё объянение на пальцах....
JAX-WS я использовал в начале, когда ws ещё не было и в принципе, очень даже подходило
и по большому счету очень походит на ws, за исключением, что логика "запрос-ответ"
...
Рейтинг: 0 / 0
Async servlet db connection
    #38633692
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
насчет "поверх ..."
http://ru.wikipedia.org/wiki/WebSocket
...
Рейтинг: 0 / 0
Async servlet db connection
    #38633698
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Такое ощущение, что или никто никого не читает или две противоположные позиции обосновываются статьёй и её переводом
...
Рейтинг: 0 / 0
Async servlet db connection
    #38633701
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
тут популярное описание http://learn.javascript.ru/websockets
я не пытаюсь что-то обосновывать, просто хочу найти тех (привлечь) , чтоб лучше узнать про ws
одна голова хорошо, а несколько лучше :)
...
Рейтинг: 0 / 0
Async servlet db connection
    #38633739
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
"Одна голова хорошо, а две - уродство" (ц) ФИДО.
Я свою позицию озвучил - web-сокеты, при наличии клиентской поддержки, позволяют упростить JS веб-клиентов, но не содержат ничего, что невозможно реализовать в рамках чистого HTTP.
В частности, оперативное обновление данных делается в рамках чистого HTTP и без особых проблем.
...
Рейтинг: 0 / 0
Async servlet db connection
    #38633759
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. Sidorov"Одна голова хорошо, а две - уродство" (ц) ФИДО.
Я свою позицию озвучил - web-сокеты, при наличии клиентской поддержки, позволяют упростить JS веб-клиентов, но не содержат ничего, что невозможно реализовать в рамках чистого HTTP.
В частности, оперативное обновление данных делается в рамках чистого HTTP и без особых проблем.
Не спорю, но. С помощью ws можно в браузерах сделать больше и проще
...
Рейтинг: 0 / 0
Async servlet db connection
    #38633772
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяС помощью ws можно в браузерах сделать больше и прощеНаправление всё равно тупиковое: разный уровень поддержки и разные ошибки реализации одной и той же технологии, в общем-то, ставит крест на идее "браузер - универсальный веб-клиент".
...
Рейтинг: 0 / 0
Async servlet db connection
    #38633786
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторНаправление всё равно тупиковое: разный уровень поддержки и разные ошибки реализации одной и той же технологии, в общем-то, ставит крест на идее "браузер - универсальный веб-клиент".

время рассудит
...
Рейтинг: 0 / 0
Async servlet db connection
    #38634126
Atum1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
один вопрос по сокетам - правильно ли я понимаю что максимальное количество сокетов (и как следствие клиентов) :

2^16 = 65536(минус резервные порты) на сервере ?
...
Рейтинг: 0 / 0
Async servlet db connection
    #38634132
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Atum1один вопрос по сокетам - правильно ли я понимаюНет.
Сокет это пара "клиент-сервер".
Веб-серверы принимают сотни и тысячи одновременных запросов на один (слушающий) порт.
...
Рейтинг: 0 / 0
Async servlet db connection
    #38634163
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. SidorovСокет это пара "клиент-сервер".
Даже больше - сокет это технология "Клиент-сервер десктоп" в веб.
Нас же не заботит в десктопе (толстом клиенте) количество соединений с Ораклом.
...
Рейтинг: 0 / 0
Async servlet db connection
    #38634168
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. SidorovAtum1один вопрос по сокетам - правильно ли я понимаюНет.
Сокет это пара "клиент-сервер".
Веб-серверы принимают сотни и тысячи одновременных запросов на один (слушающий) порт.

это с одного ip можно иметь 6хххх соединений
...
Рейтинг: 0 / 0
Async servlet db connection
    #38634189
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123Даже больше - сокет это технология "Клиент-сервер десктоп" в вебРечь о беркли-сокетах IP-стека, а вовсе не о том, что вы подумали :)
...
Рейтинг: 0 / 0
Async servlet db connection
    #38634204
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. Sidorov,
если в курсе что я подумал))), расскажи - нафига ему "максимум" соединений? Боится не хватит?
...
Рейтинг: 0 / 0
Async servlet db connection
    #38634233
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123нафига ему "максимум" соединений? Боится не хватит?"Коровий хвост растёт вниз. Я не знаю, почему это так, я просто констатирую факт".
Спросите у вопрошавшего, в смысле
...
Рейтинг: 0 / 0
Async servlet db connection
    #38634258
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. SidorovPetro123нафига ему "максимум" соединений? Боится не хватит?"Коровий хвост растёт вниз. Я не знаю, почему это так, я просто констатирую факт".
Спросите у вопрошавшего, в смысле
))) Какой ты скушный) - просто факт, чтo растёт вниз LOL
...
Рейтинг: 0 / 0
Async servlet db connection
    #38634587
Atum1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяBasil A. Sidorovпропущено...
Нет.
Сокет это пара "клиент-сервер".
Веб-серверы принимают сотни и тысячи одновременных запросов на один (слушающий) порт.

это с одного ip можно иметь 6хххх соединений

ну сотни и 1000 соединений это как раз и есть 2^16 :)
в java как раз и есть понятие сокет - где соке это ip адрес и порт.

в websocket - сохраняется такой же порядок?

к примеру - у нас сервер - на websocket как описано ваше - у него есть

( http://findevelop.blogspot.de/2013/02/websocket-tomcat-7.html)

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
public class WsConnection extends MessageInbound {

 public static ArrayBlockingQueue<WsOutbound> connections = new ArrayBlockingQueue<WsOutbound>();

 private WsOutbound outbound;

@Override
    protected void onTextMessage(CharBuffer charBuffer) throws IOException {
        broadcast(charBuffer.toString());
    }
 
    @Override
    protected void onOpen(WsOutbound outbound) {
        this.outbound = outbound;
        connections.add(outbound);
    }
 
    @Override
    protected void onClose(int status) {
        connections.remove(this.outbound);
    }
 
    private void broadcast(String message) {
        for (WsOutbound connection : connections) {
            try {
                CharBuffer buffer = CharBuffer.wrap(message);
                connection.writeTextMessage(buffer);
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }
}



т.е. этот серверный код может держать любое количество клиентов ?


т.е такое соединение не накладывает ограничений на сервер?

у сервера будет один порт - по которому он будет принимать данные от всех клиентов?

так?

как тогда он понимает от кого что пришло и кому что отправить итд ?
...
Рейтинг: 0 / 0
Async servlet db connection
    #38634643
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Atum1,
разве про вебсокеты тема?
Если да, то реализации вебсокет сервера есть разные.
Возьми:
jetty-websocket-8.0.1.v20110908.jar.
...
Рейтинг: 0 / 0
Async servlet db connection
    #38634676
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
мне нравится https://github.com/TooTallNate/Java-WebSocket
есть пример и сервера и клиента на java, и реализация клиента на флэш(для браузеров).
websocket = ip+порт
я с одной страницы делал несколько подключений, но это лишнее
можно открывать несколько вкладок, на каждой своё подключение
можно одно подключение на основной вкладке(постоянной), а в остальные вносить данные с этого подключения через localstorage
...
Рейтинг: 0 / 0
Async servlet db connection
    #38634758
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Atum1в websocket - сохраняется такой же порядок?Работая с web-сокетами абстрагируйтесь от TCP - это всё уже реализовано.
Вы просто пуляете сообщениями на уже установленном TCP-соединении.

P.S. Мдя ... Сколько лет фразе по чтение газет, а до сих пор актуально.
...
Рейтинг: 0 / 0
Async servlet db connection
    #38634774
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторРаботая с web-сокетами абстрагируйтесь от TCP - это всё уже реализовано.
Вы просто пуляете сообщениями на уже установленном TCP-соединении.

очень, очень лаконично и очень, очень точно.авторпуляете сообщениями
я б добавил в любом направлении
...
Рейтинг: 0 / 0
54 сообщений из 54, показаны все 3 страниц
Форумы / Java [игнор отключен] [закрыт для гостей] / Async servlet db connection
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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