Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Messaging without servers

91 views

Published on

Presentation for Particular discussing the hows and whys of using serverless messaging on Azure AWS and a little bit GCP.

Published in: Software
  • Be the first to comment

  • Be the first to like this

Messaging without servers

  1. 1. MESSAGING WITHOUT SERVERS BUILDING MESSAGING ON THE CLOUD
  2. 2. MESSAGING ON PREMISE
  3. 3. SERVER CLOSEST THAT LOOKED LIKE THIS
  4. 4. NOW LOOK LIKE THIS
  5. 5. MESSAGING SYSTEMS  Azure  Event Grid  Event Hubs  Service Bus  Storage Queues  GCP  Cloud Pub/Sub  Firebase Messaging  AWS  SQS  Amazon MQ  Amazon SNS  Amazon Pinpoint  Amazon Kinesis Streams  AWS IoT Message broker  Alibaba  AlibabMQ for Apache RocketMQ  AlibabMQ for Apache Kafka  Message Service  Oracle  Who cares?  IBM  See “Oracle”
  6. 6. ADVANTAGES TO CLOUD MESSAGING  Super easy to manage  Generally very reliable  Takes advantage of known cloud constraints  Excellent APIs
  7. 7. NSERVICEBUS CUSTOMERS 5 YEARS AGO  On premise  Fixed hardware provisioning  In house transports like MSMQ, SQL or RabbitMQ
  8. 8. NSERVICEBUS CUSTOMERS IN 5 YEARS  Cloud hosted  Elastic provisioning  Cloud transports like SQS
  9. 9. DEPLOYMENT MODELS Physical Machines Fully owned, responsible for hardware and software Virtual Machines Hardware managed but OS patching owned Kubernetes Responsible for some patching Serverless Fully managed
  10. 10. CLOUD BARE METAL HOSTING  AWS EC2 Bare Metal  IBM Bare Metal Servers  GCP Bare Metal Solution
  11. 11. CLOUD VM HOSTING  AWS EC2  Azure Virtual Machines  GCP Virtual Machines
  12. 12. DISADVANTAGES TO VM APPROACH  Still responsible for patching and updating  Management is largely done by logging into a machine and twiddling with it  Still difficult to scale in a granular way
  13. 13. WHAT ABOUT THAT KUBERNETES THING?
  14. 14. KUBERNETES HOSTING  AWS Elastic Kubernetes Service (EKS)  Azure Virtual Machines (AKS)  Google Kubernetes Engine (GKE)
  15. 15. KUBERNETES VS. SERVERLESS  Kubernetes is the Linga Franca of different clouds  Scaling requires some manual intervention or defining of rules  Minimum unit of scale is a single container  Serverless provides deeper integration with the cloud platforms  Scaling is totally transparent  Minimum unit of scale is 0
  16. 16. WHERE DOES SERVERLESS FIT?
  17. 17. LOW THROUGHPUT ENDPOINTS
  18. 18. UNPREDICTABLE LOAD
  19. 19. SMOOTHING PEAKS
  20. 20. BOOTSTRAP WITHOUT INVESTMENT
  21. 21. BUILD YOU ENTIRE SYSTEM ON SERVERLESS
  22. 22. HOW NSERVICEBUS HELPS  Preview packages available for both Azure Functions and AWS Lambdas  Helps with serialization and deserialization  Makes handling multiple message types easy  Handles batching  Facilitates transactional processing with outbox
  23. 23. CODE - LAMBDA
  24. 24. CODE - FUNCTIONS
  25. 25. SERVERLESS GOTCHAS  May scale beyond the capabilities of your other services  May be more expensive than deploying to VMs  Some restrictions on what can be run  Time limits on processing  Runtimes are specific to the cloud on which they run  Messaging semantics can be difficult to understand
  26. 26. CODE - NSERVICEBUS
  27. 27. PRICING FOR NSERVICEBUS ACCOUNTS FOR SERVERLESS SCENARIOS
  28. 28. Q & A
  29. 29. CATCH UP WITH ME  Weekly episodes of ASP.NET Monsters https://www.youtube.com/c/Aspnetmonsters  Occasional blogging https://aspnetmonsters.com/ https://blog.simontimms.com/  Complaining about anything and everything on Twitter @stimms

×