powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / JavaScript, быстрое сетевое взаимодействие.
25 сообщений из 32, страница 1 из 2
JavaScript, быстрое сетевое взаимодействие.
    #38487609
phasenoisepskcodedcompression
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Comet не предлагать, ибо это либа, а хочется разобраться в основах. WebSockets тоже не предлагать, ибо Opera и FireFox решили его выпилить (может уже обратно запилили) по причине какой-то там небезопасности (неважно почему, главное что сволочи выпиливают). Raw Sockets только в chrome экспериментальные есть.

Хочется непрерывным потоком получать события с сервера, частота событий - 20 в секунду, например, небольшие 128-байтные json-куски, например.

XMLHttpRequest как для этого использовать не понимаю. Если послать им запрос, то он установит коннект и отправит HTTP-запрос, по факту ответа на который дёрнет твой асинхронный метод. Всё. Если от сервера прилетит что-то ещё, то это будет послано в топку скорее всего: ответ на запрос-то уже пришёл. А если в ответ слать не валидные HTTP, а какие-то json-куски, то javascript не поймёт юмора.

Чё делать-то?
...
Рейтинг: 0 / 0
JavaScript, быстрое сетевое взаимодействие.
    #38487633
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
phasenoisepskcodedcompressionЧё делать-то?
Кроме ажакса и сокетов пока ничего нет...
...
Рейтинг: 0 / 0
JavaScript, быстрое сетевое взаимодействие.
    #38487641
phasenoisepskcodedcompression
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
krvsaphasenoisepskcodedcompressionЧё делать-то?
Кроме ажакса и сокетов пока ничего нет...
А Comet как реализован? Там же мой вопрос реализован вроде.
...
Рейтинг: 0 / 0
JavaScript, быстрое сетевое взаимодействие.
    #38487654
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Аякс != XMLHttpRequest.
Аякс бывает разный... .
...
Рейтинг: 0 / 0
JavaScript, быстрое сетевое взаимодействие.
    #38487655
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
phasenoisepskcodedcompressionА Comet как реализован? Там же мой вопрос реализован вроде.
Если твой серверный язык позволяет его использовать - используй!
http://javascript.ru/AJAX/comet
...
Рейтинг: 0 / 0
JavaScript, быстрое сетевое взаимодействие.
    #38487660
Фотография Яростный Меч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
phasenoisepskcodedcompressionWebSockets тоже не предлагать, ибо Opera и FireFox решили его выпилитьу тебя сильно устаревшие данные.
...
Рейтинг: 0 / 0
JavaScript, быстрое сетевое взаимодействие.
    #38487682
phasenoisepskcodedcompression
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
krvsaphasenoisepskcodedcompressionА Comet как реализован? Там же мой вопрос реализован вроде.
Если твой серверный язык позволяет его использовать - используй!
http://javascript.ru/AJAX/comet
Я ж просил его не советовать.
...
Рейтинг: 0 / 0
JavaScript, быстрое сетевое взаимодействие.
    #38487684
phasenoisepskcodedcompression
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Яростный МечphasenoisepskcodedcompressionWebSockets тоже не предлагать, ибо Opera и FireFox решили его выпилитьу тебя сильно устаревшие данные.
Тут написано http://ru.wikipedia.org/wiki/WebSocket (паследний обзадс стотьи). Уже зопелиле абрадно?
...
Рейтинг: 0 / 0
JavaScript, быстрое сетевое взаимодействие.
    #38487702
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
phasenoisepskcodedcompressionЯ ж просил его не советовать.
Не используй...
...
Рейтинг: 0 / 0
JavaScript, быстрое сетевое взаимодействие.
    #38487712
Фотография Яростный Меч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
phasenoisepskcodedcompressionЯростный Мечпропущено...
у тебя сильно устаревшие данные.
Тут написано http://ru.wikipedia.org/wiki/WebSocket (паследний обзадс стотьи). Уже зопелиле абрадно?дык нифига себе, 2010 год :)

