@rudepython

Страница 19 из 1719
Andrey
07.07.2016
09:51:58
pgdays что ле?

Roman
07.07.2016
09:51:59
вот пример простейшего wsgi приложения - это синхронная функция, в которой нет места асинхронному вызову def simple_app(environ, start_response): start_response('200 OK', [('Content-type', 'text/plain')]) return [b"Hello world!\n"] в случае с asyncio - у тебя все io операции являются точками входа в асинхронные вызовы. Если у тебя в asyncio нет асинхронного вызова, то он тебе не нужен и ты его не используешь. а если есть, то о каком ответе сразу может идти речь? с другой стороны, тебе могут быть интересные гринлеты

H
07.07.2016
09:52:56
посоветуй что почитать на эту тему, чтобы обрести ясность

Roman
07.07.2016
09:53:30
про гринлеты я ничего сказать не могу, сам в этом не разбираюсь. по aiohttp читай доку aiohttp и смотри презентации светлова на тему aiohttp

Google
H
07.07.2016
09:53:35
я просто совсем не понимаю, как потом фронт получит твой хелоу ворлд

Roman
07.07.2016
09:53:50
с этим как раз всё просто

H
07.07.2016
09:54:07
он сразу получает 200 респонс, это ясно

Roman
07.07.2016
09:54:17
в случае с wsgi - да

в случае с aiohttp как пожелаешь

H
07.07.2016
09:55:04
ну вот с айо, как я дальше во фронте инфу получу?

Roman
07.07.2016
09:55:07
посмотри на всю эту асинхронность как на колбэки в javascript

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

на деле это всё замаскировано под async/await

в случае с aiohttp фронт получит ответ когда корутина вернут Response объект

* вернёт

H
07.07.2016
09:57:14
но я же должен сразу вернуть ответ 200

Roman
07.07.2016
09:58:04
а почему это сразу?

Google
Roman
07.07.2016
09:58:20
а если в ходе работы что-то сломается, ты тогда вернёшь потом не 200?

H
07.07.2016
09:58:38
ну тогда сервер же должен ждать ответа

получается синхронность

Roman
07.07.2016
09:58:49
поясни

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

а вот внутри сервера у тебя асинхронный код

H
07.07.2016
09:59:40
но клиент все равно сидит и ждет ответа?

Roman
07.07.2016
09:59:53
это значит, что в алгоритме действий ты можешь выполнять несколько io операций разом, а не последовательно

да

H
07.07.2016
10:00:05
просто айо позволяет разблочиться и передать другому управление

Roman
07.07.2016
10:00:15
другому кому?

какое управление?

Oleh
07.07.2016
10:00:24
лол

H
07.07.2016
10:00:25
кому-то другому

Roman
07.07.2016
10:00:36
не путай http и алгоритм работы веб-сервера

Roman
07.07.2016
10:01:12
H
07.07.2016
10:01:14
я просто думал что хттп освобождается и не было понятия как потом получается ответ

Roman
07.07.2016
10:01:16
из питера?

asyncio позволяет тебе разом принять много коннектов

но это не значит что браузер из-за серверного кода начинает работать иначе

Google
Oleh
07.07.2016
10:01:53
блин, раньше здесь было по <50 сообщений в сутки, пару дней не заходил и все путем, прочитал, что то полезное узнал ... сейчас он больше 1к увидел

Roman
07.07.2016
10:02:07
=)

вчера было много флуда

Roman
07.07.2016
10:02:24
Oleh
07.07.2016
10:02:27
"Python без "девочек"

Roman
07.07.2016
10:03:41
@nahuy снизошёл ли на тебя благодатный огонь познания?

H
07.07.2016
10:04:04
теперь стало яснее, спасибо

gunicorn норм как советуют в aiohhtp?

Roman
07.07.2016
10:05:35
это два разных решения, которые не скрещиваются

asyncio против зелёных потоков

даже не так

H
07.07.2016
10:06:02
ну там же пример такой

Roman
07.07.2016
10:06:07
epoll/kqueueu против зелёных потоков

я в этой теме плаваю

в случае с гуникорном, если рассматривать пример из доки aiohttp, речь идёт лишь о том, как деплоить твоё asyncio приложение. Т.е. gunicorn поднимает пачку твоих приложений и проксирует им запросы

делается это чтоб юзать все ядра, а не лишь одно, которое доступно одному экземпляру python

цель asyncio - максимально утилизировать 1 CPU, цель гуникорна позволить утилизировать более 1 CPU

H
07.07.2016
10:17:07
окей, буду разбираться, спасибо большое за терпение :)

When web service is asynchronous the main difference is that call should return instantly with HTTP 202 ACCEPTED (2) which means that request is taken in queue but not processed yet.

вот с чем я перепутал, я почему-то думал что 200 возвращается

Google
agic
07.07.2016
10:36:45
и как там?

на pgday

http://pgday.ru/ru/2016/papers/97

раскажешь )

Oleh
07.07.2016
11:28:30
???

agic
07.07.2016
11:31:25
огонь

Roman
07.07.2016
13:07:23
написал wRAR'у в g+, а он, оказывается, и на rusnet#python сидит

я уже думал давно выпилился

Alexey
07.07.2016
13:07:45
не, тусует, факт.

Марк
07.07.2016
15:36:44
http://pgday.ru/ru/2016/papers/97
У скуля есть сильные стороны по сравнению с pg?

Andrey
07.07.2016
16:21:34
Ребзя, есть у кого-нибудь в проде pg9.6?

Alexey
07.07.2016
17:47:25
что это за хуета и зачем она здесь?

Alex
07.07.2016
17:47:31
мерфи бот же

мелкософтовский

Kill me pls
07.07.2016
17:48:21
Ок

Alexey
07.07.2016
17:48:35
пичяль какая-то тоскливая.

Kill me pls
07.07.2016
17:48:52
Еще бы. Без пекарни

Сегодня купил GeForce GT 720

А оказалось, мать сгорела

Alexey
07.07.2016
17:49:19
:( отстоище какой.

Google
Kill me pls
07.07.2016
17:49:43
Ага.

Alexey
07.07.2016
17:49:49
а чо погорело-то?

Kill me pls
07.07.2016
17:49:51
Хорошо, что обменял обратно на шекели

Alexey
07.07.2016
17:50:04
уверен, что мать погорела, а не блок питания лолушки?

Kill me pls
07.07.2016
17:50:06
Блок питания, видеокарта(предположительно), ну и мать

Блок поменял уже

Alexey
07.07.2016
17:50:31
ты в зоне действия испытаний атомного оружия что ли?

Petr
07.07.2016
17:51:20
Но как?

Kill me pls
07.07.2016
17:51:24
Ну близко тут. 250 км :D

Petr
07.07.2016
17:51:29
Реально статикой убить мать, да

Alexey
07.07.2016
17:51:32
не, дичь какая-то бро.

Petr
07.07.2016
17:51:46
Kill me pls
07.07.2016
17:51:57
Казахстан?
Нижний Новгород

Короче суть такая. Погорел предохранитель на сетевом фильтре, было дело ночью, я не заметил, что он погорел

А на следующий день видимо из-за скачка

Страница 19 из 1719