Enterprise Mobility Blogs

perspectives for IT decision makers

Parse – A Cloud Platform Enabling Users to Add a Powerful Backend

by (June 15, 2015)

MBaas Platforms

Mobile Backend-as-a-Service (MBaaS) has been around for a few years. It has, already, evolved in the current market and been gaining popularity in the application industry. MBaaS is considered, to have started as an infrastructure for the mobile applications. And, it has been offering backend cloud storage and APIs in order to address the growing mobile application industry.

There are several MBaaS platforms available to build mobile apps. Few examples: Kinvey, Appcelerator, Parse and CloudMine.

In this article, I’d like to explain, some of the features of one of the popular MBaaS platforms, Parse (Facebook’s Mobile App development platform).

Overview
Parse is a good Backend as a Service platform. It is more stable and popular as compared to the other MBaaS platforms. Parse is a true MBaaS, which implements the backend and database functionality. It provides convenient HTTP endpoints and developers can read or save objects directly from JavaScript or a mobile platform, by sending HTTP requests to Parse. Parse has similarity with other platforms that provide features like user management, file management, push notification, social network integration, and geo-location services. It uses MongoDB as its backend. Parse documentation is open-source and comprehensive for the developers. It provides SDK for development of applications, for all major platforms. Its JavaScript SDK is based on Backbone.js framework.

Application Development

The tables in Parse are called ‘class’ and each row entry is called ‘object’.

  • API Integration: Integration is simple, with less lines of code for its API and it is more focused towards business logic.
  • Geo Location: It associates with real-world latitude and longitude. It coordinates and integrates, easily, with maps.
  • Push Notification: Parse simplifies push notifications, which can be triggered from its Web console, REST API, or client SDKs and across iOS, Android, Windows clients’ platforms, and is nimble.
  • Search Functionality: Is intuitive with keywords being stored as object’s dirty keys.
  • iOS and Android SDKs: Supports caching mechanisms, making it easier to design applications, in a faster way, and support offline mode, in case of no network.
  • Error Handling: It provides and returns predefined error codes and messages for any failed execution.

Parse’s cloud infrastructure uses online learning algorithms, to automatically rewrite inefficient queries and generate database indexes, based on the applications’ real-time query stream.

Security

Parse provides ACL (Access Control List) for security and restricted access of data. The permissions can be applied to, both, class level and object level, independently. The permission includes CRUD operations, addition of class, objects and field. It can be applied to an individual role or a group. This allows numerous customers to use the same data store, without compromising on its security.

Cloud Code

Cloud Code is a unique feature of Parse. With Cloud Code running on Parse, one can identify a fair amount of logic, which is evident in other platforms, at one place, with more security. This reduces the complexity of handling the data, differently, on each application. Cloud Code is written in JavaScript. It provides save/delete hooks which are achieved by triggers in traditional databases. Through Cloud Code, the following functionalities can be achieved:

  • Querying any HTTP Server
  • Push notifications on iOS and Android applications
  • Calling beforeSave, afterSave, beforeDelete, afterDelete to trigger functions like enforce data integrity, report generation, push notifications, track comments on a blog post, etc.
  • Logging messages

Third party libraries, too, can be used by, just, deploying them with Cloud Code.

Analytics

With Parse analytics, the application can be tracked in real-time. Parse provides analytics around its data, such as audiences, events, performance, etc. Analytics provide crash reports and ways to measure the application usage. Below are few plots with the apps data:

Parse Analytics – Audience

Parse Analytics

Parse Analytics – API Requests

Parse Analytics - API Request

Parse Analytics – Push Notifications

Push notifications

The analytics can be fetched for custom events, as well.

Performance of the application is improved, further, by identifying and modifying slow running queries under analytics.

Hosting

Web applications are hosted on Parse by deploying them on console. It is simple and quick. The hosted applications are given unique names under settings in Parse. A deployed application can be reverted to the previous version, too, to avoid regression. The deployment of application is seamless and does not interrupt the user session or any UI flow.
For secure hosting, Parse allows custom domain’s SSL certificate and can route traffic from your own domain to the hosted Parse application.

Limitations

  • the save/delete hooks timeout after 3 seconds of run time (though Webhooks is alternative) Cloud functions timeout in 15 seconds. However, with today’s app user experience, this is not much of a concern.
  • Partial debugging using Cloud Code. Though console logs can be added to Cloud Code, which can be viewed under logs section.
  • Log system reveals only last 100 logs.

Other Features

Parse applications can be developed with Unity and Xamarin platforms. It is an excellent option to choose, for developing gaming applications. By using Parse, SDK apps can be developed for IoT, as well. Parse firmly believes in data portability. The data can be imported and exported to and from the Parse App classes, respectively.

The Future of Parse

In just a few years, Parse has come a long way. It has the capability and potential to power a huge number of apps for a broad spectrum of customers. Parse has become a leading platform in today’s age of mobile apps. Customers and users can build the perfect app on any platform. One can focus on creating amazing user experiences. The concern of dealing with a complex infrastructure has been fading away since its introduction. There is an explosive growth of MBaaS and a significant number of mobile developers prefer Parse as it features and provides an array of options.

By,

Subodh Kumar

Technical Lead and MBaaS Applications expert, RapidValue Solutions

Sorry no comment yet.

LEAVE A COMMENT

24/7 Toll Free(877)-643-1850(US)

Would you like to know more about us?

  • This field is for validation purposes and should be left unchanged.
Scroll Top