春节前“摸鱼”指南——SCA命令行工具助你快速构建FaaS服务

春节将至,身在公司的你是不是已经完全丧失了工作的斗志? 但俗话说得好:“只要心中有沙,办公室也能是马尔代夫。”
职场人如何才能做到最大效能地带薪“摸鱼”,成为了一项证明工作效率的学问。正所谓“授之以鱼,不如授之以摸鱼。”
今天就让我们来看看什么叫做开发人员职场“高效”摸鱼工具!
Serverless 架构(无服务器架构),是云计算时代一种全新的、革命性的架构模式。它意味着开发者无需关心底层服务器等基础设施,平台会根据业务请求量自动调度资源的弹性伸缩,且所有资源按需付费,没有请求和资源占用不收取费用,在降低成本的前提下极大降低运营复杂度。
2014 年,Serverless 架构进入大众视线,当时业界普遍认为,Serverless 化可大幅降低 IT 成本,将云的费用减少 10%-90%,同时还能提高服务部署效率。经过这几年的沉淀,部分公司已经在实践 Serverless,取得的效果也很明显。FaaS (Functions as a Service)函数即服务作为 Serverless 架构中的核心计算组件,通过将各个其他产品或服务粘合起来,应用被解耦成细粒度函数,所有逻辑都可以在函数内完成这样可以使工程师能够更专注于开发优异的新功能,快速构建应用与服务,而不是编写那些冗余而又不得不写的代码。
什么是 SCA CLI ?
SCA(Serverless Cloud Application,SCA)CLI 是京东云无服务器云应用命令行工具。通过SCA,用户可以快速生成function函数项目并基于项目模板进行自主开发,便捷完成函数的本地调试、打包、部署等操作,大大提高开发者的开发效率。
SCA CLI 是做什么的?
通过SCA命令行工具,用户可以:
- 快速初始化函数服务项目
- 本地开发、测试函数代码
- 将服务打包、部署云端
- 调用云端函数执行
- 管理云端函数、查询云端函数日志
支持命令如下:

SCA 正确的打开姿势
SCA CLI 支持Linux、Mac运行。同时,由于 SCA CLI 是基于go开发完成的,因此用户只需下载安装包,即可使用。
以Linux环境为例,跟着我们一起来快速创建部署test-function
Step 1安装
执行以下命令一步完成下载安装:
·curl -Ohttps://raw.githubusercontent.com/jdcloud-serverless/sca/master/hack/install.sh && chmod +777 install.sh && sh install.sh && source ~/.bashrc
验证:

Step 2配置账号信息
SCA安装完毕后,通过config命令将JDCloud账号信息同步至SCA中:
#sca config
[>] JDCould accountid = xxxx (your acount id)
[>] JDCould region = cn-north-1
[>] JDCould access-key = 0123abcd (your AK)
[>] JDCould secret-key = abcd0123 (your SK)
Step 3初始化项目
通过初始化项目,用户可快速创建一个项目模板,主要包括代码文件:index.py、配置文件:template.yaml,基于模板可进一步进行自主配置及开发。
在当前目录初始化function项目:

- 项目名称(默认): testproject;
- 函数名称(默认): test-function;
- 运行时(默认): python3.6
初始化test-function项目如下:

函数模板配置文件 template.yaml 是函数资源描述文件,SCA基于配置文件将本地代码及配置部署到云端。

Step 4代码开发及上传
此时,将您开发完成的代码及依赖库上传至CodeUri位置。此处,我们使用默认test-function函数目录下的index.py函数。
Step 5配置函数及验证
完成test-function函数配置后,您可以通过validate命令对template.yaml模板进行验证:

Step 6本地测试
(local执行需安装docker)测试默认当前目录下template.yaml文件中的test-function函数,event测试事件默认为 key:value 字符串:

Step 7打包部署
将当前目录template.yaml配置中的函数部署至云端,默认覆盖云端重名函数:

Step 8查询云端函数

以上,快速完成了test-function函数的本地创建、测试及部署。通过SCA您还可以对云端函数进行管理、测试及查询日志等。
看了上述内容,您有没有对SCA CLI有了大概的了解,如果您想了解更多关于京东云SCA CLI 相关信息,请点击“阅读”,进入京东云开发者社区查看~
欢迎点击“京东云”了解更多精彩内容


