Thursday, April 11, 2013

What Makes a Single Page Web Application Scalable and Robust?

I'll start off by describing what I consider not scalable and robust.... A monolithic web application, where all of its resources (css, javascript, etc) are loaded and stay loaded from the entire life of the application instance.

So, one thing that would make an enterprise web application scalable and robust is the capability of loading and unloading portions of the application as appropriate to reduce resource, e.g., memory, consumption. It's very possible to a region of the window from the user's view, but have all of it, or portions of it remaining around in memory because there is still a reference that is holding on to it, e.g., a javascript object, html elements, etc.

  • Memory Management


I'm back with another key element of a scalable/robust application...

The ability of one application component to publish messages to the message buss and for other components to listen/subscribe to those events and subsequently act on them.

  • Messaging Bus

Keeping logic for one area of concern in on module or several submodules, each with their singularly particular purpose.

  • Modules and Sub Modules

Decoupling the responsibility of one component from others.

  • Encapuslation

A dispatcher that directs interactions between the Model and View layers.

  • Controllers

I'll come back to this page to add more later.

Request for Information

In the meantime, what else can you think of? (please post in comments)

Sponsor Ads(Say Thanks! by clicking the Ad below)