Do you know the Serverless Development and Deployment Best Practices? - PowerPoint PPT Presentation

About This Presentation
Title:

Do you know the Serverless Development and Deployment Best Practices?

Description:

Serverless has streamlined the application development process so much that it has made up the minds of many, including you, to go serverless. However, simply determining to go serverless is not adequate. When it comes to serverless architecture, you need to follow some structured practices in order to deploy applications for rapid application development, maintain application security, and minimize bugs. DataVizz has been working on serverless for quite a few years. And, with the knowledge we gained in the process, we have stepped ahead to list the best practices of serverless application development as well as Deployment. Starting serverless app development can bag you a good amount of time. On the contrary, when Lambda starts getting intricate, you might have to make several optimizations to the functions code as well as configuration. – PowerPoint PPT presentation

Number of Views:3
Slides: 15
Provided by: datavizz
Category: Other

less

Transcript and Presenter's Notes

Title: Do you know the Serverless Development and Deployment Best Practices?


1
Serverless Development and Deployment Best
Practices
2
  • Serverless has streamlined the application
    development process so much that it has made up
    the minds of many, including you, to go
    serverless. However, simply determining to go
    serverless is not adequate.   
  • When it comes to serverless architecture, you
    need to follow some structured practices in order
    to deploy applications for rapid application
    development, maintain application security, and
    minimize bugs.    
  • DataVizz has been working on serverless for quite
    a few years. And, with the knowledge we gained in
    the process, we have stepped ahead to list the
    best practices of Serverless Development as well
    as Deployment.   
  • If you have weighed serverless as a serious
    business, following these best practices would
    make a significant contribution to it.   

3
Serverless Application Development
  • Serverless computing implies a method wherein
    developers get to build applications without
    having to manage the infrastructure.  
  • The face of application development has not only
    changed but also enhanced with serverless
    technologies. When using a serverless model, you
    can   
  • Eliminate server issues   
  • Write shorter codes   
  • Increase core development period

4
  • In a nutshell, serverless lets developers focus
    more on writing codes and not worry about the
    maintenance and management of servers. Even so,
    servers are still used, the developers need not
    look after the infrastructure. Once the code is
    written, the cloud service provider shall look
    after the rest.
  • In order to develop serverless applications, the
    developers need to write serverless codes without
    provisioning a server, ensuring functionality,
    maintaining server uptime, and creating test
    environments. All these tedious responsibilities
    are on the shoulders of the service providers.   
  • It wouldnt be surprising to say that Serverless
    is one of the oldest, yet, robust deployment
    frameworks for serverless applications.  
  • Building applications using Lambda facilitates
    speedy application development. Unlike in the
    server-based model, as mentioned earlier, you can
    write a small percentage of codes.     

5
What is Serverless Framework?
  • The Serverless Framework is an open-source
    framework that is written using Node.js. The
    first framework developed for building
    applications is Serverless. It was built on AWS
    Lambda, which is a serverless computing platform.
    AWS Lambda is a part of the Amazon web
    Services.    
  • The serverless app aids lambda functions to
    accomplish tasks as well as supports all runtimes
    within the selected cloud service provider. The
    serverless framework aids you in developing as
    well as deploying AWS Lambda functions with the
    AWS infrastructure resources.   
  • If you ask how the Serverless Framework is
    different and above the rest, heres the
    answer   
  • Serverless Framework not only manages your codes
    but also your infrastructure   
  • Serverless Framework supports more than one
    language such as Java, Python, Node.js, and so
    on.   

6
Best Practices
  • Now that you are through Serverless Development
    and Serverless framework, you are all set to
    learn the best practices of Serverless. However,
    remember that the best practices may differ
    because of different operating models and many
    other reasons.   

For Development   
Let us first begin with the best practices for
serverless development   
Go Local foremost
Starting serverless app development can bag you a
good amount of time. On the contrary, when Lambda
starts getting intricate, you might have to make
several optimizations to the functions code as
well as configuration.          
7
  • Now, every tweak you make eventually increases
    the waiting period for code deployment and lets
    the stack go live. And, as a developer, you have
    to save your time, as much as possible (We dont
    even need to say that).   
  • Therefore, instead of running your development
    cycle as 1. Save 2. Open Console 3. Deploy 4.
    Wait 5. Refresh 6. Wait, you can consider
    switching the cycle to   
  • Save   
  • Build   
  • Refresh   
  • Moreover, the lambdas, API endpoints, and many
    more can be cloned in the local Docker container
    by the AWS Serverless Application Model.

