
Nikolay
28.09.2017
14:53:49
я потому и говорю, в общем случае такие задачи проще решать на поллинге
на вебсокете можно теоретически сделать, но будет геморройно ОЧЕНЬ

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

Nikolay
28.09.2017
14:54:52

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
Ок, почитаю в сети .
:)

Maxim robox
28.09.2017
15:11:39

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

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

Maxim robox
28.09.2017
15:14:30

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
я как-то с подозрением отношусь, когда пытаются 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. И был модуль для торнады для него

Nikolay
28.09.2017
15:27:53
ибо зачем серверу держать еще по коннекту на каждого клиента?

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

in favor
28.09.2017
15:29:13

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
а хотя нет, через пайплайнинг можно просто несколько запросов отправить, по идее

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

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

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

in favor
28.09.2017
15:38:18

Aragaer
28.09.2017
15:38:25

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
спасибо

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

in favor
28.09.2017
15:39:14

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

Roman
28.09.2017
15:41:18

Musa
28.09.2017
15:41:28

Maxim robox
28.09.2017
15:41:38

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