Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Intro to Serverless

Intro to Serverless

Spreading the magic of serverless! How did we get here? Evolution of cloud models and architectures. Tenets of serverless computing. Use cases and challenges. Comparing costs for serverless vs traditional setup.

Rupak Ganguly

January 15, 2019
Tweet

More Decks by Rupak Ganguly

Other Decks in Technology

Transcript

  1. @rupakg rupakganguly.com Intro to Serverless basic understanding of serverless computing

    and why you should be interested Jan 15th, 2019 IT Workshop, Atlanta Rupak Ganguly
  2. @rupakg rupakganguly.com Intro to Serverless basic understanding of serverless computing

    and why you should be interested • Evolution • Tenets of serverless computing • Use cases & challenges • Serverless costs compared We will look at:
  3. serverless architecture shortest time to market greater developer productivity lowest

    total cost of ownership values applications run code in FaaS services and leverage other managed services
  4. @rupakg rupakganguly.com zero administration • no servers to maintain •

    no OS upgrades, no patches • renewed role of devops teams • paradigm shift, no ssh • no control over infrastructure
  5. @rupakg rupakganguly.com pay-per-execution • no paying for idle • upfront

    cost savings • micro-billing, per 100 ms * • 1 million requests free tier * • $0.20 per million requests post free tier * * AWS Lambda pricing
  6. @rupakg rupakganguly.com microservices • promotes single responsibility principle based services

    • no more death stars, monolithic apps • varied language support • small, autonomous, polygot teams • agility, quick & frequent deployments
  7. @rupakg rupakganguly.com ecosystem • use provider services • use of

    third-party services • S3, Kinesis, SNS, SQS • DynamoDB, Firebase, GraphQL • Cognito, Auth0, Synk, PureSec • CloudWatch, X-Ray, IOPipe
  8. @rupakg rupakganguly.com auto-scaling • auto scaling Lambda • auto scaling

    DynamoDB • based on load, throughput consumption • no need for auto-scaling group policies • enables high-availability
  9. @rupakg rupakganguly.com event-driven • trigger & respond to events •

    http events (API Gateway) • webhook events • scheduled events • rich ecosystem of event sources
  10. @rupakg rupakganguly.com security • Least privileges across resources • Reduce

    access to sensitive data, handle exceptions and validate input • Avoid embedding secrets, access keys and credentials in code • Throttle and define quotas • Encrypt data on the wire and data stored at rest • Scrutinize 3rd-party libraries & APIs for vulnerabilities • Be aware of new input/event sources guidelines & recommendations
  11. @rupakg rupakganguly.com use cases • real-time/streaming, batch processing: kinesis ->

    lambda • REST APIs, Graph APIs: lambda -> API Gateway endpoint • event-driven workflows, scheduled tasks, data transforms what are others building
  12. @rupakg rupakganguly.com use cases • web, mobile & IoT backends

    • form processing • authentication • devops automation • chatbots • file manipulation • voice apps (Alexa) • ETL workloads • image resizing • video transcoding • security audits • dynamic websites • web hook listeners • CRON jobs • CI/CD pipelines • log analytics what are others building
  13. @rupakg rupakganguly.com challenges • cold start latency, more with VPC

    • price at high volumes • developer experience • limitations • fear of vendor lock-in • application lifecycle management • metrics & monitoring • service discovery • team collaboration • standardization it’s not all rosy
  14. @rupakg rupakganguly.com cost breakdown •direct costs: • pay-per-invocation (no paying

    for idle) • Lambda cost, service(s) cost, data transfer cost, API Gateway cost •personnel costs: • building a devops team is not cheap, and involves a huge learning curve. • ~ 100,000+ per year per engineer https://theburningmonk.com/2019/01/you-are-thinking-about-serverless-costs-all-wrong/ measurable costs
  15. @rupakg rupakganguly.com •overhead costs: • delegate ops responsibilities to your

    cloud provider reduced responsibilities for devops team • frees developers to focus on building business functionality •opportunity costs: • ability to iterate faster & business can test ideas faster than competitors https://theburningmonk.com/2019/01/you-are-thinking-about-serverless-costs-all-wrong/ cost breakdown non-measurable costs
  16. @rupakg rupakganguly.com resources • Blog: rupakganguly.com • Projects: github.com/rupakg •

    Serverless Blog: serverless.com • Serverless Framework: https://github.com/serverless/ serverless further reading