TGViewer
Жабаскрипт (веде Віктор Турський) Жабаскрипт (веде Віктор Турський) @jabascript · 4.73K subscribers
Post #243 3.59K
Service Weaver - концепція модульного моноліту від Google
В продовження теми моноліти чи мікросервіси хотів поділитися новиною про новий фреймворк від Гугл. Фреймворк для Go, але нас в першу чергу цікавить сам підхід. Основна ідея, що він розділяє процес деплойменту й процес написання коду. Тобто ми пишемо моноліт, який можно задеплоїти як мікросервіси. Я в Гуглі теж використовую схожий фреймворк.

Що Гугл думає про моноліти й мікросервіси:
While writing microservices-based applications, we found that the overhead of maintaining multiple different microservice binaries—with their own configuration files, network endpoints, and serializable data formats—significantly slowed our development velocity. More importantly, microservices severely impacted our ability to make cross-binary changes.
As a result, we wished we had a single monolithic binary to work with. Monolithic binaries are easy to write: they use only language-native types and method calls. They are also easy to update: just edit the source code and re-deploy. They are easy to run locally or in a VM: simply execute the binary.

Тобто хочеться писати моноліт й мати можливість його легко рефакторити (в мікросервісах переміщувати код між сервісами складно, а міняти API ще складніше), релізити цілим бінарем (в мікросервісах треба думати про сумісність сервісів), менеджерити один конфіг (а не для кожного мікросервісу окремо), не паритися з сервіс дісковері, трейсебіліті, не мати оверхеду на RPC поки це не стано реально потрібне та великою кількістю інших проблем.
Service Weaver якраз намагається розідлити те, як ми пишем код й як він потім запускається.
Пост про фреймворк - https://opensource.googleblog.com/2023/03/introducing-service-weaver-framework-for-writing-distributed-applications.html

PS: в цьому контексті він мені дещо нагадує підходи в Python WSGI, Perl PSGI, Ruby Rack (дивно, що такого не зробили в NodeJS), але йде значно далі - не тільки абстрагує запуск компонента, але цілої системи й внутрішньої взаємодії
Googleblog Introducing Service Weaver: A Framework for Writing Distributed Applications
  • 🔥 31
  • 👍 10
More from @jabascript
  1. Sep 30, 2026Ну шо... https://youtu.be/I5_D15gCDDQ
  2. Sep 29, 2026🏎️🏁Забирайте трофеї й знову нові тижневі челенджі 🏎️🏁
  3. Sep 26, 2026"Найкраща мова програмування - англійська" DHH Зараз багатьом підгорає від останньої допов…
  4. Sep 22, 2026Забирайте трофеї й знову нові тижневі челенджі 🏎️🏁
  5. Sep 14, 2026Втомилися чекати на дашборди? Не знаєте, як тестувати AI-агентів? Або цікавитесь, як працю…
  6. Sep 14, 2026Понеділок й нові челенджі вже доступні 🏁🏎️ 👉 Поміняв систему розподілу призів, щоб не б…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →