This blog post accompanies the webinar Make Your Apps Scalable and Web-Enabled - Leverage your Business Logic with a Fast Flexible Multi-Tier Architecture - Using RAD Server and REST Services.
Create high performance, scalable applications by adopting a multi-tier architecture. By separating the UI/presentation layer, the server and the data layer, your apps will scale more easily with changing business needs and accommodate larger numbers of users. Multi-tier architecture also allows dev team members to focus on their strengths and add new services through a loosely coupled architecture which keeps the impact of changes small. This webinar demonstrates how easy it is to create a services-based app using REST/JSON, database integration, and RAD Server. We will look at the use case of the RAD Server Field Services Application Template and also provide examples of web-enabling your application with an Ext JS front-end.
Slides | YouTube Replay
We all start with the monolith. This is the app that is easy to develop, just drop our data access controls on the form, mixing the business logic with the data access and the user interface. The monolith gets us to market quickly, but over time is harder to maintain.
When our software modules are coupled they are hard to maintain. Wikipedia has an article on coupling, and Nick Hodges covers it in his books.
As the app does more and gets more workload, the need to scale goes up. Horizontal scaling allows the software to handle more workload without the cost per unit of work going up.
Going straight for Microservices usually isn't a good plan.
RAD Server makes it easy to make your monolithic app scalable.
There are a few different Industry Templates available in GetIt. They are a great resource to learn more about RAD Server and scalable app development.
You are a big fan of native app development. What does the web give you? Adding a web interface is one way to take advantage of your new scalable architecture.
The go to choice for web front ends is Sencha's Ext JS.
Useful framework in refactoring your Monolithic App to multi-tier to make it more scalable.