Serverless初体验

2024-04-11 17:58
文章标签 初体验 serverless

本文主要是介绍Serverless初体验,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Serverless Framework 是业界非常受欢迎的无服务器应用框架,通过与众多一流云供应商如腾讯云,AWS 等的紧密合作,为广大开发者提供无需关心底层基础设施,即可编写和部署代码的无服务开发体验。

Serverless Framework

一、介绍

Serverless Framework 同时提供资源管理、弹性伸缩、统计分析等能力,让广大开发者可以节省运维成本,真正做到“按量付费”的同时,也无需花费精力处理日志收集、异常统计等任务。
Tencent Serverless (以下简称 Serverless) 是 Serverless Framework 与腾讯云合作,基于组件(serverless components)为中国用户定制的 serverlss 开发完整解决方案。覆盖了开发编码、测试、部署等全生命周期,在保留 Serverless Framework 的特点和优势的同时更加切合中国用户的使用场景和习惯。

二、Serverless 优势

  1. 多语言,多框架支持、远程调试
    • Serverless 支持众多编程语言,包含:Node.js, Python, PHP, Java, Go 等。
    • Serverless 支持使用框架开发框架进行开发,包括:Express, Koa, Egg.js, next.js, nuxt.js, react.js, vue.js, Flask, Laravel 等。
    • Serverless 拥有远程开发模式,开发者可以轻松在本地调试云端代码。
  2. 灵活配置、一键部署、日志报警
    • Serverless 通过 serverless.yml 和简单配置即可完成所有基础设施(云函数、API 网关、COS、DB 等)的创建,部署,和修改。
    • Serverless 可以快速在不同环境(stage)和资源地区(region)进行应用部署。同时部署速度可以提升最多 20 倍。
    • Serverless 提供了更强大的日志收集,统计分析,异常报警服务。开发者无需任何配置即可直接使用。
  3. 高可用、低成本、弹性伸缩
    • Serverless 部署的应用可靠性可以达到 99.5% 的可靠性,同时支持灰度发布及版本快速切换。
    • Serverless 采用按量计费,在闲置时间不收取任何费用,相比传统付费方式可节省 80% 以上的使用成本。
    • Serverless 可以进行弹性伸缩,进一步保证了应用的可用性并降低了使用维护成本。

三、开始开发

通过 Serverless CLI 工具无需登录腾讯云控制台就可以轻松创建、开发、调试、部署、查看、移除 serverless 应用,使用 Serverless 可以进行多种应用开发,同时满足不同的使用场景。

1.云函数开发

Serverless 为腾讯云函数(SCF)应用开发者提供了完善的支持,通过 serverelss CLI 工具开发者可以快速进行 本地单函数/多函数开发,代码调试,日志查看以及一键部署 。结合消息队列,文件系统,事件触发器,数据库等其他云上资源,使云函数开发非常便捷同时支持更多使用场景。

2.框架应用开发

Serverless 为框架应用(如:Nextjs, Express, Django, SrpintBoot 等)提供了运行环境支持,通过 serverless 开发者可以轻松进行框架应用进行开发或将已有应用通过简单改造迁移到 serverless 平台,获得 serverless 的全部优势。

3.SaaS 应用托管

Serverless 为提供了许多 SaaS 应用(如:Wordpress, DiscuzQ 等)的封装,通过 serverless 简单配置就可以部署并在 serverless 上使用这些应用,在获得 serverless 优势的同时也无需担心应用的后续维护和升级。

四、使用 Serverless

  1. 安装 Serverless CLI 命令行工具
# 使用 npm 全局安装 serverless 命令行工具
npm install -g serverless# 升级 serverless 命令行到最新版本
npm update -g serverless# 使用 bash 安装 serverless 工具
curl -o- -L https://slss.io/install | bash# 使用 choco 安装 serverless 工具
choco install serverless
  1. 创建应用

通过 CLI 可以快速初始化 serverless 应用项目,可以选择使用交互式方式选择组件来进行配置,也可以通过指定组件名称快速创建。

# 交互式创建 serverless 应用
serverless
# 
sls# 使用模板创建 serverless 应用并指定名称
serverless init express-starter --name my-sls-express
# or
sls init express-starter --name my-sls-express

提示: 可以使用 sls 代替 serverless 来执行 CLI 命令,sls 等同于 serverless

五、serverless 常用命令

* 您可以通过 "serverless" 或简称 "sls" 来执行命令
* 使用 "serverless [command] --help" 获取详细帮助信息init             通过模板初始化新项目
deploy           部署应用到云端
info             获取应用详情
dev              启动调试模式
logs             查看应用日志
remove           移除应用
credentials      管理全局授权信息
registry         查看应用中心的组件与模版信息
publish          发布组件或模版到应用中心
bind role        重新为当前用户分配使用 Serverless 所需权限

六、创建项目实例

  1. 创建一个名称为 website-test 的静态网站应用实例
sls init website-starter --name website-test

生成的项目结构:

/website-test/srcindex.htmlREADME.mdREADME_EN.mdserverless.yml        
  1. 在项目根目录下创建一个 .env 文件
echo  "" > .env
  1. 进入腾讯云控制台的 API密钥管理,获取 SecretIdSecretKey。如果初次使用就新建秘钥,编辑 .env 文件:
# 您账号的 SecretId
TENCENT_SECRET_ID=xxxxxxxxxx # 您账号的 SecretKey
TENCENT_SECRET_KEY=xxxxxxxx 
  1. 在腾讯云控制台的 Serverless 应用,点击新建应用,选择Website静态网站:
    新建Serverless应用

  2. 新建完成之后拿到:应用名称实例名称,配置 serverless.yml 文件:

