- Building Serverless Web Applications
- Diego Zanon
- 231字
- 2021-07-15 17:31:23
Constraints
If you go serverless, you need to know what the vendor constraints are. For example, on AWS, you can't run a Lambda function for more than 5 minutes. It makes sense because if you spend long time running code, you are using it the wrong way. Serverless was designed to be cost efficient in short bursts. For constant and predictable processing, it will be expensive.
Another constraint on AWS Lambda is the number of concurrent executions across all functions within a given region. Amazon limits this to 1,000. Suppose that your functions need 100 milliseconds on average to execute. In this scenario, you can handle up to 10,000 users per second. The reasoning behind this restriction is to avoid excessive costs due to programming errors that may create potential runways or recursive iterations.
AWS Lambda has a default limit of 1,000 concurrent executions. However, you can file a case into AWS Support Center to raise this limit. If you say that your application is ready for production and that you understand the risks, they will probably increase this value.
When monitoring your Lambda functions using Amazon CloudWatch (more in Chapter 10, Testing, Deploying, and Monitoring), there is an option called throttles. Each invocation that exceeds the safety limit of concurrent calls is counted as one throttle. You can configure a CloudWatch alert to receive an e-mail if this scenario occurs.
- Java高并發核心編程(卷2):多線程、鎖、JMM、JUC、高并發設計模式
- Microsoft Dynamics 365 Extensions Cookbook
- HTML5入門經典
- Python極簡講義:一本書入門數據分析與機器學習
- 微服務架構深度解析:原理、實踐與進階
- Building Serverless Architectures
- Bitcoin Essentials
- 數據結構與算法詳解
- Improving your Penetration Testing Skills
- Laravel 5.x Cookbook
- Mastering Magento Theme Design
- 精通Oracle 12c 數據庫管理
- Java EE框架開發技術與案例教程
- 深度剖析ApacheDubbo核心技術內幕
- IBM Cognos TM1 Cookbook