Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Обещанный пример по websocket / 25 сообщений из 835, страница 1 из 34
31.08.2017, 11:12
    #39513256
вадя
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обещанный пример по websocket
я использую эту библиотеку http://tootallnate.github.io/Java-WebSocket/
немного её именив, т.е. сам websocket у меня содержит дополнительные поля Name и Session.
у всех клиентов (браузеров) есть такой код 20751483
при отработке такоко кода на клиенте
Код: javascript
1.
con.send('yyy13|7777');


на сервере будет вызван метод
Код: java
1.
public void onMessage(WebSocket webSocket, String data) 


который распарсив строку data, с помощью рефлексии вызовет метом yyy13 и передаст ему данные 777
метод yyy13
Код: 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.
34.
35.
36.
37.
38.
39.
public void yyy13(String param) {
        ResultSet rs;
        StringBuilder sb = new StringBuilder();
        try (Connection con_ = DriverManager.getConnection(Singleton.getBASE(), Singleton.getBASE_LOGIN(), Singleton.getBase_password());
                CallableStatement proc_ = con_.prepareCall("{call yyy13(" + param + ")}");) {

            proc_.execute();
            rs = proc_.getResultSet();
            sb.append("yyy13|<tbody>");
            while (rs.next()) {
                sb.append("<tr ")
                        .append("data-id_inh='").append(rs.getString("id_inhibitor")).append("' ")
                        .append("data-id_part_inh='").append(rs.getString("id_inhibitor")).append("' ")
                        .append("data-weight='").append(rs.getString("weight")).append("' >")
                        .append("<td>").append(rs.getString("part_inhibitor")).append("</td>")
                        .append("<td>").append(rs.getString("date_inhibitor")).append("</td>")
                        .append("<td>").append(rs.getString("brand")).append("</td>")
                        .append("</tr>");
            }
            sb.append("</tbody>");
            webSocket_.send(sb.toString());
            proc_.getMoreResults();
            rs = proc_.getResultSet();
            rs.next();
            webSocket_.send("yyy13_1|" + rs.getString("id"));

            Collection<WebSocket> conn1 = conn;
            synchronized (conn1) {
                for (WebSocket c : conn1) {
                    if (c.getName().equals("operator")) {
                        c.send("aaa01| юзер " + webSocket_.getName() + "  запросил " + param);
                    }
                }
            }

        } catch (SQLException ex) {
            ex.printStackTrace();
        }
    }



По тз возможно несколько первоначальных условий, реализация каждого из них будет отличаться.
приведён примитивный случай , когда необходимо вывести информацию только одному юзеру под логином "operator" поэтому используется простой for.
если любой юзер отправит запрос
Код: javascript
1.
con.send('yyy13|7777');


то сервер вернёт ему два сообщения, которые будут обработыны двумя функциями
Код: javascript
1.
2.
3.
4.
5.
6.
function yyy13(p){
     document.getElementById('dddd').innerHtml=p;
}
function yyy13_1(p){
     document.getElementById('fffff').innerHtml=p;
}



юзера operator на его странице xxxx.jsp , будет вызвана
Код: javascript
1.
2.
3.
function aaa01(p){
     document.getElementById('vvv').innerHtml=p;
}

которая , к примеру, в див выведет значение p
если у юзера оператор открыта страница yyy.jsp на котороё нет функции aaa01, то отработает catch
...
Рейтинг: 0 / 0
31.08.2017, 11:30
    #39513274
вадя
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обещанный пример по websocket
идея раделения предаваемых данных на "команду" и "данные" взята тут https://habrahabr.ru/post/128380/
...
Рейтинг: 0 / 0
31.08.2017, 11:33
    #39513280
hVostt
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обещанный пример по websocket
вадя,

Не думал, что в Java настолько убогая работа с вебсокетом...

Код: javascript
1.
con.send('yyy13|7777');



Вызов метода? Серьёзно?? Передача данных в String? Ну и адское убожество.

SignalR:

Код: javascript
1.
2.
3.
server.method_1(3.1415, 'hello', new Date());

server.method_2('some string', { a: 1, b: 2 });



Все данные передаются типизировано, привязка к серверным функциям осуществляется автоматически.

Я-то думал, ты работаешь с вебсокетом с человеческим лицом, а у тебя... адский трешак до седых волос.
...
Рейтинг: 0 / 0
31.08.2017, 11:34
    #39513286
hVostt
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обещанный пример по websocket
И ещё... использовать WebSocket для передачи на клиента кусков HTML, это что-то новенькое
...
Рейтинг: 0 / 0
31.08.2017, 11:41
    #39513291
вадя
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обещанный пример по websocket
hVosttНе думал, что в Java настолько убогая работа с вебсокетом...ты бы не позорился , знаток всего. называть кусок из javascript кодом java...
ты даже не представляешь что такое websocket.
hVosttиспользовать WebSocket для передачи на клиента кусков HTML, это что-то новенькоену а передать json не трешак?
...
Рейтинг: 0 / 0
31.08.2017, 11:45
    #39513299
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обещанный пример по websocket
вадя,