# 应用名称,同账号下需唯一
app: website-test 
# [必选]组件名称,就是 第4步 选择的应用类型
component: website 
# [必选]组件实例名称
name: website-rHV4uDmvVx
# 自定义环境信息,用来区分不同环境的实例
stage: dev inputs:src:src: ./srcindex: index.htmlerror: index.htmlexclude:- .envregion: ap-guangzhoubucketName: my-website-starterprotocol: https
  1. 修改 src/index.html 首页内容

  2. 部署

sls deploy

输出:

E:\dev\serverless-demo>sls deployserverless ⚡components
Action: "deploy" - Stage: "dev" - App: "website-test" - Name: "website-rHV4uDmvVx"region:  ap-guangzhou
website: https://my-website-starter-1300949752.cos-website.ap-guangzhou.myqcloud.com应用控制台: https://serverless.cloud.tencent.com/apps/website-test/website-rHV4uDmvVx/dev19s » website-rHV4uDmvVx » 执行成功**************************************************
邀请您填写调查问卷: https://www.surveymonkey.com/r/slcusage
**************************************************

点击输出信息中的 website 后边的url就可以访问刚刚创建的website-test静态应用。

七、总结

Serverless 免去了服务器购买,Nginx配置等等繁琐环节。10分钟就能创建外网可访问的web应用,还可以配置自定义域名(已备案的域名)和CDN加速,一条龙服务简直不要太爽,体验杠杠的。


欢迎访问:天问博客

这篇关于Serverless初体验的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/894787

相关文章

Node.js初体验 Kali安装Node.js

背景:偶然看到node.js开发微信公众号的视频,有些好奇,想要接触下。然后花了两个小时在实验楼网站上在线学习了JavaScript的基础知识,以及Node.js的基础 接着本着从实践出发的原则 先去本地kali下安装个Node.js玩玩 下载地址:https://nodejs.org/en/download/ 网页最下面有提示:Note: Python 2.6 or 2.7 is requ

Java后端云原生应用开发:Serverless架构探索

Java后端云原生应用开发:Serverless架构探索 大家好,我是微赚淘客返利系统3.0的小编,是个冬天不穿秋裤,天冷也要风度的程序猿! 云原生应用开发 随着云计算技术的快速发展,云原生应用开发逐渐成为主流。云原生应用充分利用了云平台的弹性、可扩展性和自动化运维等优势。 Serverless架构 Serverless架构是一种云服务模式,它允许开发者构建和运行应用程序,而无需管理服务

html初体验标准标签

<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><title>Document</title></head><body><input type="text"></body></html> 内容展示

使用腾讯云的Serverless部署应用

使用腾讯云的Serverless部署应用 使用腾讯云的Serverless服务,部署一个Go编写的天气变化的提醒应用 该应用通过定时查询高德地图的天气API,当当前天气或未来几天天气不好时,通过Server酱在微信中进行提醒 构建应用 应用使用 go modules开发 go.mod module weathergo 1.12require github.com/tencentyu

【 OpenHarmony 4.1 Launcher 源码解析 】-- 初体验

前言 最近因为业务需要,需要做一款 UI 定制的鸿蒙 Launcher,于是就开始了「找到代码」、「研究代码」、「魔改代码」的套路流程,仅以此文章作为知识备份和技术探讨所用,也希望能给其他小伙伴提供一些源码的解析思路,方法大家各自魔改! 一、官方简介 Gitee codes:应用子系统/Launcher Launcher 作为系统人机交互的首要入口,提供应用图标的显示、点击启动、卸载应

通义千问AI PPT初体验:一句话、万字文档、长文本一键生成PPT!

大家好,我是木易,一个持续关注AI领域的互联网技术产品经理,国内Top2本科,美国Top10 CS研究生,MBA。我坚信AI是普通人变强的“外挂”,专注于分享AI全维度知识,包括但不限于AI科普,AI工具测评,AI效率提升,AI行业洞察。关注我,AI之路不迷路,2024我们一起变强。 你有多久没有听到国内AI大模型的最新消息了? 不是国内AI领域不卷了,而是“卷”的方向变了。2023年卷

华为云 Flexus X 实例使用测评:上手初体验,比想象的更丝滑

华为云 Flexus 云服务是华为云推出的一款主打柔性算力,高效性能,高安全,高性价比的旗舰级云服务产品。主要面向金融、游戏、零售、直播等高负载业务场景,比较适合当前绝大数企业的一些云上需求。你可以根据你应用需要的性能,配置不同的规格。 上手初体验 现在,我们以一款实例配置为例,介绍华为云 Flexus X 的上手体验。 进入到华为云 Flexus 云服务的首页,点击购买按钮,进入配置页

GPT-SoVITS-WebUI 初体验

一、安装   conda create -n GPTSoVits python=3.9 #

Pyhton3+openCV3初体验

其中python3采用的anaconda进行Python的安装与库的管理。 安装好anaconda后,就可以通过anaconda来安装opencv了。打开Anaconda Prompt命令行程序,输入conda list,可以查看已安装的库。 输入conda install --channel https://conda.anaconda.org/menpo opencv3 可以对opencv

2019idea 创建springboot项目初体验

一.创建一个springboot工程 1.创建工程 2、选择Spring Initrializr 点击Next 3.设置包名,项目名,以及最后需要打包的类型,这里设置成war,点击Next 4.选择web,web,点击Next5.添加项目本地路径配置信息 6.项目已经创建完成.创建Test类,添加@RestCOntroller注解,方法上添加@GetMapping或者PostMapping等