如何使用阿里云函数计算快速部署一个简单的ip转地址的http接口服务?

本文涉及的产品
函数计算FC,每月15万CU 3个月
简介: 函数计算是事件驱动的全托管计算服务。使用函数计算,您无需采购与管理服务器等基础设施,只需编写并上传代码。函数计算为您准备好计算资源,弹性地可靠地运行任务,并提供日志查询、性能监控和报警等功能。

什么是函数计算?

函数计算是事件驱动的全托管计算服务。使用函数计算,您无需采购与管理服务器等基础设施,只需编写并上传代码。函数计算为您准备好计算资源,弹性地可靠地运行任务,并提供日志查询、性能监控和报警等功能。

借助函数计算,您可以快速构建任何类型的应用和服务,并且只需为任务实际消耗的资源付费。

背景说明:

之前网上有好多的ip转地址的接口,但是后来好多都商用了,或者有的转化的不理想,不经意间在gitee上看见有个老哥有个开源的项目https://gitee.com/lionsoul/ip2region 觉得挺不错的,因为我的好多项目都需要这样一个功能,于是想做一个中枢的接口,给我的其他项目通过api的方式调用。这样也方便我后期统一更新这个ip2region的地址库,同时也可以方便的给提供其他小伙伴使用。后来了解到阿里云函数计算有免费的额度,能够弹性扩容,免运维等好处,于是把这位老哥开源的ip转化服务改成了阿里云的函数计算代码。

下面说下步骤:

https://fcnext.console.aliyun.com/cn-beijing/services

1.根据页面的提示先创建一个服务。

2.创建函数,选择使用标准runtime从0创建,因为我只是一个接口服务,用最轻量的形式创建即可。运行环境选择php7.2,目前只有7.2,如果你是把已有的项目迁移进来,或者是php的其他版本,选择后面的自定义运行时。代码包通过我上面的gitee地址下载即可。

这里给官方一个建议直接可以拉去开源的gitee或者github地址的代码,那样更方便些。

3.如何访问。

点击下图里面的url,提示一个文件下载,打开下载的文件,里面是返回的转化后的地址的json,这里为啥是下载呢?使用的阿里云的域名会在头部增加强制下载,绑定自己的域名,通过自己的域名访问就好了。

4.绑定自己的域名

根据下图填写域名然后自己去cname,这里给官方提个小建议,本账号下面的域名添加的时候最好能支持自动cname那样就更方便了。

