@ru_python

Страница 3846 из 9768
Nikolay
28.09.2017
14:53:49
я потому и говорю, в общем случае такие задачи проще решать на поллинге

на вебсокете можно теоретически сделать, но будет геморройно ОЧЕНЬ

Dmitry
28.09.2017
14:54:34
Знаемое понятие полинга...

Google
Nikolay
28.09.2017
14:54:56
лайнус полинг

Dmitry
28.09.2017
14:55:29
лайнус полинг
Что я должен подумать прочитав это имя?

Nikolay
28.09.2017
14:55:39
Что я должен подумать прочитав это имя?
я просто смысл фразы выше не понял

Глеб
28.09.2017
14:56:00
что тут вообще происходит?

Dmitry
28.09.2017
14:56:12
Ок, почитаю в сети .

:)

Dmitry
28.09.2017
15:12:05
И все таки через веб сокет может одновременно идти поток данных от клиента к серверу и обратно?

Nikolay
28.09.2017
15:12:11
Но это костыльно.
с чего вдруг? это же проще в разы, снижает нагрузку на сервер и отлично работает

Maxim robox
28.09.2017
15:14:30
с чего вдруг? это же проще в разы, снижает нагрузку на сервер и отлично работает
https://github.com/centrifugal/centrifugo Я всё хочу вот это пощупать. От ребят из майл.ру. Только пока не было удобного случая.

Nikolay
28.09.2017
15:15:23
ну, на го-то да

Maxim robox
28.09.2017
15:15:46
Ну оно language-agnostic. Ну написано же, ну.

Кстати, оно раньше на питоне было. Потом всё переписали на го.

Google
Nikolay
28.09.2017
15:16:07
Ну оно language-agnostic. Ну написано же, ну.
ну так nginx тоже language-agnostic

я как-то с подозрением отношусь, когда пытаются nginx на го переписывать

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

например, когда чатик и надо сообщение одно быстро показывать всем

или когда интерфейс потипу гмыла, который постепенно с бэкенда подсасывает виджеты

причем для второго вебсокеты тоже будут не нужны, когда будет http pipelining

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

Maxim robox
28.09.2017
15:25:37
а использовать вебсокеты для того, чтобы гонять тяжелые файлы туда-обратно - это как-то фиг знает
Ну шорт поллинг в принципе уродский костыль. Лонг поллинг ещё куда ни шло. Но сама идея мне лично кажется костылём. Отсылать запрос и держать соединение, пока оно не отвалится по таймауту или пока не появится то, чем ответить. Понятное дело, что поллинг проще в реализации, чем вебсокеты и иногда оно будет уместнее.

@deluxoft ты его знаешь? :3

Nikolay
28.09.2017
15:26:32
Нет

Aragaer
28.09.2017
15:27:08
я брал socket.io или чот вроде этого, когда игрался с вебсокетами

или sock.io. И был модуль для торнады для него

Maxim robox
28.09.2017
15:28:29
А с лонг-поллингом типа не держит?

in favor
28.09.2017
15:29:13
или sock.io. И был модуль для торнады для него
рассказывай, как ты декоратор вешал на класс-хендлер в торнадо

Nikolay
28.09.2017
15:29:51
А с лонг-поллингом типа не держит?
а все браузеры сейчас умеют лонг уже? мне казалось, почти везде шорт обычный

Maxim robox
28.09.2017
15:30:21
Aragaer
28.09.2017
15:30:48
ща поищу

Google
Nikolay
28.09.2017
15:30:58
Все ли браузеры умеют слать запросы?
погоди, это ж не простой запрос

Maxim robox
28.09.2017
15:31:06
Nikolay
28.09.2017
15:31:06
это запрос без закрытия соединения

нет

Maxim robox
28.09.2017
15:31:22
Так запрос не закрывает сервер, а не браузер.

Nikolay
28.09.2017
15:31:24
раньше так далеко не каждый браузер умел

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

Maxim robox
28.09.2017
15:32:15
Ничего не может досылать, насколько мне известно.

Это просто для ожидания чего-нибудь от сервера.

Aragaer
28.09.2017
15:32:34
Вроде без декоратора даже

class AuthenticatedHandler(tornado.web.RequestHandler): """ How we authenticate when using tornado. """ def get_current_user(self): "Returns current user document" user_id = tornado.escape.to_unicode(self.get_secure_cookie('id')) try: return self.application.reception.check(user_id) except ValueError: return None

а дальше да, @tornado.web.authenticated на get в нужных классах

in favor
28.09.2017
15:33:44
это понятно, шо можно вешать декораторы на get

ты говорил, что можно на весь класс повесить

и отнаследоваться

я вчера пробовал, не получилось

Aragaer
28.09.2017
15:34:00
но лень?

ну я уже довольно плохо помню, я этот код писал 3 года назад. Я помню, что сделал некий общий AuthenticatedHandler и от него наследовался уже

