This document discusses developing websites using a microservice architecture to achieve scalable development, evolvability, and performance. It proposes building the frontend using small, autonomous services that can be deployed independently. Content is shared between services using transclusion techniques like Edge-Side Includes and AJAX calls to include fragments. This allows each service to focus only on its own code and dependencies while reusing content from other services. The approach aims to provide great per-service performance through simple service implementations and diverse technologies, while enabling high release velocity through independent, self-contained teams.
5. Partial roll-outs (# of services)
Australia (2)
Austria (3)
Denmark (2)
Finland (2)
France (2)
Germany (3)
Lithuania (2)
Netherlands (2)
Portugal (2)
Sweden (2)
Switzerland (2)
20. Frontend teams/services
Search Products WishlistCheckoutEditorial content
Teams are self organized
Teams develop, release and test themselves
Teams are operational responsible
Teams own the whole lifecycle of the services they create
BacklogBacklog Backlog BacklogBacklog
32. ...without leaky cache busts
Fragment
Web page
Fragment type
style.b73bef.css
[script.6f4e6f8.js]
ESI
ESI
style-fragment.html
script-fragment.html
Service/team boundary