http://html5test.com/compare/feature/communication-websocket.basic/communication-websocket.binary.html - тут вся правда тм
...
Рейтинг: 0 / 0
JavaScript, быстрое сетевое взаимодействие.
    #38488011
ни на что не претендуя ;)
http://www.rabbitmq.com/download.html - здесь качаешь MQ сервер
https://www.rabbitmq.com/stomp.html - устанавливаешь с поддержкой stomp
http://jmesnil.net/stomp-websocket/doc/ - здесь забираешь stomp.min.js
https://github.com/sockjs/sockjs-client - тут SockJS-client
настраиваешь Rabbit и на странице примерно! так
Код: sql
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.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
<script src="http://cdn.sockjs.org/sockjs-0.3.min.js"></script>
    <script src="/scripts/stomp.min.js"></script>
    <script>
        window.onload = function() {
                
            var url     = 'http://127.0.0.1:15674/stomp',
                queue   = '/topic/TEST',
                stomp   = false,
                subs    = false;

            var onConnect = function() {                    
                    subs = stomp.subscribe(queue, onMessage, {});
                    console.log('You are connected!');                    
                },
                onError = function() {
                    console.log('You have an error!');
                },
                onDisconnect = function() {
                    if(subs) {subs.unsubscribe();}                    
                    console.log('See you next time!');
                },
                onMessage = function(msg) {    
                    if(msg.body) {
                        console.log('Got message with body: ' + msg.body)
                    } else {
                        console.log('Got empty message');
                    }
                };

            var btnConnect      = document.getElementById('connect'),
                btnDisconnect   = document.getElementById('disconnect'),
                btnSend         = document.getElementById('send');;
           
            btnConnect.onclick = function() {
                stomp = Stomp.over(new SockJS(url));
                //stomp.debug = false;                
                stomp.connect('guest', 'guest', onConnect, onError, '/');                
            };
            
            btnDisconnect.onclick = function() {
                if(stomp) {stomp.disconnect(onDisconnect);}
            };
            
            btnSend.onclick = function() {
                var msg = encodeURIComponent('Привет');
                if(stomp) {stomp.send(queue, {}, msg);}
            };
            
        };
    </script>


ну и почитать, в зависимости от твоего серверного яп, о его взаимодействии со STOMP!
...
Рейтинг: 0 / 0
JavaScript, быстрое сетевое взаимодействие.
    #38488146
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
phasenoisepskcodedcompressionЯростный Мечпропущено...
у тебя сильно устаревшие данные.
Тут написано http://ru.wikipedia.org/wiki/WebSocket (паследний обзадс стотьи). Уже зопелиле абрадно?

даже IE10+ его использует

если откажешься от WebSocket сильно отстанешь....
tomcat предлагает демки с его использованием

я использую и не жалуюсь
...
Рейтинг: 0 / 0
JavaScript, быстрое сетевое взаимодействие.
    #38488147
Фотография asws
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
phasenoisepskcodedcompression,

Что-то здесь не так с постановкой задачи.
Странное требование - обработка в реальном времени - 20 раз в секунду браузером , да ещё через сеть :))
Ключевую проблему выделил жирным :))

Раз сервер собирается сам отправлять запрос браузеру, значит получатель уже известен,
значит для этого получателя можно результаты событий накапливать в серверный буфер (в файл/БД/и т.д.).

С клиента запрашивать периодически в нужное/удобное для браузера время сразу все 20/100/1000/... результатов.

Вопрос на здравый смысл - зачем гонять сеть 20 раз в секунду, если можно, например, это делать раз в 20 секунд?
...
Рейтинг: 0 / 0
JavaScript, быстрое сетевое взаимодействие.
    #38488219