Nikolay
28.09.2017
15:35:01
Это просто для ожидания чего-нибудь от сервера.
окей, тогда http pipelining, получается, это просто впиливание в стандарт подобия вебсокетов?

а хотя нет, через пайплайнинг можно просто несколько запросов отправить, по идее

Google
Aragaer
28.09.2017
15:35:23
на самом деле я от него унаследовал еще один, в котором уже определил get_template_path, get_login_url и прочее, а остальное уже от этого второго

Nikolay
28.09.2017
15:35:25
а вебсокеты - дуплекс

и это больше для пушей с сервера, а не наоборот

in favor
28.09.2017
15:36:10
ну я уже довольно плохо помню, я этот код писал 3 года назад. Я помню, что сделал некий общий AuthenticatedHandler и от него наследовался уже
ок, то есть твой хендлер просто внутри get проверял авторизацию, а наследники дёргали super ? ну так чем это отличается от тупого навешивания декораторов на каждый get наследника?

Admin
ERROR: S client not available

in favor
28.09.2017
15:36:26
Речь-то шла о том, как можно избавиться от повторяющегося кода: декораторов на пачке хендлеров

Aragaer
28.09.2017
15:36:46
одна строчка на каждый get это повторяющийся код?

in favor
28.09.2017
15:37:02
да, если хендлеров дофига

Tony
28.09.2017
15:37:11
пацаны

'[a-z]\.txt'

Aragaer
28.09.2017
15:37:21
нет, наследник внутри get ничего не проверял - декоратор сам все делает. Внутрь get попадаем только тогда, когда декоратор пропустил

Tony
28.09.2017
15:37:34
надо чтобы он смотрел не 1 символ a-z, а 2

Musa
28.09.2017
15:37:35
здаров народ, кто-нибудь устанавливал модуль Mechanize на 3.х или он только на 2.х?

Tony
28.09.2017
15:37:38
как сделать?

Maxim robox
28.09.2017
15:37:45
окей, тогда http pipelining, получается, это просто впиливание в стандарт подобия вебсокетов?
Честно говоря, даже не вникал в них до твоего упоминания. Почитал. Судя по описанию, для разработчика с ними вообще ничего делать не надо. Просто есть и работают. Что-то ускоряют там на медленных каналах. Могу ошибаться.

Tony
28.09.2017
15:37:49
не вовремя он)

in favor
28.09.2017
15:38:18
нет, наследник внутри get ничего не проверял - декоратор сам все делает. Внутрь get попадаем только тогда, когда декоратор пропустил
нуок. Значит меня сконфузил твой ответ. Я почему-то посчитал, что ты вешал декоратор на определение класса @qeq class qwa ... и наследовался от него, и у тебя была проверка на авторизацию

in favor
28.09.2017
15:38:42
Nikolay
28.09.2017
15:38:47
Честно говоря, даже не вникал в них до твоего упоминания. Почитал. Судя по описанию, для разработчика с ними вообще ничего делать не надо. Просто есть и работают. Что-то ускоряют там на медленных каналах. Могу ошибаться.
я так понял, тема в том, чтобы браузер не открывал соединение на закачку каждого отдельного файла статики с сервера, а все их слал через один коннект

Google
Aragaer
28.09.2017
15:38:52
да я сам точно не помнил деталей. Я помню, что одного только декоратора было недостаточно, надо было еще всякого полезного вокруг

Tony
28.09.2017
15:38:52
[a-z]{2}
ВОТ!

спасибо

Aragaer
28.09.2017
15:39:05
и вот это вот все полезное я убрал в общий класс-родитель

Aragaer
28.09.2017
15:40:08
я три года назад пытался клепать некоторое подобие игры, выложил его на хероку, а год назад какие-то боты туда начали тыкаться и оно перестало умещаться в бесплатный дино и я его остановил

Roman
28.09.2017
15:41:18
Musa
28.09.2017
15:41:28
здаров народ, кто-нибудь устанавливал модуль Mechanize на 3.х или он только на 2.х?
Which version of Python do I need? Python 2.4, 2.5, 2.6, or 2.7. Python 3 is not yet supported. Прочел фак

Nikolay
28.09.2017
15:41:38
есть обычные сокеты!
это спасает, да

Musa
28.09.2017
15:42:10
понятно, это для того чтобы вопрос не остался без ответа)

Roman
28.09.2017
15:42:26
а чем сокет от вебсокета отличается?

Nikolay
28.09.2017
15:43:03
а чем сокет от вебсокета отличается?
тем, что сокет - серверное понятие, а вебсокет - клиентское

Roman
28.09.2017
15:43:26
тем, что сокет - серверное понятие, а вебсокет - клиентское
т.е. по вебсокетам общаются между собой только два клиента?

Страница 3846 из 9768