下面是路由配置  /* 指的是根目录下面所有 指向 这个ip2region这个服务下面的ip2region这个函数下面的最新版本。

5.可以通过自定义域名访问了就。

是不是很简单。

6.使用阿里云的pts对其进行压测看下

业务成功率能到达99%以上,这个结果还是非常满意的。

11.png


7.说下自己的使用感受

首先从成本角度来说,相对于传统的自己去购买服务器,函数计算能够节省很多,尤其是那种短时间高流量大并发的场景,真正能够实现没有业务的情况下零费用。而且每个月还有一定的免费额度。

从安全性角度来说对于之前把代码部署到ecs上面的情况不用由于系统的bug导致中毒导致业务瘫痪了,足够安全,稳定。

运维角度来讲基本没有什么额外的运维工作量,基本做到了免运维。

从系统的业务并发承载量来讲,由于后端能动态扩容,基本也不会产生什么瓶颈了。从上面的压力测试上面看,比自己在ecs上面运行业务代码要可靠的多了

还能够配合阿里生态集成持续交付部署。


虚拟主机时代=>独立主机走红=》vps爆发=》云服务器崛起

函数计算serverless应该是后端服务提供的最终形态。



源代码地址以及说明:

https://gitee.com/wlphp/aliyun-fc-ip2regioin

相关实践学习
【文生图】一键部署Stable Diffusion基于函数计算
本实验教你如何在函数计算FC上从零开始部署Stable Diffusion来进行AI绘画创作,开启AIGC盲盒。函数计算提供一定的免费额度供用户使用。本实验答疑钉钉群:29290019867
建立 Serverless 思维
本课程包括: Serverless 应用引擎的概念, 为开发者带来的实际价值, 以及让您了解常见的 Serverless 架构模式
相关文章
|
3月前
|
JSON Java Apache
非常实用的Http应用框架,杜绝Java Http 接口对接繁琐编程
UniHttp 是一个声明式的 HTTP 接口对接框架,帮助开发者快速对接第三方 HTTP 接口。通过 @HttpApi 注解定义接口,使用 @GetHttpInterface 和 @PostHttpInterface 等注解配置请求方法和参数。支持自定义代理逻辑、全局请求参数、错误处理和连接池配置,提高代码的内聚性和可读性。
263 3
|
4月前
|
JSON Java fastjson
Java Http 接口对接太繁琐?试试 UniHttp 框架吧
UniHttp 是一个声明式的 HTTP 接口对接框架,旨在简化第三方 HTTP 接口的调用过程。通过注解配置,开发者可以像调用本地方法一样发起 HTTP 请求,无需关注请求的构建和响应处理细节。框架支持多种请求方式和参数类型,提供灵活的生命周期钩子以满足复杂的对接需求,适用于企业级项目的快速开发和维护。GitHub 地址:[UniAPI](https://github.com/burukeYou/UniAPI)。
|
5月前
|
JSON 移动开发 监控
快速上手|HTTP 接口功能自动化测试
HTTP接口功能测试对于确保Web应用和H5应用的数据正确性至关重要。这类测试主要针对后台HTTP接口,通过构造不同参数输入值并获取JSON格式的输出结果来进行验证。HTTP协议基于TCP连接,包括请求与响应模式。请求由请求行、消息报头和请求正文组成,响应则包含状态行、消息报头及响应正文。常用的请求方法有GET、POST等,而响应状态码如2xx代表成功。测试过程使用Python语言和pycurl模块调用接口,并通过断言机制比对实际与预期结果,确保功能正确性。
323 3
快速上手|HTTP 接口功能自动化测试
|
5月前
|
弹性计算 关系型数据库 Serverless
告别资源瓶颈,函数计算驱动多媒体文件处理方案:https://www.aliyun.com/solution/tech-solution/fc-drive-file
本文介绍了一种基于阿里云的一键部署解决方案,利用云服务器ECS、RDS MySQL、OSS、函数计算FC及MNS等服务,实现高效的多媒体文件处理。方案通过事件驱动机制,将文件处理任务解耦,并自动弹性扩展,按需付费,简化部署流程,提高处理效率。本文还提供了详细的部署步骤与体验反馈,展示了从配置到文件处理的全过程。
|
4月前
|
Java 数据处理 开发者
Java Http 接口对接太繁琐?试试 UniHttp 框架~
【10月更文挑战第10天】在企业级项目开发中,HTTP接口对接是一项常见且重要的任务。传统的编程式HTTP客户端(如HttpClient、Okhttp)虽然功能强大,但往往需要编写大量冗长且复杂的代码,这对于项目的可维护性和可读性都是一个挑战。幸运的是,UniHttp框架的出现为这一问题提供了优雅的解决方案。
144 0
|
4月前
|
API
使用`System.Net.WebClient`类发送HTTP请求来调用阿里云短信API
使用`System.Net.WebClient`类发送HTTP请求来调用阿里云短信API
68 0
|
5月前
|
监控 安全 搜索推荐
设置 HTTPS 协议以确保数据传输的安全性
设置 HTTPS 协议以确保数据传输的安全性
|
2月前
|
网络协议 安全 网络安全
探索网络模型与协议:从OSI到HTTPs的原理解析
OSI七层网络模型和TCP/IP四层模型是理解和设计计算机网络的框架。OSI模型包括物理层、数据链路层、网络层、传输层、会话层、表示层和应用层,而TCP/IP模型则简化为链路层、网络层、传输层和 HTTPS协议基于HTTP并通过TLS/SSL加密数据,确保安全传输。其连接过程涉及TCP三次握手、SSL证书验证、对称密钥交换等步骤,以保障通信的安全性和完整性。数字信封技术使用非对称加密和数字证书确保数据的机密性和身份认证。 浏览器通过Https访问网站的过程包括输入网址、DNS解析、建立TCP连接、发送HTTPS请求、接收响应、验证证书和解析网页内容等步骤,确保用户与服务器之间的安全通信。
172 3
|
3月前
|
安全 搜索推荐 网络安全
HTTPS协议是**一种通过计算机网络进行安全通信的传输协议
HTTPS协议是**一种通过计算机网络进行安全通信的传输协议
94 11
|
3月前
|
缓存 安全 网络协议
HTTPS协议的历史发展
HTTPS协议的历史发展
87 8