Ready for Realtime and Scale: Announcing Realm Mobile Platform 1.0
Today we’re very proud to announce that Realm Mobile Platform 1.0 is now generally available and ready for production use cases ranging from the very smallest to those with massive scale. We’ve been hard at work over the last few months fixing bugs, polishing rough edges, and hardening the code, as well as adding more than a few new features (more on those below). Hitting 1.0 is a huge milestone for all of us at Realm, and we are extremely grateful to the customers and members of the community who have helped us get here with their feedback throughout the beta period!
The Realm Mobile Platform makes it easier for developers to build apps with sophisticated features like realtime collaboration, live messaging, robust offline-first experiences, and more. The platform combines Realm’s popular client-side databases for iOS and Android with the new Realm Object Server, and delivers automatic realtime data synchronization. As a developer, you don’t need to write or maintain networking code or do any serialization, Realm handles the sync for you — you can be sure that the data on the device is always synchronized with the data on the server. Realm also makes it easy to create server-side logic to react instantly to changes in data, and build integrations to existing systems and APIs.
With this release, all three editions of the platform are ready for you to start building, and we have some fun new demo code you can run to try it out. Read on for more of the details… or, if you’d rather just dive in, just download our Draw demo app and the free Developer Edition for Mac or Linux and start exploring.
Three New Enterprise Features
This release also brings three new features to the Enterprise Edition:
Data Integration API
Our new Data Integration API allows developers to easily integrate the Realm Mobile Platform with any data source, making it simple to use Realm for connecting realtime apps and app features to existing data and services. Many of our beta users are leveraging this new Realm feature to “mobilize” their legacy systems, using Realm as a realtime bridge that gives their Android and iOS teams an easy way to build modern, reactive apps connected to data and logic in existing systems of record.
For example, imagine a retailer who wants to launch a new mobile shopping experience, but needs that new app to be seamlessly connected to an existing payment transaction database. Using Realm’s new Data Integration API, Realm is able to reliably connect the existing database to Realm Object Server such that the Object Server and the payment transaction database are synchronized with the same data. To ensure data is accurate in all locations, the API is designed to understand broken connections and restart interrupted transactions. With these guarantees in place, Realm Object Server can now function as middleware between the client-side databases and the payment transaction database, allowing the retailer to leverage their existing database investments with Realm for new projects.
The Data Integration API makes it easy to build your own custom connectors, but we’re also announcing the first of our pre-built connectors, for PostgreSQL. We’re working on others, and based on customer requests expect to soon release pre-built connectors for Oracle, MongoDB, Hadoop, SAP HANA, and Redis.
We’ve built the Realm platform to be quite robust – depending on the app and the hardware you run it on, a single Realm Object Server can handle well over ten thousand concurrent users. But to allow customers to reach massive scale, we’ve added horizontal scaling to the Enterprise Edition. Included, is a built-in load balancer that automatically handles distributing connections. This makes it possible to deploy multiple instances of Realm Object Server in parallel, so your app can support more than one million concurrent realtime users.
Continuous Backups allow you to create automatic backups of your production Realm Object Server data on a secondary server. In the event of disaster (power outage, hardware failure, natural disaster, etc.), you can continue to operate your application from the secondary server. Developers can choose where to locate their secondary backup servers, including a different region, for increased disaster recovery resiliency.
New Features in Enterprise Edition
Getting Started with Realm and the Draw Demo App
Your first step is to install the Realm Platform, on your own machine or on the cloud service of your choice. Unless you have a specific interest in exploring event handling or other Pro Edition features, we recommend you start with the Developer Edition — it is powerful and entirely free of cost, with no time limits, and you can use it for everything from hacking around to live production apps (see the license terms here). Our documentation will walk you through install, and get you up and running.
Once you have Realm installed, you’re ready to run some sample code. Draw is a whiteboard collaboration app that showcases Realm handling realtime data synchronization between multiple users. It’s totally open source, and available along with other Realm demos on GitHub. This video of Draw in action shows the realtime data synchronization between two iPads, and what happens when the cell network temporarily fails.
How to Learn More
If you’d like to get an in-depth walkthrough of the Realm Mobile Platform and a chance to ask questions, our product team will be doing a live technical session. Please register here.