函数工作流 FUNCTIONGRAPH-Redis连接池
Redis连接池
pool = BlockingConnectionPool(host=redis_host, port=redis_port, password=redis_password, max_connections=50, timeout=3, socket_timeout=2, socket_connect_timeout=2, retry=retry, retry_on_error=[BusyLoadingError, ConnectionError, TimeoutError], health_check_interval=60, decode_responses=True)
使用Redis连接池进一步复用已创建的连接,有效提升程序性能;同时,Redis提供了最大连接数配置确保连接资源的使用保持在一个可控范围内,并且能够确保线程安全。
最大连接数配置区间:在FunctionGraph函数配置Redis最大连接数建议在如下区间选取一个值:
- 最大连接数下限 =(函数单实例并发度)*(函数单次执行访问Redis并发度)
- 最大连接数上限 =(Redis实例连接数上限)/(函数最大实例数)
举例:某个访问Redis函数单实例并发度配置为5,每次执行函数访问Redis并发度为2,函数最大实例数默认400,访问的Redis实例连接数上限为30000,计算如下:
最大连接数下限 = 5*2 = 10
最大连接数上限 = 30000/400 = 75
按上述结果,建议最大连接数配置50即可。
连接池耗尽后获取连接的最大等待时间:不要超过函数执行超时时间,避免因连接池耗尽后获取连接等待导致函数执行超时。如果需要快速失败将BlockingConnectionPool替换成ConnectionPool,并删除timeout配置即可。
- 什么是函数工作流_functiongraph是什么_函数工作流服务
- 什么是函数工作流_函数托管计算服务_函数工作流 FunctionGraph-华为云
- 函数工作流可以做什么_函数工作流有什么优势_函数工作流 FunctionGraph-华为云
- 函数工作流使用流程_Serverless_函数工作流 FunctionGraph-华为云
- 使用函数工作流资源成本降低70%_函数能力_函数工作流 FunctionGraph-华为云
- 函数工作流FunctionGraph支持毫秒级响应文件处理_函数工作流_华为云FunctionGraph-华为云
- 使用SpringBoot构建HTTP函数_functiongraph_函数工作流
- 数据转发至函数工作流_数据处理_FunctionGraph处理流数据
- 函数工作流自动更新ECS证书_ECS证书自动更新_弹性云服务器
- 调用函数_函数调用方式_函数工作流 FunctionGraph-华为云