Architecting Public-Facing Website Software for High Concurrent User Load
April 2015 • Presentation
This session covers lessons learned by analyzing the problems of an existing public-facing website and developing enterprise architectural patterns to solve them.
Software Engineering Institute
This presentation was created for a conference series or symposium and does not necessarily reflect the positions and views of the Software Engineering Institute.
It’s always important to architect public-facing websites to be responsive under high concurrent user load. Although part of this can be achieved using hardware infrastructure upgrades, nowadays performance is more heavily influenced by the software architecture, as noted in Dan Kegel’s C10K problem. This session will cover some lessons learned through experience and research about analyzing the problems of an existing public-facing website, and it will use the lessons learned from the analysis to develop some suggested enterprise architectural patterns to resolve them. The lessons learned include
- web content management (WCM) content delivery architecture: the decoupled content delivery pattern
- architecting online real-time features: the web real-time communication pattern
Upon completion, the audience will have two architectural patterns to help with architecting public-facing websites as well as an understanding of how I came to these theorems. This subject matter is mostly focused on architecting for two specific engineering paradigms that will be part of SATURN 2015:
- SOAs and concurrent/event-driven systems
- high-scale, high-volume web applications
Please see 'The C10K Problem' flyer that can be downloaded below.