AWS Lamda Vs HTTPs (Self Hosted)

Submitted by Peter on Fri, 24/02/2017 - 00:23

When creating an Alexa Skill 1 of the first decisions you must make is whether you are going to host the skill on Amazon’s AWS service or on your own hosting or servers.

Below are some of the pros and cons of each method.

  Amazon AWS HTTPs (self Hosted)
Available Languages
  • Python
  • Node.js
  • Java
  • PHP
  • Python
  • Node.js
  • Perl
  • Java

 

* any language your server supports providing it can output JSON.

Configurability Minimal

Dependent upon access to the server:

  • Shared Hosting -Reliant on the host but generally extremely limited
  • VPS - 100% configurable
  • Dedicated Server - 100% configurable
Uptime

Almost 100%.

*service is rarely down . Status Page

Reliant on the host.
Scalability

Fully scalable.

*you pay for the storage and requests

Potential slow deployment.
Security AWS automatically validates requests. You are responsible for validating requests.
  Fixed rate per request and per MB stored. Credits can be claimed to help cover the costs (or even wipe them out)* Flat monthly rate regardless of traffic or storage apart from penalties if exceeding limits.

* Amazon recently gave a $100 coupon to each developer to help pay for fees. Once this runs out you can apply for more providing the fees are directly for the skill. Click here to find more information.

 

As you can see Amazon AWS has many advantages over HTTPS so you may wonder why you would ever host a skill yourself.

One great benefit of self hosting a skill is the ability to use any language that your server supports therefore using a language that you are most comfortable with. If you manage your own server you have a much greater flexibility in configuring the server.

Ideally however where possible hosting the skill on Amazon’s AWS service would generally be a better fit and even potentially be free to deploy for skills that attract minimal requests.