函数计算因为数据量过大超时的解决方案

本文涉及的产品
函数计算FC,每月15万CU 3个月
日志服务 SLS,月写入数据量 50GB 1个月
简介: 我现在做的事情是把一个webtrack 的logstore 通过函数计算导入到另外一个logstore。函数计算的功能是把IP解析成地理位置和把UserAgent String解析成设备信息。 现在的问题是FunctionComputeServer有时会time out失败,但是失败后数据任然是成功插入的。
我现在做的事情是把一个webtrack 的logstore 通过函数计算导入到另外一个logstore。函数计算的功能是把IP解析成地理位置和把UserAgent String解析成设备信息。 
现在的问题是FunctionComputeServer有时会time out失败,但是失败后数据任然是成功插入的。不过ETL认为任务失败,不断重试,最后导致插入大量重复的数据。 
现在有一个解决方案就是减少函数的输入数据,这样就可以避免超时,不过我有一些问题。 
第一个问题:唯一能影响函数的输入数据量的设置只有函数的执行频率吗?我可以准确的指定输入量吗?
阿里答复:完备的触发器角度应该是要同时支持:size-based trigger、time-based trigger两种模式,但因为日志服务没有办法从流式数据订阅接口获取准确的日志条数,所以size-based trigger目前提供不了。抱歉。
第二个问题:因为这是个webtrack logstore,每个时间点的logstore产生量是不稳定的。我如何评估产生的shard数目和大小?有没有什么地方可以查看?有没有什么办法可以提前测试函数计算的 performance这样可以帮助我觉得合适的内存和超时设置?如果靠生产环境里面的情况来做决定,我只能等出了问题在尝试修改,那个时候已经太晚了。 
阿里答复: 一个shard支持5MB/s的数据写入,logstore的流量指标可以在这里看到:https://help.aliyun.com/document_detail/28971.html?spm=a2c4g.11174283.6.693.6IikRd。云监控中的指标应该可以通过sdk方式获取的,你可以基于这个值提前做shard分裂来扩容。


