That being said, how hard is it to move the data off this platform and migrate it to another once you've reached scale?
That being said, how hard is it to move the data off this platform and migrate it to another once you've reached scale?
When it comes to migration, it depends on your use-case. A few suggestions which may be helpful:
* Consider your data strategy (much lock-in happens at this level). Most serverless architectures leverage DynamoDB because its design pairs well with stateless compute like AWS Lambda. You can use DynamoDB within all types of architectures.
* Don't use AWS API Gateway specific URLs in your application. Use custom domains. This will enable you to easily swap out your websockets endpoint. Fortunately, there is only 1 endpoint in this architecture, so there is little surface area to refactor.
* Make sure you understand the cost of these serverless technologies at scale before building with them. But don't forget to factor in the reduced labor costs of using serverless technologies.
The difficulty really depends how deeply integrated your application becomes with the underlying cloud provider and its services. It may be a simple application consisting of few a JS Lambdas and DynamoDB tables, or it may utilize half of AWS' offerings. In the case of the latter, may god help you.
My question is what is the ceiling? At what point do you need to move off the platform and how easy is the migration?
I find people are pretty gun shy to park their data into a platform that doesn't make it easy to migrate off (Parse comes to mind).