guide icon indicating copy to clipboard operation
guide copied to clipboard

Serverless Guide - An open-source definitive guide to serverless architectures.

Serverless Guide

Authored by the community, curated by Serverless, Inc.

Vision

This is your definitive guide to serverless architectures. Inside, you will find everything you need to know about serverless development and how to be a serverless organization: patterns, best practices, case studies and everything in-between.

Aside from implementation, this guide is a collection and discussion of concerns around the state and maturity of serverless. A lot is being written about serverless technology all over the web, and right now that information is fragmented. As a community, we’re bringing it together.

The goal is to create a one-of-a-kind, trusted resource for developers, architects and thought leaders. This should be a valuable resource that will help drive adoption and innovation of serverless architectures.

Are you with us? We want you to be part of this journey.

Table of Contents

  • Introduction

    • The Evolution
    • What Is Serverless?
    • Serverless In The Cloud Computing Paradigm
    • Serverless vs. PaaS
  • Architecture

    • A Look Back
      • The Monolithic Architecture
      • The Service Oriented Architecture
      • The Microservices Architecture
    • The Serverless Architecture
      • Patterns for Partitioning Code
  • Adoption

  • Development

    • Culture
    • Pathway to Serverless Development
    • Project Structure
    • Deployment
    • Testing
      • Unit Testing
      • Integration Testing
    • Debugging
    • Examples
  • Toolsets

    • Frameworks
      • Apex
      • Chalice
      • Serverless Application Model (SAM)
      • Serverless Framework
  • Operations

  • Security

    • General
      • What are the new concerns and challenges?
      • Are existing security best practices relevant?
    • Pros Of Serverless
    • A Dynamic Attack Surface Area
    • Data At Rest And Data In Transit
    • Application Vulnerabilities
    • Access Management
    • Access Segmentation
    • Best Practices
  • Providers

    • Commercial Hosted Platforms
      • A Comparative Look
      • AWS Lambda
      • Azure Functions
      • Google Cloud Functions
      • IBM Cloud Functions
    • Opensource Platforms
      • A Comparative View
      • Kubeless
      • Apache OpenWhisk
      • OpenFaaS
  • Case Studies

  • Glossary

eBook

Read the ebook version instead? Check out the pdf, epub and mobi versions. Thanks @warren-bank.

What Will Be Covered

  • Intro to Serverless: A little bit of history, evolution, misconceptions around serverless
  • Benefits: Get into why serverless, its benefits and characteristics
  • Adoption: Insight into the adoption by enterprises and the tech communtiy in general
  • Architecture: Discussions around serverless architecture, FaaS, evolving patterns and solutions
  • Security: Auth. services, access controls, surface areas for attack, data isolation...
  • Development, Deployment & Testing: Rethinking around developing, deploying and testing serverless applications and services
  • Toolsets: Evolving toolsets, frameworks and methodologies
  • Changing DevOps: A look into the changing roles of DevOps teams and the mindshift
  • Challenges: Concerns around debugging, logging, and monitoring, of serverless applications
  • Providers: A comparative look at the serverless providers out there
  • Case Studies: Examples of real-life implementations of serverless technologies

How to Contribute

  • Are you excited about the serverless movement and talk about its future?
  • Do you have an example of a serverless usecase that you want to highlight?
  • Are you a developer who has expertise in a particular serverless provider?
  • Do you work for a provider and see some inconsistencies in the content?
  • Is there an architectural pattern that you feel solves a specific usecase?
  • Do you have a success story that you would like to share?
  • Have you been successful with a specific vendor or a platform?
  • Do you have an opinion/quote that you would like to share?

Then you have lots to share with the community.

We want your contributions to this guide. We would like you to bring in your expertise to showcase them in this guide. We are aiming to create a world-class guide that excites everyone to join the serverless movement. We feel we can achieve that by creating authentic content that is driven by the community. See the contributor guidelines and the contributor code of conduct for details.

Credits

To recognize your contributions to the guide, we encourage you to add your name to the Credits section on a page. We will add you to the 'Guide Authors' team on our Github org. You also get our serverless badge serverless for your Github profile.

Get in Touch

We would love to have your feedback. Or, if you have any questions, please let us know at [email protected].

License

Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.

Thanks in Advance

The serverless guide is a community-driven effort, and we thank you for your contributions.

Thanks,

The Serverless Team