Intro to Serverless Computing
Transcript
hi it's Keith Townson from the CTO advisor.com talking about a little server list Computing so outside the ridiculous marketing term of serverless computing let's dig into what serverless Computing actually is off the bat you can't have Computing in modern day without computers without servers so therefore there're servers in serverless Computing but from a high level it's a shift in application development versus a shift specifically in operations today when we build applications we usually build applications with the VM as a central piece of the application we
buil multiple VMS put multiple parts of our application within that VM ecosystem and then we start to monitor those VMS so if a VM fails our application or a layer of our application fails so that's a server Centric view of computing even with micr services and then we start to break down these Services into smaller either VMS or containers we can go with a container approach even when we break it down into smaller containers or microservices when these microservices infrastructures fail our application fails server list
Computing looks to eliminate that single point of failure where we're providing I think Microsoft had the best approach pre 2012 with their original implementation of of what they call or what we call pths platform as a service where you can build applications looking to use specific platforms within a cloud service provider in the early days this was specifically databases load balance load balancers application engines you could use these things to build applications well we'll taking that ideaal one step further with serves let's take aws's Lambda
service for an example Lambda is an event driven application that or service that can leverage events un let say Amazon's S3 I was at a Meetup the other day and one of the examples that was given was a video application that would dump video files from an end users's computer onto a S3 Object Store S3 would then create an event to the Lambda service which code could then be executed based on that event so let's say that the video file hit S3 a Lambda service that's
written by the developer let's say it's a encoding application that encoding application would launch uh on against the S3 Object Store and re-encode the video and then go away in the case of Lambda that process has to complete within 4 and A2 5 minutes otherwise it'll just die why would we want to do that well lamba is a headless service there it's not associated with a single VM you can say in the case of land where you can say how much memory you want to use
in order to run the process but you're not going to say how many CPU cores you need or how much storage you AWS sizes the be behind the scenes compute based on how much memory your process is going to leverage based on that AWS will then charge you for every instance or every call to Lambda that you make so every event to Lambda let's say that you have 1,500 users upload videos all at one time to S3 you'd have 1,500 instances of your encoding software or
function run at one time once those 1500 instances ended you'd be done and you'd be charged for those 1500 instances an interesting thing with S3 or mean I'm sorry the interesting thing with Lambda as a service today AWS the free tior which doesn't expire will get you up to 1 million events so you can build a pretty robust application of course there's always considerations one with the example of Lambda you're tied into s S3 and other AWS specific event driven applications uh the other disadvantage or
design challenge that you have to consider is scale while Lambda is extremely scalable in itself you can have thousands or even hundred of thousands functions running at the same time or microservices your underlying infrastructure still has to support that so if you have a Dynamo DB a mic SQL DB back ending this process and you have some metadata you're collecting that subsystem has to be capable of handling that load in the case of AWS they do give you the capability to scale and size the number
of instances that you run of one specific type of Lambda servicess Computing in a nutshell there's still servers there but it's most definitely a powerful abstraction from the virtual machine talk to you guys visit us at the C advisor.com listen subscribe to the podcast weekly at iTunes or using your favorite podcaster talk to you guys later