- 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.
- Learn ECMAScript(Second Edition)
- Computer Vision for the Web
- MATLAB圖像處理超級學(xué)習(xí)手冊
- Learning SQLite for iOS
- 數(shù)據(jù)結(jié)構(gòu)(Python語言描述)(第2版)
- Mastering Apache Spark 2.x(Second Edition)
- 高級語言程序設(shè)計(C語言版):基于計算思維能力培養(yǎng)
- Scala編程(第5版)
- 人工智能算法(卷1):基礎(chǔ)算法
- Appcelerator Titanium:Patterns and Best Practices
- SSH框架企業(yè)級應(yīng)用實戰(zhàn)
- DB2SQL性能調(diào)優(yōu)秘笈
- PHP Microservices
- 基于MATLAB的控制系統(tǒng)仿真及應(yīng)用
- Getting Started with JUCE