Introduction to Serverless Applications
SalesforceSummaries is a publication that delivers the key insights from Salesforce YouTube videos. We aim to be the getAbstract.com of Salesforce tutorial videos. These publications will save you time as you keep up to date with the latest technological changes within the Salesforce ecosystem.
Serverless architecture is a new and emerging technology paradigm that is incredibly powerful and will help to democratize cloud computing.
Details: ‘Introduction to Serverless Applications’
Presenter: Austen Collins
Details: 65 minutes
Key Terms: Serverless, micro-services, cloud computing
- @1.00 — The agenda of this presentation is:
2. @4.30 — Getting stuff done is hard. Reducing the time it takes to get stuff done is incredibly valuable.
3. @6.40 — The invention of the cloud was a game changer. ‘Why should you own and maintain infrastructure? Why not just rent the virtual capacity instead? Why not interact with our services programmatically via our APIs?’. This was a huge innovation.
However, there is still a lot of scaling problems to be solved, like when Black Friday happens and millions view your site at once. Or when you have AWS bill and you’re not even using half of its features.
4. @10.50 — Serverless is a chapter in cloud history. It’s an evolution from virtual infrastructure. Serverless answers the question ‘how can we offer the infrastructure without the cost and current issues’.
5. @11.00 — Today is the golden age of delivering value at a low cost.
6. @12.00 — Heroku had the great concept of the ‘dyno’ when scaling. You can scale up as much as you require with additional cloud computing credits (dynos). But serverless is evolving that further asking ‘why do you even need to scale up or down in the first place? Let’s remove that constraint. You shouldn’t have to think about scaling — you should just be able to think about solving problems’.
7. @13.00 — The big drawer of serverless is ‘pay per use’. If you put your code on ‘serverless compute’, then you only pay when your code runs. If your code runs for 1 ms, then your cost is 0.000001 cent.
8. @14.10 — The AWS Lambda started the ‘serverless’ trend in 2014.
9. @16.00 — Also, the code you upload can be event driven. You can have it run automatically whenever certain infrastructure in your AWS stack happens. So half the value comes from how well it integrates with other technologies in the AWS stack and also the other half is in how efficient the code runs.
10. @17.05 — Once the success of Lambda took off, AWS started to refactor and produce a lot of other services that have serverless qualities. These are the most efficient building blocks that you can leverage to build applications.
11. @19.45 — These serverless services are like superpowers. You can leverage services to convert text to audio, real time processing of video, perform facial recognition etc. This is the golden age of the developer.
12. @21.00 — These are the types of serverless services which AWS customers are building.
13. @22.15 — Chatbots are very popular. Again, you won’t be charged for your chatbots until they are being used.
14. @23.00 — Because this technology is so powerful, it attracts all types of use cases. It is liberating a lot of creativity that was previously suppressed due to overhead.
15. @23.40 — One of the most compelling stories that demonstrate the power of serverless technology can be found here. The Australian government in 2016 contracted IBM to build an online census survey that would scale. The cost for this was just over $9 million. The Australian government spent about 5x that amount on marketing urging Australians to complete the census online during a particular time period. Unfortunately, the survey was not serverless and so because the demand was so high during the certain time period, the website crashed. Relatively little data was successfully captured and a huge fallout occurred.
A few days after the calamity, two university students built a replica using AWS serverless technology in less than 72 hours for less than $200 that scaled flawlessly and was able to handle even more than what the estimated demand requirement was for the census survey. In fact, they load tested the survey with 4 million page views per hour and 10,000 submissions per second. Although no data verification, audit trail or full logging functionality was implemented (which would reduce performance), it does clearly demonstrates the power of serverless technology — it makes the power of the cloud accessible to everyone.
16. @28.00 — It is tricky to leverage all the different cloud technologies into a serverless application.
17. @28.55 — In the AWS dashboard, you are presented with numerous products and it can be overwhelming. This is something that Heroku has done so well on — they answered the question ‘there has got to be an easier way to do this stuff’.
18. @29.30 — The serverless framework is one of the most popular open source projects today and is an effort to make AWS more accessible.
19. @31.00 —The serverless framework solves the following:
20. @32.00 — Serverless is vendor agnostic. You can use AWS or Google or Azure etc. Different vendors may have different specialities. For example, Google is very strong in machine learning.
21. @32.50 — The Serverless framework is a CLI written in node.js. The goal is to help you to deploy something as fast as possible without having to look at the AWS dashboard at any point.
22. @33.10 — Serverless is a story of functions and events. It is an aggregation of plugins. This configuration file will setup a backend of your application.
23. @34.00 — Serverless comes with a number of different functions:
24. @34.30 — The serverless framework comes with all types of languages:
25. @35.00 — There are hundreds of serverless plugins that have been created courtesy of the fantastic open source community.
26. @58.00 — There is a huge demand for moving to serverless architecture. Companies like Nike and Coca-Cola already have adopted serverless architecture.
27. @61.00 — This architecture is micro-service architecture. ‘Let’s try to separate every single piece of logic in our application so that there will be no risk to the system overall if a swathe of changes are made’.