RSS Feed Subscribe to RSS Feed


AWS Re:Invent 2018 Keynote announcements

Highlights from today’s 2018 AWS Re:Invent Keynote by CTO Werner Vogel.


General announcements

  • Managed Streaming for Kafka

This was the most interesting announcement for me. One of the biggest drawbacks to choosing Kafka over Kinesis is that the former typically involves your Ops team doing the heavy-lifting of installing, operating and maintaining a Kafka cluster (Kinesis is a managed service from AWS, so AWS do all the hard work for you). With this announcement, AWS can now do the heavy lifting for Kafka too. For more, see the announcement. and although only currently in preview mode, it is already on the main AWS site at












  • Step functions

New Step function integrations announced

Step functions lets you coordinate activities (AWS services) into a workflow, allowing to you to keep your business logic separate from your workflow logic. (I think, basically, that Step Functions allow you to build a simple state machine.)  These Step Functions track the status of each workflow including handling retries and failures. For more information on Step Functions, see and this blog post on “Things Go Better With Step Functions”.

Up until now, the services most commonly used with Step Functions have been AWS Lambda and Amazon ECS. Today’s announcement also introduces support in Step Functions for the following services:

AWS Batch
Amazon ECS
Amazon SNS
Amazon SQS
AWS Glue
Amazon SageMaker

For more, see this AWS blog post.

  • AWS Toolkits

New AWS Toolkits for your favorite IDEs

This time last year, AWS announced their own browser based IDE, Cloud9. However, many of us have our own IDEs that we are already comfortable using. AWS Toolkits for Visual Studio (and Visual Studio Team Services) already exist, but today Werner announce AWS Toolkits for several other IDEs including PyCharm, IntelliJ, and Visual Studio Code. For more, see the announcement.

  • Web socket support for API Gateway

Websockets enable bi-directional interaction between client and server, so this enhancement will allow developers to build real-time, two-way communication applications, for example, chat type apps. Note, this will be available soon, not just yet, and I can’t yet find any more details on

  • AWS Well-Architected Tool

The AWS Well-Architected Framework documents five pillars covering the best practices for AWS cloud architects (For a TLDR, see my summary!), including Operational Excellence, Security, Reliability, Performance Efficiency and Cost Optimization. AWS Solution Architects can be brought on board to help you assess your architectures, but this tool provides a self service capability. I find this idea very interesting. Will the tool actually be useful? I guess I will have to try running through it first… For more, see the announcement.


And finally, some Lambda announcements:

  • ALB support for Lambda

ALBs (Application Load Balancers; a type of ELB that operate at the application, or OSI 7, layer) now support invoking Lambda functions to serve HTTP(S) requests. Prior to this launch, ALBs could only toute to things like EC2 instances and containers. For more, see the announcement, or this AWS blog post.

  • Ruby Support for Lambda

How was support for Ruby introduced? What about support for other languages? AWS built support for the Ruby language using the the Runtime API, which is also how new languages will be supported…

  • Lambda Runtime API

The Lambda Runtime API enables support for other languages. As well as the support for Ruby that was just announced, AWS are planning (via partners) to provide support for the following languages via new runtimes: Erlang, Elixir, Cobol (yep!) and PHP. For more, see the announcement.

  • Lambda layers: reduce code duplication

Lambda layers announced to reduce code duplication

Lambda Layers are a way to centrally manage code and data that is shared across multiple functions. It is common for there to be shared code across lambdas, whether it your own or a 3rd party library. Now, these common components can be zipped and uploaded as a Lambda Layer. Before, the shared code had to be packaged and deployed with every lambda function that used it. the good thing is that your code doesn’t need to be changed. For more, see the announcement.

Note that Lambda layers and the Lambda Runtime API can be used together: Runtimes can be shared as layers to use the language of your choice when authoring Lambda functions

Note there is also a good summary of today’s serverless related announcements at:

Tags: , , , , ,

Leave a Reply