This post was written by Rich Bosomworth.
The scope for the final day at Serverless Conference 2016 appeared more developer orientated than the conceptual theme of the previous day. Not being a developer I chose a selection of AWS focused talks hoping they would offer familiar service hooks to help leverage understanding.
All the sessions were delivered with sufficient clarity. Content covered back up and restore for Lambda session states, serverless challenges with regard to mobile networks, and experiences from real world serverless implementations. There was also a very well received introduction to the Serverless Framework which gave insight into the future of serverless. In this post I will detail core content from the talks I attended.
Ian Meyers (AWS) | Real-time backup and restore with Amazon DynamoDB and AWS Lambda
Stateless function design for AWS Lambda was a recurring recommendation throughout the conference. Function state should be stored elsewhere and this talk discussed using AWS DynamoDB, with continuous backup and restore enabled through an array of supporting AWS technologies.
The slide entitled ‘Serverless isn’t just Lambda’ provided a useful top-level introduction with each ‘also’ being an area of supporting AWS technology.
- Streaming replication (AWS Kinesis)
- Streaming data archival (AWS Kinesis Firehose)
- Audit logging and stream production (AWS Cloudtrail & AWS Cloudwatch)
- Long term, high durability storage (AWS S3)
- Orchestration of full backups (AWS Data Pipeline)
Given the resilient nature of DynamoDB there was a question as to why backups would be needed. This produced two potential causes:
- Human error
- Application errors (i.e. a bad merge)
Ian spoke about the key objectives for any data backup and restore pattern, which are to facilitate levels of RTO and RPO by capturing changes at incremental intervals.
- RTO (Recovery Time Objective) – If there was a problem how soon could systems be expected to be back up?
- RPO (Recovery Point Objective) – When restored, how much data loss can be expected?
The talk went on to provide overviews for implementation using a useful array of reference architecture schematics, available in the AWS Slideshare:
The content and solutions design areas of the talk were extensive and it was useful to have insight into the possibilities and best practice.
The full talk is available here.
Alexander Stigsen | Serverless in an offline-first world
The second talk covered the expansive Realm mobile platform. According to Alexander, in many ways the mobile world could be seen as the ‘true’ serverless environment, and with it come a host of challenges.
Applications on mobile platforms have a higher probability of not responding. This is because mobile networks have higher latency and you can lose connectivity.
Alexander went on to explain how the Realm Mobile Platform addresses these issues using something they call “live objects”. The concept and technology is explained here.
The full talk is available here.
Paul Johnston | The future of serverless
To set context Paul began by stating that Movivo does not provide serverless solutions. Instead they are consumers of serverless technology and his talk covered knowledge gained through their implementation experiences. The talk was subtitled ‘Musings on the things we might be doing in a year’.
The entry point stated that serverless is more than Function as a Service (FaaS) and that the vast majority of n-tier architectures cannot be directly translated to serverless implementations. In order to ease transitions there are steps that can be taken and Paul recommended placing everything behind an AWS API Gateway to begin with. This was another common theme that emerged throughout the conference and was a key takeaway for me from this talk.
Paul also identified SysAdmins as being potentially the best people to start with serverless as they have had experience of managing legacy infrastructures and would therefore be best placed to help with transition. As a SysAdmin myself I thought this was an interesting comment and I would have to apply a caveat. Those with additional knowledge for a scripting language such as Node,js or Python would be better placed, whereas those without may struggle.
The full talk is available here.
Florian Motlik | Getting the most out of the Serverless Framework
Described as “The world’s leading development framework for building serverless architectures”, the Serverless Framework (formerly JAWS) is now at v1.0 and this talk was perhaps one of the most anticipated of the event. The talk was both an introduction to how the framework is used to add value, as well as a deeper insight into the way the project functions.
Florian stated that the initial concept of the Serverless Framework and key to its success was “To make 80% easy but 20% possible”. What he meant by this was that the framework caters for the vast majority of common serverless tasks by default, whereas more unique requests might take a little longer to facilitate (although assistance is available). For example setting up a scheduled AWS Lambda function with an AWS API Gateway component is a fairly common task and is something that would fall within the 80%.
Community collaboration is greatly encouraged with production of clear documentation deemed a core factor.
Florian also explained that they are very specific with versioning and which features work with which versions.
The full talk is available here.
Conference takeaways | Going forward into a serverless future
The conference was an excellent event and the organisers did an amazing job. Will we be rushing to decommission our EC2 instances and migrate everything to serverless? Well, not completely. Not everything is suitable for deployment within a serverless framework. EC2 instances will remain and traditional architectures deployed for use cases which require them. This is also true for container technology, especially given that Lambda uses Docker to execute functions. That said, serverless innovation is rapidly gaining ground and offers substantial benefits for cost and efficiency. For successful adoption there are many factors to consider, although as demonstrated by the Serverless Framework there is also a rapidly expanding eco-system of supporting technologies to help smooth the route to entry.