- Building Serverless Web Applications
- Diego Zanon
- 203字
- 2021-07-15 17:31:24
Atomic deploys
Deploying a new version of a serverless function is easy. You update the code and the next time that a trigger requests this function, your newly deployed code will be selected to run. This means that, for a brief moment, two instances of the same function can be executed concurrently with different implementations. Usually, that's not a problem, but when you deal with persistent storage and databases, you should be aware that a new piece of code can insert data into a format that an old version can't understand.
Also, if you want to deploy a function that relies on a new implementation of another function, you need to be careful in the order that you deploy those functions. Ordering is often not secured by the tools that automate the deployment process.
The problem here is that current serverless implementations consider that deployment is an atomic process for each function. You can't batch deploy a group of functions atomically. You can mitigate this issue by disabling the event source while you deploy a specific group, but that means introducing downtime into the deployment process. Another option would be to use a Monolith approach instead of a Microservices architecture for serverless applications.
- HornetQ Messaging Developer’s Guide
- 玩轉Scratch少兒趣味編程
- Java編程指南:基礎知識、類庫應用及案例設計
- 軟件測試項目實戰之性能測試篇
- Django:Web Development with Python
- VSTO開發入門教程
- Linux操作系統基礎案例教程
- SQL經典實例(第2版)
- Machine Learning in Java
- Python Interviews
- 會當凌絕頂:Java開發修行實錄
- Lync Server Cookbook
- Building Scalable Apps with Redis and Node.js
- 開發者測試
- ACE技術內幕:深入解析ACE架構設計與實現原理