什么是通用计算
通用计算(以下简称UGC)是一项无需管理服务器(Serverless)的大规模分布式并行计算服务,您只需要将集成了您代码的docker镜像上传至UGC镜像仓库,便可通过API多次提交针对该镜像的计算任务 ,UGC负责调度和管理用来运行您业务的服务器集群,拉起docker镜像以运行您的代码。
UGC目前支持两种计算任务的调用方式:
- 同步调用,您需要在提交任务时将Task Type参数设置为同步任务,在计算任务结束后,UGC会将响应立即返回给调用方;对于有高时效要求的业务,我们推荐使用同步任务。同步任务最大运行时间限制为5分钟。
- 异步调用,您需要在提交任务时将Task Type参数设置为异步任务,任务提交成功后,UGC会立即返回TaskId,您可以根据TaskId获取计算结果;相对于同步任务,异步任务更适合离线计算。异步任务最大运行时间限制为24小时。
UGC只在必要的时候拉起您的docker镜像,并按照您实际消耗的计算资源扣费,时间精确到核/毫秒。
您可以将您业务中有并行计算的模块拆分出来,打包部署到UGC,以便轻松应对小到每天几十次,大到每秒数千次的请求,UGC的集群规模高达十万核,根据您的需求运行代码并自动缩放,您完全无需担心计算资源不足或浪费的问题。
通过UGC,您可以轻松构建一个运行在UGC上的函数或处理程序,通过第三方应用程序提交任务,以处理ufile、umem、ukafka中的数据。
什么时候使用通用计算?
UGC是很多应用程序的理想计算平台,典型的如实时文件处理,数据分析,视频转码等。本质上,只要能将应用和计算分离的业务,且服务可以运行在docker上,都可以使用UGC。
除了UGC,云知芯还提供了诸如Uhost、UDocker、托管云等计算服务以满足您的需求,与他们不一样的地方在于:
- Uhost提供了各种不同配置的主机实例,还允许自定义操作系统、网络、防火墙等,灵活背后,也需要您管理运维您创建的服务器集群,部署代码,监控和处理异常情况,根据需求动态伸缩服务器数量等工作。
- UDocker提供了灵活便捷的容器服务,容器可分布在多个可用区,具备跨可用区的容灾能力,并可配置容器运行的节点,且具备独立的内网、外网IP及防火墙。但容器只能运行在您自己的节点上,您需要在节点的生命周期内付费。
使用UGC,意味着您只需要负责维护您的算法,并将算法打包进docker镜像,UGC会负责管理和调度运行您算法的服务器集群,您仅需对您消耗的资源付费。