If you’re a mobile app developer, I imagine you’re constantly feeling the pressure to quickly bring new apps to market and update them faster than ever before. The demand is only ramping up, with no change in pace on the horizon.
Like many mobile app developers, you also most likely need a hard-working database behind the scenes to process major amounts of real-time data such as transactions, inventory and users. This blog series will offer insight on how you can improve your app creation and deliver – especially when processing real-time data is a must.
Categories of real-time apps
Before diving into specifics, let’s take a look at the three possible categories that a typical real-time app falls into:
- Monitoring – read current data
- Collaboration, social media – read historical data, write current data
- Online transactions, MMO games – read and write current data
With the first two categories, ‘near real-time’ and eventual consistency of the data are acceptable. This labels them as ‘AP’ in terms of the CAP theorem (Consistency, Availability, Partition-tolerance). A thick client could be recommended here since it fits well in a scaling-out paradigm.
The third category, however, requires consistency and availability – ‘CA’ in the CAP theorem. As the app needs to work in transactional scope, it’s better keep the app logic close to the data. Thus, in this case, a thin client is a better choice.
In the blog posts to follow, we’ll review the design choices for all three kinds of apps. Stay tuned!
In the meantime, interested in learning more about the vision behind Starcounter and the evolution of our in-memory application platform? Check out this white paper by our founder, Joachim Wester.