• 一文搞懂传统单节点网站的 Serverless 上云


    背景

    什么是函数?刚刚考完数学没多久的我,脑里立马想到的是自变量、因变量、函数值,也就是 y=f(x)。当然,在计算机里,函数 function 往往指的是一段被定义好的代码程序,我们可以通过传参调用这个定义好的函数,实现我们所需要的功能。那么,今天的函数计算 FC 又是什么?

    云计算时代的当下,容器化技术与各种工具发展的 DevOps,已经把开发与运维的工作进行了新的统筹,开发人员在完成代码的编写后,无需考虑环境,直接提交到各种流水线就可以完成测试、开发、部署,项目构建微服务,由容器完成环境的封装。但是往往我们最终还是需要投入精力到业务上线的集群,是私有云环境还是公有云?是裸金属服务器还是云实例 ECS?是自购还是租用?

    当然,DevOps 的落地、服务器\集群的运维,这些都是需要投入大量的资源与精力,DevOps 是一条捷径,但不是唯一的出路。而函数计算 FC 的出现,带来了无服务 Serverless 的架构,让开发者在开发和部署的时候,不再有部署服务复杂的感觉。

    对服务器的无感化,可以使开发者真正的关注在自己的代码上。阿里云 Serverless 函数式极简编程可专注于业务创新,无采购和部署成本、提供监控报警等完备的可观测能力。阿里云函数计算 FC 是事件驱动的全托管计算服务,真正的无需去考虑服务器的运维管理,只需要完成开发的代码进行上传,函数计算会通过角色策略去规划计算资源,弹性的方式执行函数,最后高效的执行部署。优雅!

    Serverless 将会有那些适用场景?是个人?还是生产?那么这次我将部署两种不同方向的应用对 Serverless 进行测评!

    一、通知系统与 Webhook,Trigger 触发与 Chat 机器人。

    许多系统中涉及到的 push 类功能,例如邮件、短信、Webhook。当然 Webhook 的能力不只是信息通知,不过这里所指的通知功能必然是需要基础设施也就是服务器来支撑运行,如果将这些功能直接由 Serverless 来操作,我们便无需支付运维一台服务器,节省了大量的工作与费用。同样,我们可以利用 Serverless 事件驱动模型实现定时自动触发任务,自动签到自动发送。

    二、其次当然是 Web 类的应用。

    基于各类 Web 框架的应用部署,构建基于 Java、Python、PHP 等语言的站点,Serverless很容易实现如 wordpress 这样的博客应用的上线。配合其他云产品,Codeup、OSS、RDS 等,更能实现高可用高性能的 Web 应用,如官方提供的 Kod 云盘系统。

    Serverless 农产品电商网站上云改造

    这里我拿隔壁软件专业(俺是网络技术的)的一个大作业项目作为部署的案例。项目是非常简单并且功能单一的,但是也是非常经典的前后端分离项目,由于我开发不太会,项目具体技术就不献丑了。之前据说是有什么版权的,我就不放源代码了hhhh。

    在改造之前,我相信是很多中小型公司业务的经典 AllinOne 结构,把业务涉及到的所有服务中间件运行在一台服务器/虚拟机上,虽然现在看可能完完全全是实验室环境,但是实际看到的依然有很多项目是这么做的。坏处也不用多提,部署运维难、难以进行资源的扩容、后续改造复杂、性能差没有应用高可用技术等等。。。

    Serverless 的农产品电商平台上云,项目比较简单,规划就在同一地域了。主要是将前端 HTML 页面与后端 Jar 包运行分别由两个单独的 Serverless 函数完成运行计算。其余支撑服务上云,分别用对应的云产品实现,这里 Redis 服务由于我自己 ECS 上有运行 Redis 服务,就不再单独购买云数据库 Redis 版了,当然推荐使用阿里云的 Redis 云数据库产品。

    1. Serverless 服务创建

    进入函数计算控制台,选择【服务及函数】,点击【创建服务】

    输入创建服务的名称与描述,开启日志功能,点击确定,完成服务的创建

    服务创建完成后,进入【服务详情】,找到【网络配置】,点击【编辑】

    选择允许访问 VPC,选择自定义配置,选择 VPC、vSwitch、安全组,这里需要和后续其他支撑的云产品(数据库等)保持在同一 VPC 下。因此需要做好云上网络的规划,也要看一下产品是否在地域下有没有库存。

    2.

  • 相关阅读:
    Caché数据库及其特性
    如何使用Tushare+ Backtrader进行股票量化策略回测
    树上启发式合并小结
    从基础到代码实战,带你进阶正则表达式的全方位应用
    数据分析 - CASE专题
    业务安全五重价值:防攻击、保稳定、助增收、促合规、提升满意度
    使用关键字interface来声明使用接口-PHP8知识详解
    rust最新版本安装-提高下载速度
    oracle异常处理
    供配电技术
  • 原文地址:https://blog.csdn.net/weixin_43970890/article/details/126640167