Приручаем многопоточность в Node.js
В прошлых частях цикла мы:
👉 рассмотрели базовые концепты работы с многопоточностью в JavaScript на примере среды Node.js;
👉 научились формировать общую очередь и каналы обмена данными и сигналами, чтобы более эффективно управлять загрузкой потоков;
👉 использовали разделяемую память и Atomics-операции как самое быстрое средство обмена большими блоками данных;
👉 создали отдельный поток-координатор, чтобы устранить негативное влияние синхронного кода в основном потоке исполнения на загрузку потоков вспомогательных.
В сегодняшней, заключительной, части я продемонстрирую, как все эти механики вместе позволяют сделать эффективный микросервис, автоматически подстраивающийся под изменения входящей нагрузки.
Читать...