春节前“摸鱼”指南——SCA命令行工具助你快速构建FaaS服务的更多相关文章
- react.js 之 create-react-app 命令行工具系统讲解
react.js 教程之 create-react-app 命令行工具系统讲解 快速开始 npm install -g create-react-app create-react-app my-app ...
- 寒武纪加速平台(MLU200系列) 摸鱼指南(二)--- 模型移植-环境搭建
PS:要转载请注明出处,本人版权所有. PS: 这个只是基于<我自己>的理解, 如果和你的原则及想法相冲突,请谅解,勿喷. 前置说明 本文作为本人csdn blog的主站的备份.(Bl ...
- 寒武纪加速平台(MLU200系列) 摸鱼指南(四)--- 边缘端实例程序分析
PS:要转载请注明出处,本人版权所有. PS: 这个只是基于<我自己>的理解, 如果和你的原则及想法相冲突,请谅解,勿喷. 前置说明 本文作为本人csdn blog的主站的备份.(Bl ...
- 从零开始打造个人专属命令行工具集——yargs完全指南
前言 使用命令行程序对程序员来说很常见,就算是前端工程师或者开发gui的,也需要使用命令行来编译程序或者打包程序 熟练使用命令行工具能极大的提高开发效率,linux自带的命令行工具都非常的有用,但是这 ...
- JVM调优前戏之JDK命令行工具---jhat
在JDK的命令行中,一般开发人员最耳熟能详的肯定就是java,javac,javap等常用命令,不过在jdk/bin下还有许多其他的命令行工具,它们被用来监测JVM运行时的状态,下面我们来详细解读一下 ...
- JVM调优前戏之JDK命令行工具---jstack
在JDK的命令行中,一般开发人员最耳熟能详的肯定就是java,javac,javap等常用命令,不过在jdk/bin下还有许多其他的命令行工具,它们被用来监测JVM运行时的状态,下面我们来详细解读一下 ...
- Windows 编程,程序编译使用的命令行工具。
Windows 编程,程序编译使用的命令行工具. 1.cl.exe文件是Visual C\C++的编译器,它将程序源代码文件编译为obj文件. 2.rc.exe文件是资源编译器.工程项目中的.rc文件 ...
- nodejs 编写(添加时间戳)命令行工具 timestamp
Nodejs除了编写服务器端程序还可以编写命令行工具,如gulp.js就是Nodejs编写的. 接下来我们来实现一个添加时间戳的命令: $ timestamp action https://www.n ...
- MySQL 命令行工具之 mysqldump 深入研究
mysqldump 是MySQL的一个命令行工具,用于逻辑备份.可以将数据库和表的结构,以及表中的数据分别导出成:create database, create table, insert into的 ...
随机推荐
- liunx命令用到的
su:切换成root用户 sudo su:普通用户申请root权限 ping命令可以检查linux是否联网 ping www.baidu.com 如图就是联网了 结束ping包括其他linux的指令 ...
- 读《Adaptive Thresholding Using the Integral Image》自适应图像阈值
图像的二值化问题总是一个问题.虽然使用深度学习的方法取得了不小的进展,但是传统的方法还是值得借鉴. 刚好随机游走到这篇文章 挖个07年的坟 地址:http://people.scs.carleton ...
- webpack 4 x使用详细
1.首先安装node.js 2.打开控制台cmd,输入npm install webpack webpack-cli webpack-dev-server -g 3.在本地磁盘上建一个文件夹,然后通过 ...
- 《动手学深度学习》系列笔记 —— 语言模型(n元语法、随机采样、连续采样)
目录 1. 语言模型 2. n元语法 3. 语言模型数据集 4. 时序数据的采样 4.1 随机采样 4.2 相邻采样 一段自然语言文本可以看作是一个离散时间序列,给定一个长度为\(T\)的词的序列\( ...
- Day5 - B - Wireless Network POJ - 2236
An earthquake takes place in Southeast Asia. The ACM (Asia Cooperated Medical team) have set up a wi ...
- python笔记10
今日内容 参数 作用域 函数嵌套 知识点回顾 函数基本结果 def func(name,age,email): # 函数体(保持缩进一致) a = 123 print(a) return 1111#函 ...
- Django(三) 模型:ORM框架、定义模型类并创建一个对应的数据库、配置Mysql数据库
一.模型概述 https://docs.djangoproject.com/zh-hans/3.0/intro/tutorial02/ https://www.runoob.com/django/dj ...
- 整合 nginx php-fpm
start 继上一篇 整合两个images 完成 LNMP github https://github.com/shiphp/nginx-env 稍加修改 vim dockerfile ...
- 《ES6标准入门》(阮一峰)--11.对象的新增方法
1.Object.is() ES5 比较两个值是否相等,只有两个运算符:相等运算符(==)和严格相等运算符(===).它们都有缺点,前者会自动转换数据类型,后者的NaN不等于自身,以及+0等于-0.J ...
- 19 02 03 django 中cookies 和 session 和 cache
Session 是单用户的会话状态.当用户访问网站时,产生一个 sessionid.并存在于 cookies中.每次向服务器请求时,发送这个 cookies,再从服务器中检索是否有这个 session ...