Size: a a a

2020 May 15

AK

Andrey Konovalov in Modern::Perl
Anton Petrusevich
в веб приложении, как правило, нужна дб. дб у нас в перле может быть асинхронной, конечно, но это требует нетривиальных усилий. поэтому, я асинхронность берегу для особых случаев. вебсокеты — вполне такой. к ним у меня есть коро, пул коннектов и мой орм, что всё можно вместе интегрировать и пользовать "как обычно", но он будет при этом внутри асинхронно
Взаимодействий с ДБ можно вынести в микросервис, который будет внутри сколько угодно сложную логику с пулом коннектов реализовывать. Но в принципе с тем же Redis'ом или LDAP'ом нет такого геморроя
источник

AP

Anton Petrusevich in Modern::Perl
не-асинхронных воркеров можно легко гасить по факту превышения RSS, например
источник

AK

Andrey Konovalov in Modern::Perl
Так-то из асинхронности Mojo самое полезное - это render_later, это просто краеугольный камень пользы от асинка там
источник

AP

Anton Petrusevich in Modern::Perl
Andrey Konovalov
Взаимодействий с ДБ можно вынести в микросервис, который будет внутри сколько угодно сложную логику с пулом коннектов реализовывать. Но в принципе с тем же Redis'ом или LDAP'ом нет такого геморроя
в общем, у меня предусмотрен случай ае+коро, который используется для вебсокетов.
источник

AP

Anton Petrusevich in Modern::Perl
Andrey Konovalov
Так-то из асинхронности Mojo самое полезное - это render_later, это просто краеугольный камень пользы от асинка там
напомни нахрена он там?
источник

AP

Anton Petrusevich in Modern::Perl
у меня все шаблоны можно сказать "позже" рендерятся
источник

AK

Andrey Konovalov in Modern::Perl
Anton Petrusevich
напомни нахрена он там?
Ответ очевиден же: чтобы не отвечать клиенту синхронно, это фактически cede
источник

AP

Anton Petrusevich in Modern::Perl
нахрена это нужно в синхронном коде?
источник

AK

Andrey Konovalov in Modern::Perl
Anton Petrusevich
у меня все шаблоны можно сказать "позже" рендерятся
Ну, название функции конечно не очень удачное, согласен
источник

AK

Andrey Konovalov in Modern::Perl
Anton Petrusevich
нахрена это нужно в синхронном коде?
??? в смысле в синхронном коде
источник

AK

Andrey Konovalov in Modern::Perl
Нет, ну понятно, что render_later для асинхронного кода
источник

AP

Anton Petrusevich in Modern::Perl
в прямом. хендлер, обрабатывающий запрос, он имеет, обычно, синхронный сценарий. что он вдруг хернёй асинхронной занимается — ну бывает
источник

AP

Anton Petrusevich in Modern::Perl
так нахрена это делать то?
источник

AK

Andrey Konovalov in Modern::Perl
Он даёт жить другим хендлерам пока всё равно ждёт чего-то
источник

AP

Anton Petrusevich in Modern::Perl
ну у меня с коро то же самое
источник

AP

Anton Petrusevich in Modern::Perl
пошёл запрос в дб — пока ждёт, работают другие "нити". и сценарий синхронный, без мозгоклюйства
источник

AK

Andrey Konovalov in Modern::Perl
Если у тебя хендлер - это коро-поток (или как там), так бы и написал в доке.
источник

AK

Andrey Konovalov in Modern::Perl
Это же важно, так бы и юзеров было на порядок больше у PEF
источник

AP

Anton Petrusevich in Modern::Perl
Andrey Konovalov
Если у тебя хендлер - это коро-поток (или как там), так бы и написал в доке.
если включаются веб-сокеты, то да. без них нет такого сетапа, обычные воркеры
источник

b

basiliscos in Modern::Perl
Anton Petrusevich
нахрена это нужно в синхронном коде?
у меня давно был фронт, к-й работал с БД, а тяжёлый процессинг PDF отсылал на другой сервак. Асинхнонно, конечно, и когда тот что-то отвечал, уже соответсвующим образом доставлял в БД и отвечал пользаку
источник