holyjs HolyJS 2018 Msc (24.11.2018 — 25.11.2018)

Asynchronous zero


Asynchrony: hooks (async_hooks), Continuation (or Thread) Local Storage, Tracing, Duration, statistics, analytics and error processing.

This talk’s purpose is to explain, as fully and accurately as possible, why synchrony of JavaScript is good.

We are going to:

  • review basics of Event Loop in Node.js;

  • delve into use-cases of async_hooks;

  • clear the difference between sampling and tracking;

  • discuss basic and extended use-cases: long stack trace, continuation local storage, event marks, async events pub~sub, simultaneous calculations, etc.;

  • finally, catch requestId in uncaughtException in full battle rattle and discuss the limitations for all these creative impulses.

While we’re at it, we’re also going to clear what lies beyond asynchronous operations: nuances of debugging, asynchronous console.log, strengths of window.alert and synchronous HTTP request, and drawbacks of failing to understand synchrony.