建议解决方案:
1. 将shard数目按照峰值情况进行预留
2. 将日志服务触发器的触发间隔设置为3秒,函数计算的超时间隔设置得高一些(比如2分钟)。我的考虑是:一般来说,函数偶尔超时,后续是可以慢慢赶上进度的(削峰填谷),我们容忍偶尔的超时(计算+IO作业,延时不太可控)。但如果一直超时,说明shard流量过高(分裂shard解决)或者是计算复杂度高(在函数端增加并发)。
3. 日志服务写数据本身是非幂等行为,例如在函数重复执行或者写入数据超时重试时可能引起数据重复。这个问题根本上难以解决,降低重复概率的一个可选方案是:在函数计算里面将本次已处理的数据saved_cursor记录到外部系统(例如表格存储),如果函数超时后再次执行,从表格存储获取上次处理进度,跳过已处理的部分数据,从saved_cursor位置继续开始处理。  
相关实践学习
【文生图】一键部署Stable Diffusion基于函数计算
本实验教你如何在函数计算FC上从零开始部署Stable Diffusion来进行AI绘画创作,开启AIGC盲盒。函数计算提供一定的免费额度供用户使用。本实验答疑钉钉群:29290019867
建立 Serverless 思维
本课程包括: Serverless 应用引擎的概念, 为开发者带来的实际价值, 以及让您了解常见的 Serverless 架构模式
相关文章
|
14天前
|
消息中间件 缓存 Serverless
在进行实时数据处理时,FaaS 如何保证数据的一致性和处理的实时性?
在进行实时数据处理时,FaaS 如何保证数据的一致性和处理的实时性?
|
2月前
|
消息中间件 关系型数据库 Serverless
函数计算驱动多媒体文件处理解决方案
《告别资源瓶颈,函数计算驱动多媒体文件处理》方案利用函数计算解耦文件处理与核心应用,提升高并发处理效率和服务稳定性。体验测评显示,文档引导相对全面但部分细节可优化;代码示例有实用性,但可能遇到环境配置等问题;函数计算性能、稳定性和成本满足需求,适合企业上云;云产品如函数计算功能强大、操作便捷,对象存储与其他服务集成良好,云服务器和数据库提供可靠支持。该方案虽有改进空间,但整体值得推荐,能为多媒体文件处理提供高效、稳定且成本可控的选择。
193 85
|
6天前
|
运维 Serverless 数据处理
Serverless架构通过提供更快的研发交付速度、降低成本、简化运维、优化资源利用、提供自动扩展能力、支持实时数据处理和快速原型开发等优势,为图像处理等计算密集型应用提供了一个高效、灵活且成本效益高的解决方案。
Serverless架构通过提供更快的研发交付速度、降低成本、简化运维、优化资源利用、提供自动扩展能力、支持实时数据处理和快速原型开发等优势,为图像处理等计算密集型应用提供了一个高效、灵活且成本效益高的解决方案。
31 1
|
13天前
|
人工智能 弹性计算 监控
触手可及,函数计算玩转 AI 大模型解决方案
阿里云推出的“触手可及,函数计算玩转 AI 大模型”解决方案,利用无服务器架构,实现AI大模型的高效部署和弹性伸缩。本文从实践原理、部署体验、优势展现及应用场景等方面全面评估该方案,指出其在快速部署、成本优化和运维简化方面的显著优势,同时也提出在性能监控、资源管理和安全性等方面的改进建议。
42 5
|
15天前
|
人工智能 自然语言处理 监控
体验《触手可及,函数计算玩转 AI 大模型》解决方案测评
本文介绍了《触手可及,函数计算玩转 AI 大模型》解决方案的测评体验。作者对解决方案的原理理解透彻,认为文档描述清晰但建议增加示例代码。部署过程中文档引导良好,但在环境配置和依赖安装上遇到问题,建议补充常见错误解决方案。体验展示了函数计算在弹性扩展和按需计费方面的优势,但需增加性能优化建议。最后,作者明确了该方案解决的主要问题及其适用场景,认为在处理大规模并发请求时需要更多监控和优化建议。
29 2
|
19天前
|
人工智能 弹性计算 运维
《触手可及,函数计算玩转 AI 大模型》解决方案测评
对《触手可及,函数计算玩转 AI 大模型》解决方案的整体理解较好,但建议在模型加载与推理过程、性能指标、示例代码等方面增加更多细节。部署体验中提供了较详细的文档,但在步骤细化、常见问题解答、环境依赖、权限配置等方面有改进空间。解决方案有效展示了函数计算的优势,建议增加性能对比、案例研究和成本分析。方案基本符合生产环境需求,但需增强高可用性、监控与日志、安全性和扩展性。
|
19天前
|
人工智能 弹性计算 运维
《触手可及,函数计算玩转 AI 大模型》解决方案深度评测
本次评测全面评估了《触手可及,函数计算玩转 AI 大模型》解决方案,涵盖实践原理理解、文档清晰度、部署体验、优势展现及生产环境适用性。方案通过函数计算实现AI大模型的高效部署,但模型加载、性能指标和示例代码等方面需进一步细化。文档需增加步骤细化、FAQ、性能指标和示例代码,以提升用户体验。部署体验方面,建议明确依赖库、权限配置和配置文件模板。优势展现方面,建议增加性能对比、案例研究和成本分析。此外,为满足实际生产需求,建议增强高可用性、监控与日志、安全性和扩展性。
28 2
|
21天前
|
运维 Serverless 数据处理
Serverless架构通过提供更快的研发交付速度、降低成本、简化运维、优化资源利用、提供自动扩展能力、支持实时数据处理和快速原型开发等优势,为图像处理等计算密集型应用提供了一个高效、灵活且成本效益高的解决方案。
Serverless架构通过提供更快的研发交付速度、降低成本、简化运维、优化资源利用、提供自动扩展能力、支持实时数据处理和快速原型开发等优势,为图像处理等计算密集型应用提供了一个高效、灵活且成本效益高的解决方案。
54 3
|
20天前
|
人工智能 弹性计算 自然语言处理
《触手可及,函数计算玩转 AI 大模型》解决方案体验与部署评测
在AI技术快速发展的背景下,大模型正推动各行业的智能化转型。企业为抓住机遇,纷纷寻求部署AI大模型以满足特定业务需求。阿里云函数计算凭借按量付费、卓越弹性和快速交付等优势,为企业提供了高效、安全的AI大模型部署方案。本文将详细介绍阿里云函数计算的技术解决方案及其在文生文、图像生成和语音生成等领域的应用实例,展示其在降低成本、提高效率和增强灵活性方面的显著优势。
|
2月前
|
人工智能 弹性计算 运维
评测报告:《触手可及,函数计算玩转 AI 大模型》解决方案
本次评测聚焦于《触手可及,函数计算玩转 AI 大模型》这一解决方案。该方案旨在通过云上的函数计算服务来简化AI大模型的部署过程,使得用户可以更加便捷地利用这些强大的AI能力。本报告将从实践原理的理解、部署体验、优势展现以及实际应用等四个方面进行综合评估。
59 15