NoSQL Key-Value stores that run in-memory like Redis are incredibly helpful for scalability. Memcached is also an option. Gemfire is insanely powerful and scales across WANS, it runs some huge transaction sites and is awesome with Java. India Railways is an incredibly interesting example of scaling on in-memory data grids.

II. Microservices / 12 Factor Apps on a PaaS

It’s hard to scale a lumbering beast, easier when you have a swarm of agile services. With each service having an API that can be shared internally or externally you easily open your architecture to extension and usage from outside sources which is key in growing them. This has worked well for Uber, Google, Facebook, Twitter and a host of others.

The Platform to Enable Microservices: An Open PaaS. With the Linux Foundation running it, CloudFoundry is the open choice, it’s the Tomcat of the PaaS. Extensible, Standard, Fast, Flexible, Elastic and Open — CloudFoundry Rocks.

Internet pioneer Netflix has created a number of amazing tools that keep applications scaling, failing fast and recovering. These tools have been augmented with Spring and are coming to the PaaS. These have with critical portions like Circuit Breakers and discovery. These are very important to manage all the microservices in your architecture. There are also great tools from running on AWS.

VIII. DevOps

VIV. Containerization

X. Continuous Delivery

Having a tool that builds your applications from Git and runs automated tests and static analysis is very critical.

Canary Deploys

Blue-Green Deploys

A/B Testing

Circuit Breaker for Inter-Service Communication and External Service Access