а где то место в коде, где определяется, что в базе появился новый заказ и надо оповестить оператора?
...
Рейтинг: 0 / 0
31.08.2017, 11:49
    #39513309
вадя
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обещанный пример по websocket
skyANAа где то место в коде, где определяется, что в базе появился новый заказ и надо оповестить оператора?если "команда" ууу13 передаёт данные, для заказа, а хранимка yyy13 фиксирует этот заказ в базе , то отправка юзеру с логином "operator" и есть оповещение.
...
Рейтинг: 0 / 0
31.08.2017, 11:52
    #39513317
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обещанный пример по websocket
вадяskyANAа где то место в коде, где определяется, что в базе появился новый заказ и надо оповестить оператора?если "команда" ууу13 передаёт данные, для заказа, а хранимка yyy13 фиксирует этот заказ в базе , то отправка юзеру с логином "operator" и есть оповещение.
Хм, то есть если сам магазин развёрнут на одном сервере(ах), а админка для оператора на другом, то не работает, верно?
...
Рейтинг: 0 / 0
31.08.2017, 12:05
    #39513330
вадя
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обещанный пример по websocket
skyANAХм, то есть если сам магазин развёрнут на одном сервере(ах), а админка для оператора на другом, то не работает, верно?что такое админка для оператора?
и что значит сам магазин?
админка - это часть того же магазина, такая же страница как и все страницы магазина. и находится на там же где и весь магазин. только доступ к админке по логину/паролю и прочей авторизации(при необходимости)
...
Рейтинг: 0 / 0
31.08.2017, 12:15
    #39513345
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обещанный пример по websocket
вадяskyANAХм, то есть если сам магазин развёрнут на одном сервере(ах), а админка для оператора на другом, то не работает, верно?что такое админка для оператора?
и что значит сам магазин?
админка - это часть того же магазина, такая же страница как и все страницы магазина. и находится на там же где и весь магазин. только доступ к админке по логину/паролю и прочей авторизации(при необходимости)
В крупных системах всё не так. А мы же о крупной системе, верно?
...
Рейтинг: 0 / 0
31.08.2017, 12:22
    #39513353
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обещанный пример по websocket
И подход, когда в одном методе и работа с БД, и формирование HTML, и оповещение, мне совершенно не нравится.
...
Рейтинг: 0 / 0
31.08.2017, 12:48
    #39513374
вадя
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обещанный пример по websocket
skyANAВ крупных системах всё не так. А мы же о крупной системе, верно?приведи пример?
что значит не так?
ты так и не дал определение твоим терминам
админка для оператора
сам магазин

skyANAИ подход, когда в одном методе и работа с БД, и формирование HTML, и оповещение, мне совершенно не нравится.это почему не нравится? тебе надо чтоб была прокладка в виде хибера?
как ты разделишь полученные данные из базы и формирование по ним страницу?
Вам шашечки или ехать?
...
Рейтинг: 0 / 0
31.08.2017, 12:54
    #39513380
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обещанный пример по websocket
вадяskyANAВ крупных системах всё не так. А мы же о крупной системе, верно?приведи пример?
что значит не так?amazon, ozon
вадяты так и не дал определение твоим терминам
админка для оператора
сам магазинс точки зрения эксплуатации, или DevOps, это принято называть сервисами
а проще говоря - это два разных приложения (сайта), развёрнутые на разных серверах
...
Рейтинг: 0 / 0
31.08.2017, 12:55
    #39513383
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обещанный пример по websocket
вадяskyANAИ подход, когда в одном методе и работа с БД, и формирование HTML, и оповещение, мне совершенно не нравится.как ты разделишь полученные данные из базы и формирование по ним страницу?Как, как, для начала тупо по слоям
...
Рейтинг: 0 / 0
31.08.2017, 13:00
    #39513387
hVostt
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обещанный пример по websocket
вадяты бы не позорился , знаток всего. называть кусок из javascript кодом java...
ты даже не представляешь что такое websocket.

Я не называл этот кусок Java кодом, ты упоролся чтоле? Я про то как ты в Java работаешь с вебсокет:

Код: java
1.
public void onMessage(WebSocket webSocket, String data) 



Это же полнейшее ушлёпство. А про тот код, это как с этим ушлёпством работаешь. Два говнокода с обоих сторон.

вадяну а передать json не трешак?

Это структурированные типизированные данные. Их можно валидировать по типу модели и по схеме. А разбирать строку это какой-то прошлый век. Что интересно, вадя вещающий про новейшие технологии, и который работает с ними как в допотопном каменном веке. Это очень смешно, правда
...
Рейтинг: 0 / 0
31.08.2017, 13:04
    #39513390
