Skip to content

#003 — uWebSockets.js + React Conf 2025: useEffectEvent

Stream #003

Дата: 29 травня 2026 | 19:00 London / 21:00 Kyiv
Формат: Дві доповіді · ~70 хвилин
Гість: Олександр Блажейко
YouTube: https://youtube.com/live/7wR_NxpsSFw

Учасники

Олег Левченко — Senior Full Stack JavaScript Developer (React / Node.js / AWS)
The AA · Cardiff, UK
YouTube @zloyleva · itfriday.community

Олександр Блажейко — Software Development Engineer · Fullstack, 7+ років досвіду
Україна
LinkedIn · itvibe.party

Будує itvibe.party — платформу що поєднує чат, синхронний AI-перекладач і персонального AI-вчителя. Вперше з нами у стрімі #002.

Ключові тези

Доповідь 1 — uWebSockets.js · Олександр Блажейко

  • Найшвидший HTTP & WebSocket сервер для Node.js: ×8-10 проти Express, ×6-8 проти Bun.serve, ×3-5 проти Fastify
  • Побудований на C++ бібліотеці µWebSockets — та сама, що живе всередині Bun.js
  • ~15 MB RAM footprint при повному завантаженні
  • cork() API: один системний виклик замість п'яти — суттєва перевага під навантаженням
  • res.cork(() => { res.writeStatus(); res.writeHeader(); res.end(); }) — мінімальний приклад батчингу
  • Docker: особливості деплою у контейнері та підводні камені
  • Плюси: мікросекундна затримка, вбудований Pub/Sub, малий footprint
  • Мінуси: низькорівневий API, не drop-in replacement для Express, обережно з graceful shutdown

Доповідь 2 — useEffectEvent · Олег Левченко

  • Новий React-хук для відокремлення реактивної і нереактивної логіки всередині useEffect
  • Проблема: Effect залежить від roomId і theme, але theme не повинен бути тригером перезапуску
  • Додаєш theme у deps → зайві reconnects; прибираєш → stale closure; обидва шляхи мають ціну
  • useEffectEvent ізолює нереактивний код — завжди читає актуальне значення без перезапуску Effect
  • Правило: useEffectEvent можна тільки викликати зсередини Effect; не передавати як пропс чи аргумент хука

Таймкоди

Будуть додані після стріму.

Ресурси

ІТ П'ятниця · @zloyleva