a

Parse Server Migration Service

Joel Garcia Joel Garcia has been building AllCode since 2015. He’s an innovative, hands-on executive with a proven record of designing, developing, and operating Software-as-a-Service (SaaS), mobile, and desktop solutions. Joel has expertise in HealthTech, VoIP, and cloud-based solutions. Joel has experience scaling multiple start-ups for successful exits to IMS Health and Golden Gate Capital, […]

We are recommending that clients who are running on Parse contact AllCode about our Parse Server Migration service.

The Parse Hosted service will be retired on January 28th, 2017. If you would like to migrate your solution off of Parse, please contact AllCode ASAP.
The Parse Service today leverages the open source Parse Server written using Node.js. The service uses MongoDB as its database repository for data and AWS S3 CloudFront for document storage.
Migrating away from the Parse Service at parse.com will require:

  • Setting up a new server at a infrastructure provider that supports Node.js, e.g. Heroku, AWS.
  • Migrating the data to a MongoDB hosted server (e.g. mLab).
  • An AWS account with S3CloudFront to store the files.
  • Changing existing product source code for:
    • The Cloud application.
    • The iOS application.
    • The Android application.
  • Multiple test iterations for each migrated component.

Once the solution is migrated, then the associated components will require monitoring and maintenance to ensure that they continue to perform well.
Here’s a Step-By-Step guide of the components to be migrated to ensure that your service that runs on Parse today will run after January 28th, 2017.
Step 0:

Existing Parse Infrastructure for Parse Server Existing Parse Infrastructure for Parse Server

Step 1:
The first step is setup your own MongoDB. This can be done leveraging mLab. After you setup the MongoDB instance, you will need to migrate the MongoDB data from the Parse db to your instance. If you’re leveraging files or images, you will have to migrate the files or images from Parse’s S3 buckets to your own S3 buckets as well. You will also want to turn on CloudFront to get fast download times of your content.

Step 1 Parse Server Migration - Local MongoDB Step 1 Parse Server Migration - Local MongoDB

Step 2:
The next step is to stand up your own Parse Server. This can either be done on a laptop or AllCode can do this for you in the cloud. Alternatively. you can go up to an AWS EC2 Instance to deploy the open source code for the Parse Server. After you’ve got your Parse Server running, you will want to setup your development client to point to this Parse Server to ensure that your app works with the new infrastructure.

Step 2 Parse Server Migration - Local Parse Server Step 2 Parse Server Migration - Local Parse Server

Step 3:
After you’ve gotten your Parse Server to work, we recommend that you setup a Parse Server in the cloud. Typically, it is easier to get the Parse Server to run initially on your laptop because, in most situations, it is easier to configure your laptop than if you’re a noob with AWS or Heroku.

Step3 Parse Server Migration - Production and Development Clients Step3 Parse Server Migration - Production and Development Clients

Step 4:
After you get the development clients working correctly with the Parse instance running in the cloud talking to your populated MongoDB, then you’ll want to release a new Android and iOS to Google Play and the App Store, respectively. Remember that come January 28th, if someone has an older version of your app that still points to parse.com, it will no longer work. Not only do you have to update what’s in the store, but you have to get all of your users to download the update. Best of luck.

Step 4 Parse Server Migration - New Production Clients Step 4 Parse Server Migration - Production Clients

Joel Garcia
Joel Garcia

Joel Garcia has been building AllCode since 2015. He’s an innovative, hands-on executive with a proven record of designing, developing, and operating Software-as-a-Service (SaaS), mobile, and desktop solutions. Joel has expertise in HealthTech, VoIP, and cloud-based solutions. Joel has experience scaling multiple start-ups for successful exits to IMS Health and Golden Gate Capital, as well as working at mature, industry-leading software companies. He’s held executive engineering positions in San Francisco at TidalWave, LittleCast, Self Health Network, LiveVox acquired by Golden Gate Capital, and Med-Vantage acquired by IMS Health.

Related Articles

The Difference Between Amazon RDS and Aurora

The Difference Between Amazon RDS and Aurora

AWS does incorporate several database services that offer high performance and great functionality. However, customers do find the difference between Amazon Relational Database Service and Amazon Aurora. Both services do provide similar functions, but do cover their own use cases.

AWS Snowflake Data Warehouse Pricing Guide

AWS Snowflake Data Warehouse Pricing Guide

AWS Snowflake Data Warehouse – or just Snowflake – is a data cloud built for users to mobilize, centralize, and process large quantities of data. Regardless of how many sources are connected to Snowflake or the user’s preferred type of organized data used, data is easily stored and controllably shared with selectively-authorized access. Snowflake does offer extensive control over its pricing, though how it works isn’t always clear.

Single-Tenant vs. Multi-Tenant Cloud Environments

Single-Tenant vs. Multi-Tenant Cloud Environments

Operating a cloud environment and optimizing Software as a Service can be managed in two different methods. Reasons for adopting either single-tenant or multi-tenant cloud environments are dependent on business and customer-related factors as well as how much more expensive one architectural structure will be over the other. Both structure types also have a number of security and privacy implications tied to their inherent design.

Download our 10-Step Cloud Migration ChecklistYou'll get direct access to our full-length guide on Google Docs. From here, you will be able to make a copy, download the content, and share it with your team.