8
Practice 1 Function at a time
  • Did you know that single function proxy has
    isolated issues and that it does not scale well
    with HTTP?   
  • Now that you know, heres something more. When
    the function of a set of routes is sternly joined
    to a single table, it gets detached from the
    serverless application.    
  • You might have got one additional layer of
    complicacy. However, if it helps in sealing-off
    issues and errors while scaling your serverless
    application, isnt it worthwhile?   

9
Quit Overwriting Codes
  • If you are new to the Serverless Framework,
    heres something you should know   
  • In a Serverless Framework, JavaScript is the
    supreme language.   
  • Therefore, when you write codes in JavaScript,
    they shall be interpreted as well as executed in
    the best possible way. If you face a performance
    issue, do understand that overwriting codes is
    not the way to solve it. Rather, you can   
  • Reverse useful error data   
  • Pause loops   
  • Merge several requests   
  • Execute Load Testing   

10
For Deployment   
  • In a serverless environ, you may have to deal
    with intricate applications. Besides, you may not
    be advised of the dependencies that failed to
    perform a function extensively, within your
    application.    
  • In order to know the optimal timeout value, you
    can consider load testing your lambda functions.
    It can also help you determine memory
    allocation.    
  • Load testing can potentially aid you in pointing
    out the potential issues that could be critical
    in sustaining application uptime.   

And now we would detail the best practices for
serverless deployment 
11
Deal well with Secrets
  • Your applications must be able to securely deal
    with database credentials. API keys, or other
    such secrets. And, when we term it as dealing, it
    implies storing as well as accessing the secrets
    effectively.    
  • Although there are many components of this, some
    of the most vital ones are   
  • Practising unique secrets at different
    application stages (at least wherever
    applicable)   
  • Confining accessibility to secrets   
  • Protecting secrets away from source control   
  • Employing environment variables for configuration
    (with Lambda)   
  • Moreover, you can add various parameters thatll
    let you configure secrets across application
    stages, AWS accounts, and services.    

12
Limit Deployment Period
  • Did you know that you can lock your deployments
    for a definite period? Irrespective of the time
    range you choose, and the reason you wish to lock
    it, you can inspect your readable serverless
    file, as well as the Cloud Formation
    templates.   

Define Stages and Regions  Conventions help
developers understand a set of standards while
learning about other parts of a system. One such
universal convention is that there is a separate
place for code and another one for the developers
that are not ready for the customers yet. These
are known as stages. With stage configuration you
can determine the region stages or AWS account
deployment, the parameters and secrets used, etc.
It lets you block development stage deployments,
and do much more to support your requirements.    
13
Name and Describe Functions
While managing stages and regions, naming and
describing functions in your infrastructure can
do wonders. By doing so, you can ensure that your
lambda functions have a consistent name, stage,
and function. Also, it will help you find
relevant functions, provided they belong to the
same AWS account. In simple terms, when you name
and describe the functions, youll precisely know
what to call the function you are looking for.  
  • If you are working with a team that is scattered
    across boundaries, the default AWS region for
    different developers would be different. These
    differences can potentially create issues in your
    coding or might include other such limitations.
    To prevent this from happening, you along with
    other developers can employ a single region or a
    division of regions, as per your requirements.
    You need to specify the allowed regions by which
    you are ensured of servicing to that specific
    region or list of regions.   

14
Food for Thought   
  • Employing a Serverless Framework for developing
    applications is the contemporary course of
    application development. Serverless applications
    take away the burden of managing servers from the
    developers shoulders and shall allow you to
    focus on your application code. Now that we
    covered some of the best practices for developing
    and deploying serverless applications, you would
    be pumped up to get your hands on serverless.
    Before you start, know whether you should go
    serverless or you should not, right here.

Contact Us  https//www.datavizz.in 
Write a Comment
User Comments (0)
About PowerShow.com