Async
-
Хабрахабр
Просто и на C++. Основы Userver — фреймворка для написания асинхронных микросервисов
В Яндекс.Такси придерживаются микросервисной архитектуры. С ростом количества микросервисов мы заметили, что разработчики много времени тратят на boilerplate и типичные проблемы, при этом решения не всегда получаются оптимальные. Вот так теперь выглядит типичный код микросервиса: Мы решили сделать свой фреймворк, с C++17 и корутинами. Response View::Handle(Request&& request, const Dependencies& dependencies) psql::Execute(trx, queries::kUpdateRules, request.foo, request.bar); trx.Commit(); return Response200{row["baz"].As<std::string>()}; } А вот…
Читать далее » -
Хабрахабр
День, когда Dodo IS остановилась. Асинхронный сценарий
Привет, Хабр! Каждый SRE в нашей команде когда-то мечтал спокойно спать по ночам. Мечты имеют свойство сбываться. В этой статье я расскажу про это и про то, как мы достигаем производительности и устойчивости своей системы Dodo IS. Цикл статей про крушение системы Dodo IS*: День, когда Dodo IS остановилась. 1. День, когда Dodo IS остановилась. Синхронный сценарий.2. Асинхронный сценарий. *…
Читать далее » -
Хабрахабр
[Из песочницы] ES6 Простым языком
Шаблонные литералы Шаблонные литералы заключены в обратные кавычки (` `) вместо двойных или одинарных. Они могут содержать подстановки, обозначаемые знаком доллара и фигурными скобками ($). Пример: var name = "bill"; console.log(`Hello ${name}`); // Hello bill Директивы let const Областью видимости переменных, объявленных ключевым словом let и const, является блок, в котором они объявлены, и все его подблоки. В этом работа…
Читать далее » -
Хабрахабр
[Перевод] Разбираем Async/Await в JavaScript на примерах
В целом, Async/Await — удобный способ написания асинхронного кода. Автор статьи разбирает на примерах Async/Await в JavaScript. Автор оригинальной статьи раскрывает преимущества Async/Await, разбирая различные примеры. До появления этой возможности подобный код писали с использованием коллбэков и промисов. Напоминаем: для всех читателей «Хабра» — скидка 10 000 рублей при записи на любой курс Skillbox по промокоду «Хабр». Skillbox рекомендует: Образовательный…
Читать далее » -
Хабрахабр
Рецепты Nginx: асинхронные уведомления из PostgreSQL в websocket
Для приготовления асинхронных уведомлений из PostgreSQL в websocket нам понадобится сам nginx и его плагины postgres, push-stream, set-misc. (Я дал ссылки на свои форки, т.к. делал некоторые изменения, которые пока не удалось пропихнуть в оригинальные репозитории. Можно также воспользоваться готовым образом.)Для подключения клиентов к nginx по websocket создадим location =/websocket { push_stream_subscriber websocket; # принимаем клиентов по websocket push_stream_channels_path $arg_id;…
Читать далее » -
Хабрахабр
[Перевод] io_submit: альтернатива epoll, о которой вы никогда не слышали
В ней обсуждается новый механизм опроса в Linux AIO API (интерфейс для асинхронной работы с файлами), который добавили в ядро версии 4. Недавно внимание автора привлекла статья на LWN о новом интерфейсе ядра для опроса (polling). Идея довольно интересная: автор патча предлагает использовать Linux AIO API для работы с сетью. 18. Ведь Linux AIO был создан для работы с асинхронным…
Читать далее » -
Хабрахабр
[Перевод] Осваиваем async/await на реальном примере
Конструкция async/await представляет собой сравнительно новый подход к написанию асинхронного кода в JavaScript. Она основана на промисах и, в результате, не блокирует главный поток. Новшество этой конструкции заключается в том, что благодаря ей асинхронный код становится похожим на синхронный и ведёт себя подобным образом. Это открывает перед программистом замечательные возможности. Автор материала, перевод которого мы публикуем сегодня, предлагает сначала вспомнить…
Читать далее » -
Хабрахабр
[Перевод] Вышел Rust 2018… но что это такое?
Статья написана Лин Кларк в сотрудничестве с командой разработчиков Rust («мы» в тексте). Можете прочитать также сообщение в официальном блоге Rust. В этом релизе мы сосредоточились на производительности, чтобы разработчики Rust стали работать максимально эффективно. 6 декабря 2018 года вышла первая версия Rust 2018. Она окружена значками для инструментов и четырёх областей: WebAssembly, embedded, networking и CLI. Временнáя шкала показывает…
Читать далее » -
Дайджест
PHP-Дайджест № 139 (3 – 17 сентября 2018)
В выпуске: PHP 7. Свежая подборка со ссылками на новости и материалы. 3 EAP, Laravel 5. 3 RC 1, PhpStorm 2018. 7 и другие релизы, HHVM прекращает поддержку PHP, типизированные свойства в PHP, порция полезных инструментов, видеозаписи докладов, и многое другое.Приятного чтения! Новости и релизы PHP 7.3 RC 1 — Стартовал цикл релиз-кандидатов ветки 7.3. Ожидается всего не менее 6…
Читать далее » -
Дайджест
PHP-Дайджест № 138 (20 августа – 2 сентября 2018)
В выпуске: последняя бета PHP 7. Свежая подборка со ссылками на новости и материалы. 3, Laravel Nova, сайт с идеями для следующих версий PHP, новости о Yii 3, порция полезных инструментов, видео, и многое другое.Приятного чтения! Новости и релизы PHP 7.3.0 Beta 3 — Последняя бета в цикле. Следующим релизом станет RC 1, который ожидается 13 сентября. Среди изменений:• Улучшения…
Читать далее »