вадя
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обещанный пример по websocket
skyANAс точки зрения эксплуатации, или DevOps, это принято называть сервисами
а проще говоря - это два разных приложения (сайта), развёрнутые на разных сервераха смысл?
и ты уверен что именно так там устроено? скорее всего та на отдельном сервере база развёрнута.
skyANAс точки зрения эксплуатации, или DevOps, это принято называть сервисамиа на кой ляд это сдалось? для увеличения кода?
skyANAа проще говоря - это два разных приложения (сайта), развёрнутые на разных серверахесть вариант вырывать зубы через жопу(если грубо) - еслиб я получал за количество строк- я б возможно и начал грордить...
смысл городить два сайта/сервера ? уменьтшение нагрузки? ws и так уменьшает.
кроме как дополнительный геморой - нет ничего.
даже у amazon, ozon количество операторов доли процента от их клиентов, а операторы для сайта - это теже клиенты, и выносит их страницы на доп сервер - это стрелять себе в ногу...
...
Рейтинг: 0 / 0
31.08.2017, 13:11
    #39513393
вадя
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обещанный пример по websocket
авторавторpublic void onMessage(WebSocket webSocket, String data)
ну б...ь
ты на кого начал наезжать? на apache? на гугл?
ты ваще не в теме, я дал ссылку где есть эта либа, не ленись - посмотри код, не мтрой из себя полного идиота, ознакомься с темой прежде чем дурость писать. ведь совсем не понимаешь о чём речь . а туда же писать.

hVosttЭто структурированные типизированные данные. Их можно валидировать по типу модели и по схеме. А разбирать строку это какой-то прошлый век. Что интересно, вадя вещающий про новейшие технологии, и который работает с ними как в допотопном каменном веке. Это очень смешно, правдаупоротый бездарь молчи.
...
Рейтинг: 0 / 0
31.08.2017, 13:11
    #39513394
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обещанный пример по websocket
вадя,

понятно всё с тобой, опыта построения высоконагруженных систем нет, однако мнение имеешь, причём весьма глупое
дальнейшая дискуссия бессмысленна
...
Рейтинг: 0 / 0
31.08.2017, 13:11
    #39513396
hVostt
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обещанный пример по websocket
вадяа на кой ляд это сдалось? для увеличения кода?

Прослезился

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

Знания уровня чукчи (тюленя-оленя), который рассуждает, на кой ляд сдалась математика, детектед


вадясмысл городить два сайта/сервера ? уменьтшение нагрузки? ws и так уменьшает.

ЛОЛЛ ))) ЭЭээххх, выкидывайте свои серваки, и переходите на WS
...
Рейтинг: 0 / 0
31.08.2017, 13:13
    #39513398
вадя
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обещанный пример по websocket
skyANAпонятно всё с тобой, опыта построения высоконагруженных систем нет, однако мнение имеешь, причём весьма глупое
дальнейшая дискуссия бессмысленнаты не привел ни одного путёвого возражния , жду реальных аргументов.
...
Рейтинг: 0 / 0
31.08.2017, 13:13
    #39513399
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обещанный пример по websocket
вадяи ты уверен что именно так там устроено?
Уверен. Про Amazon я читал, а в Ozon коллега работал до недавнего времени.
...
Рейтинг: 0 / 0
31.08.2017, 13:14
    #39513400
hVostt
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обещанный пример по websocket
вадяну б...ь
ты на кого начал наезжать? на apache? на гугл?
ты ваще не в теме, я дал ссылку где есть эта либа, не ленись - посмотри код, не мтрой из себя полного идиота, ознакомься с темой прежде чем дурость писать. ведь совсем не понимаешь о чём речь . а туда же писать.

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

В общем, очередное дно тупости тобой успешно пробито. Поздравляю!
...
Рейтинг: 0 / 0
31.08.2017, 13:15
    #39513403
вадя
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обещанный пример по websocket
skyANAвадя,

понятно всё с тобой, опыта построения высоконагруженных систем нет, однако мнение имеешь, причём весьма глупое
дальнейшая дискуссия бессмысленначе мой код не устроит для высоко нагруженной системы?
тем что мало кода? тем что часть отдана на субд, которую можно вымести на отдельное железо?
...
Рейтинг: 0 / 0
31.08.2017, 13:15
    #39513404
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обещанный пример по websocket
вадяskyANAпонятно всё с тобой, опыта построения высоконагруженных систем нет, однако мнение имеешь, причём весьма глупое
дальнейшая дискуссия бессмысленнаты не привел ни одного путёвого возражния , жду реальных аргументов.
Если ты не в курсе, что монолит - это давно моветон, значит ты в танке и дальнейшая дискуссия не имеет смысла.
Сиди в своём танке и думай себе, что хочешь.

А то, что твоё решение не подходит для настоящей нагруженной системы - это факт.
...
Рейтинг: 0 / 0
31.08.2017, 13:16
    #39513406
вадя
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обещанный пример по websocket
hVosttЯ констатирую очевидный факт, ты даже технологию, которую активно пиаришь, не можешь правильно использовать, понятия не имеешь для чего она, и по сути копаешь микроскопом картошку.это только подтверждают тво не знание ws.
...
Рейтинг: 0 / 0
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Обещанный пример по websocket / 25 сообщений из 835, страница 1 из 34
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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