авторС клиента запрашивать периодически в нужное/удобное для браузера время сразу все 20/100/1000/... результатов.
хм... ну какой смысл мне пытаться оформить билет в кинотеатр, если через двадцать секунд я узнаю, что эти билеты уже кто-то оформляет (или их ВСЕ уже выкупили)?
...
Рейтинг: 0 / 0
JavaScript, быстрое сетевое взаимодействие.
    #38488224
Фотография asws
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
как-то так...авторС клиента запрашивать периодически в нужное/удобное для браузера время сразу все 20/100/1000/... результатов.
хм... ну какой смысл мне пытаться оформить билет в кинотеатр, если через двадцать секунд я узнаю, что эти билеты уже кто-то оформляет (или их ВСЕ уже выкупили)?делать из браузера аналог биржевого бота - это кретинизм.
...
Рейтинг: 0 / 0
JavaScript, быстрое сетевое взаимодействие.
    #38488267
Почему бы и нет, если технология позволяет!?
...
Рейтинг: 0 / 0
JavaScript, быстрое сетевое взаимодействие.
    #38488269
Фотография asws
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
как-то так...Почему бы и нет, если технология позволяет!?
это да, я уже поздно узнал из другого топика, что это нужно для опроса сервера танчиков...

по сабжу, у них должно быть api,
а если предполагаемые действия не укладываются в разрешённые, то, имхо, не взлетит,
потому что, чтобы заставить браузер исполнить поизвольный чужой код,
нужно контролировать сервер или быть ацким спецом...
...
Рейтинг: 0 / 0
JavaScript, быстрое сетевое взаимодействие.
    #38488272
Фотография asws
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ага, ещё из одного топика Павла узнал, что и сервер свой, то-есть разрабатывает игру сам.
Полезное дело для саморазвития, но такая задача всё-таки не для браузера, это однозначно.
...
Рейтинг: 0 / 0
JavaScript, быстрое сетевое взаимодействие.
    #38488296
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторС клиента запрашивать периодически в нужное/удобное для браузера время сразу все 20/100/1000/... результатов.

Вопрос на здравый смысл - зачем гонять сеть 20 раз в секунду, если можно, например, это делать раз в 20 секунд?


зачем по сети гонять запросы, если можно отправить с сервера информацию сразу после изменения её на сервере?
если отказаться от json и прочим xml в пользу split (конечно это возможно не всегда) то кпд канала возрастает, websocket очень экономит трафик.
...
Рейтинг: 0 / 0
JavaScript, быстрое сетевое взаимодействие.
    #38488317
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
как-то так...оформить билет в кинотеатр
Для таких целей нужно использовать вебсокет?
...
Рейтинг: 0 / 0
JavaScript, быстрое сетевое взаимодействие.
    #38488319
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
как-то так...Почему бы и нет, если технология позволяет!?
no comment...
...
Рейтинг: 0 / 0
JavaScript, быстрое сетевое взаимодействие.
    #38488331
авторДля таких целей нужно использовать вебсокет?
15235080 - серьёзно?
...
Рейтинг: 0 / 0
JavaScript, быстрое сетевое взаимодействие.
    #38488354
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
как-то так... , оформить билеты в кинотеатр можно простым запросом на сервер...
...
Рейтинг: 0 / 0
JavaScript, быстрое сетевое взаимодействие.
    #38488363
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
krvsaкак-то так...оформить билет в кинотеатр
Для таких целей нужно использовать вебсокет?

а почему нет?

можно видеть в реальном времени заполнение/занятие мест в зале.
намного проще чем с прочими технологиями.
...
Рейтинг: 0 / 0
JavaScript, быстрое сетевое взаимодействие.
    #38488378
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяа почему нет?
Даже не знаю, что и ответить...

вадяможно видеть в реальном времени заполнение/занятие мест в зале.
Это ооочень важно для меня, как клиента.
...
Рейтинг: 0 / 0
25 сообщений из 32, страница 1 из 2
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / JavaScript, быстрое сетевое взаимодействие.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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