News

Realm Adds Serverless Functionality to Data-Centric Mobile Platform

Realm is continuing to build upon its database-centric mobile app development platform, adding a new logic layer to incorporate back-end, serverless functionality.

The company announced a beta offering called Realm Functions to ease serverless computing for users of its Realm Mobile Platform, which adds an Object Server to the company's original flagship mobile database product.

Serverless computing, as Wikipedia explains, is a relatively new area fostered by cloud computing that lets developers write program logic -- functions -- so their apps respond to events automatically. The logic functions are typically based on cloud-hosted servers, so the term "serverless" is somewhat misleading, actually meaning that developers don't have to "purchase, rent or provision servers or virtual machines for the back-end code to run on," as Wikipedia explains, instead relying on back-end, event-triggered "stateless compute containers."

A natural fit for cloud computing and Mobile-Back-end-as-a-Service (MBaaS) offerings, serverless computing functionality is offered by major providers such as Amazon Web Services (AWS Lambda), Microsoft Azure (Azure Functions) and Google Cloud Platform (Google Cloud Functions).

Now, Realm is on that list, with Realm Functions operating on the Realm Object Server. In the Realm ecosystem, functions are written in JavaScript and trigger events are handled by changes to Realm's "live objects" instead of via REST API calls. Developers manage them through the platform's Web dashboard interface.

Realm Functions
[Click on image for larger view.] Realm Functions (source: Realm)

The company characterized the introduction of serverless computing through Realm Functions as the third phase of its mission, following the 2014 introduction of the Realm Mobile Database (which hit version 1.0 last year) and the recent addition of the Object Server for realtime data synchronization of data housed on devices and servers.

"Performant data storage and realtime data synchronization are important parts of building a great app, but there's an endless world of possibilities when you can add custom logic to your server," Realm said in a blog post last week. "You can write functionality that needs to be protected from tampering, call and coordinate countless other APIs, or use your app's aggregated data to power machine learning systems. Unfortunately, sophisticated server-side features are hard to build, and hard to integrate with your mobile apps. Even a basic streaming API requires lots of work from the back-end developers who will build out the server-side code, and a lot of attention and maintenance so that your apps and server can communicate the data your users need."

Realm has open sourced its platform and sample code for using Realm Functions with Realm Tasks is available on GitHub..

The beta offering is available in all three editions of the company's platform, including the free Developer Edition, with which coders can implement up to three concurrent running Functions. There are no limits for the Pro and Enterprise editions.

About the Author

David Ramel is an editor and writer for Converge360.