Hello and welcome back.
Now let's talk about several lists application model or Sam WSM which is very important and it's a tool.
The main purpose of it is to simplify packaging and deploying several applications.
Think about cloud formation what you used to do with confirmation.
Building the infrastructure that is required for an application.
Right.
So Sam is an extension of cloud formation and all that it does is to simplify packaging and deploying
several applications with the required resources like API gateways like lambda functions like s three
bucket databases.
So on and so forth automating that or facilitating the deployment for that and providing it as a config
or infrastructure as a common thing if you will behind the scenes it actually uses cloud formation cloud
formation functions God permission services and resources in order to deploy the applet the servers
applications.
So it's a cloud formation like but specific to several this application.
So what are we going to learn here.
We learn what is Sam what is the IWC.
Sam we will learn what is it about a Sam component or the servers application model and benefits of
using it alias.
SAM So let's dive in as we have learned a several application is a combination of lambda functions and
other resources like what other resource like API gateways could be dynamic DB tables could be different
things and events sources that trigger the lambda functions and this work together to perform tasks
and the tasks are what the application is supposed to do and several application as we know it can include
resources such as API API Gateway database S3 Buckets then we divvy tables and events source mapping.
So what is some then service application model is an open source framework that can be used to simplify
building servers applications.
I mean yes.
So it's the whole purpose is to facilitate that only the obvious and it is a high level abstraction
of cloud formation and it's also an extension of the templates are an extension of cloud formation.
So behind the scenes cloud formation will do the magic it appears some can be used to define.
And that is packaging applications deploying the applications and troubleshooting the applications and
also we can do local testing on your machine even before deploying them to abuse the components to components.
The first one is the same template or the template specifications and the other one is the same command
line interface.
The template is in your mill or Jason.
It is used to define the service application it represents and it provides simple and clean syntax or
format to describe functions API is API gateways permissions configurations events databases that eventually
make up the server this application so it's basically more or less the architecture of your server application
the same template file is used to operate on a single deployable Virgin Virgin entity that that's your
server this application and that's the several applications.
The second component how can I package how can I deploy.
How can I test and all that.
Then you have the same command line interface or the IWC.
See ally and usually in order to install that on a machine or an on your computer on your laptop then
you need there to be a SEAL II.
And there are steps in order to install the Sams Eli and through the some seal apply your own commands.
As we mentioned to package to initiate to deploy application to test so on and so forth and also some
debugging.
Also you can do there.
So the something like is a tool that can be used to build several applications that are defined by the
same templates.
It provides commands that validate that that the ideally a same template files are written according
to the specification which specification the same template specification we talked about earlier.
And it can be used among other things too.
What can we do with the CLIA define package test deploy several applications invoke lambda functions
locally as we mentioned before you can run and test your lambda functions before running that one.
It appears and test applications locally before deploying them to it.
I'm talking about the server applications and step through debug lambda functions.
If you run into issues why would I use it.
What are the benefits of using BSM.
I think it is clear now but let's quantify that.
So it is a single deployment configuration.
What do you mean by that.
It is easy to organize the resources for the servers application components and operate them as a single
stack.
How as a single stack we said that cloud formation is in the background and it can be used to share
configuration such as memory time outs so on and so forth between resources and it also can be deploy
all related resources together on a single Virgin entity and that ties to the single stack we talked
about before but we can run them and different versions.
It is an extension of cloud formation.
So what that means.
The power of cloud formation.
The resources available for transformation like intrinsic intrinsic functions and stacks and all that.
These are also available to Italy as SAP.
It uses a reliable the reliable deployment capabilities of the Italy s cloud formation.
Resources can be defined using elaborate code formation in Italy a Sam template and the full suite of
cloud formation resources introducing functions and other template features are also available or accessible
by Sam or to the Sam templates.
Continuing with the benefits built in best practices what do we mean by using Sam you can define and
deploy the service application infrastructure as conflict.
So it's a configuration file it's a template that defines all your severance application.
This means we can facilitate the enforcement of best practices and one example of that is code review.
Also with a few lines of configuration safe deployments can be enabled through code deployment as we
learned later on could deploy is built and you can enable it you can run it so you can test or you can
launch your software or your deployment safely and you can also enable X-ray tracing by few lines also.
So the built in best practice.
Basically you can used services from NWS you can use functions for readable years you can use deployment
tools in order to ensure that your code or the several application is safely correctly following the
best practices local debugging and testing.
We talked about the fact that you can use it to debug so that something like allows for locally building
testing and debugging several applications that are defined by some templates.
What do you mean by locally so on your machine but the whole thing is not yet on.
It's locally in your machine.
You can test it you can verify it you can debug it until you are sure that everything is thumbs up then
you can move into the deployment phase where you move that into a WS one of the benefits of using Sam
is the deep integration between Italy as Sam and the Italy as development tools and it can be used with
these integrated services in order to facilitate and ensure the safe deployment the continuous deployment
the automation of your several applications.
So taking advantage of that integration then new applications in database servers application repository
can be discovered and we'll talk about the applications the several application repository in a few
slides for authoring testing and debugging Sam B several applications you can use a nebulous cloud nine.
So that is also integrated with BSM to build a deployment pipeline for service applications you could
build could the could deploy and could pipeline and it obvious could star which is again from the developer
database development tools can be used to get started with the project structure how the project would
look like code repository and see ICD pipelines that are automatically configured for you right.
So that was about it obvious Sam as an introduction but we'll dig a little bit deeper as it is one of
the important topics.
And since server Atlas is the hottest thing that everyone is talking about now and event driven infrastructures
then E.W. as Sam is the automation that you can use the simplification of how you can build test package
and deploy several applications and that's where its importance comes from.
So let's take a break and come back and continue with Ws.
Sam I'll see you after the break.
Thank you.