FC web api与传统web api的对比

本文涉及的产品
函数计算FC,每月15万CU 3个月
云原生 API 网关,700元额度,多规格可选
简介: 本文在可用资源,运行时,使用成本和适用场景这几方面比较了部署在函数计算上的web api和部署在一般web server中的web api.

可用资源

FC web api的web server只是一个接入层,计算层对接的是云厂商的FC运行时环境,可用资源受FC配额的限制,目前阿里云FC的默认配额是最高100个并发。另外,有一点需要注意的是,如果是计算密集型的功能,一定要将内存配额至少设为2G,这样才能保证可以用满一个核的算力。

传统web api的计算是直接在web server上完成,可用资源受web server所在云主机的限制。

运行环境

FC web api所对应的每一个method(FC)都可以有单独的运行环境,可以单独配置不同的软件依赖,也可以使用不同的技术栈。

传统web api的所有method都是在同一个环境里运行,远不如FC轻便灵活。

使用成本

FC web api仅需api网关常驻,后端对接的FC都是按每个FC的具体配额按0.1s的使用时间粒度收费。

传统web api的所有功能代码都需要常驻,即使无人调用,也要占用资源。

响应时间

FC web api经api网关触发FC(如果是自建web server作为api网关,需要调用sdk触发;如果是使用阿里云API网关服务,需要将函数配置为HTTP触发),这一步有几毫秒的时间消耗,另外,当FC容器需要冷启动时,响应时间会大大增加,冷启动时间由函数镜像大小和初始化函数的耗费时间决定。

传统web api由于是常驻进程,没有网关触发FC的时间消耗及有可能遇到的冷启动等待,响应时间在一般情况下要优于FC web api,除非请求数量太多导致服务出现拥塞。

适用场景

FC web api适用于处理实时性要求不高的,较低频的请求。如上所述,FC的触发机制决定了响应时间可能存在一个较大范围的波动。另外,当FC被web api高频触发时,还存在到达资源配额上限(并发容器达到100个)导致其他FC无法正常运行的风险。例如,我们的web service是通过FC web api实现的,同时,监控该服务的告警发送动作也通过FC完成。那么,有可能当大流量涌入,FC资源被拉满,服务质量严重下降时,却会由于资源配额耗光的原因无法推送告警。

传统web api适用于处理要求实时性的高频请求。

相关实践学习
【文生图】一键部署Stable Diffusion基于函数计算
本实验教你如何在函数计算FC上从零开始部署Stable Diffusion来进行AI绘画创作,开启AIGC盲盒。函数计算提供一定的免费额度供用户使用。本实验答疑钉钉群:29290019867
建立 Serverless 思维
本课程包括: Serverless 应用引擎的概念, 为开发者带来的实际价值, 以及让您了解常见的 Serverless 架构模式
目录
相关文章
|
1月前
|
Java API 数据库
构建RESTful API已经成为现代Web开发的标准做法之一。Spring Boot框架因其简洁的配置、快速的启动特性及丰富的功能集而备受开发者青睐。
【10月更文挑战第11天】本文介绍如何使用Spring Boot构建在线图书管理系统的RESTful API。通过创建Spring Boot项目,定义`Book`实体类、`BookRepository`接口和`BookService`服务类,最后实现`BookController`控制器来处理HTTP请求,展示了从基础环境搭建到API测试的完整过程。
42 4
|
1月前
|
XML JSON API
ServiceStack:不仅仅是一个高性能Web API和微服务框架,更是一站式解决方案——深入解析其多协议支持及简便开发流程,带您体验前所未有的.NET开发效率革命
【10月更文挑战第9天】ServiceStack 是一个高性能的 Web API 和微服务框架,支持 JSON、XML、CSV 等多种数据格式。它简化了 .NET 应用的开发流程,提供了直观的 RESTful 服务构建方式。ServiceStack 支持高并发请求和复杂业务逻辑,安装简单,通过 NuGet 包管理器即可快速集成。示例代码展示了如何创建一个返回当前日期的简单服务,包括定义请求和响应 DTO、实现服务逻辑、配置路由和宿主。ServiceStack 还支持 WebSocket、SignalR 等实时通信协议,具备自动验证、自动过滤器等丰富功能,适合快速搭建高性能、可扩展的服务端应用。
101 3
|
12天前
|
前端开发 API 开发者
Python Web开发者必看!AJAX、Fetch API实战技巧,让前后端交互如丝般顺滑!
在Web开发中,前后端的高效交互是提升用户体验的关键。本文通过一个基于Flask框架的博客系统实战案例,详细介绍了如何使用AJAX和Fetch API实现不刷新页面查看评论的功能。从后端路由设置到前端请求处理,全面展示了这两种技术的应用技巧,帮助Python Web开发者提升项目质量和开发效率。
28 1
|
19天前
|
JSON API 数据格式
如何使用Python和Flask构建一个简单的RESTful API。Flask是一个轻量级的Web框架
本文介绍了如何使用Python和Flask构建一个简单的RESTful API。Flask是一个轻量级的Web框架,适合小型项目和微服务。文章从环境准备、创建基本Flask应用、定义资源和路由、请求和响应处理、错误处理等方面进行了详细说明,并提供了示例代码。通过这些步骤,读者可以快速上手构建自己的RESTful API。
25 2
|
29天前
|
监控 负载均衡 API
Web、RESTful API 在微服务中有哪些作用?
在微服务架构中,Web 和 RESTful API 扮演着至关重要的角色。它们帮助实现服务之间的通信、数据交换和系统的可扩展性。
48 2
|
1月前
|
人工智能 搜索推荐 API
用于企业AI搜索的Bocha Web Search API,给LLM提供联网搜索能力和长文本上下文
博查Web Search API是由博查提供的企业级互联网网页搜索API接口,允许开发者通过编程访问博查搜索引擎的搜索结果和相关信息,实现在应用程序或网站中集成搜索功能。该API支持近亿级网页内容搜索,适用于各类AI应用、RAG应用和AI Agent智能体的开发,解决数据安全、价格高昂和内容合规等问题。通过注册博查开发者账户、获取API KEY并调用API,开发者可以轻松集成搜索功能。
|
1月前
|
移动开发 前端开发 JavaScript
前端开发实战:利用Web Speech API之speechSynthesis实现文字转语音功能
前端开发实战:利用Web Speech API之speechSynthesis实现文字转语音功能
155 0
|
17天前
|
设计模式 前端开发 数据库
Python Web开发:Django框架下的全栈开发实战
【10月更文挑战第27天】本文介绍了Django框架在Python Web开发中的应用,涵盖了Django与Flask等框架的比较、项目结构、模型、视图、模板和URL配置等内容,并展示了实际代码示例,帮助读者快速掌握Django全栈开发的核心技术。
103 45
|
15天前
|
XML 安全 PHP
PHP与SOAP Web服务开发:基础与进阶教程
本文介绍了PHP与SOAP Web服务的基础和进阶知识,涵盖SOAP的基本概念、PHP中的SoapServer和SoapClient类的使用方法,以及服务端和客户端的开发示例。此外,还探讨了安全性、性能优化等高级主题,帮助开发者掌握更高效的Web服务开发技巧。
|
18天前
|
安全 数据库 开发者
Python Web开发:Django框架下的全栈开发实战
【10月更文挑战第26天】本文详细介绍了如何在Django框架下进行全栈开发,包括环境安装与配置、创建项目和应用、定义模型类、运行数据库迁移、创建视图和URL映射、编写模板以及启动开发服务器等步骤,并通过示例代码展示了具体实现过程。
30 2