春节前“摸鱼”指南——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的 ...
随机推荐
- ReentrantLock售票的例子&sleep和wait的区别锁可重入是什么(笔记)
1 sleep 在哪里都可以用 调用Thread.sleep()但是 wait方法只能在同步方法和同步代码块中使用 wait也就是使得该线程成为阻塞状态(注意这里阻塞不是书本操作系统下的while循环 ...
- python2.7 操作ceph-cluster S3对象接口 实现: 上传 下载 查询 删除 顺便使用Docker装个owncloud 实现UI管理
python version: python2.7 需要安装得轮子: botofilechunkio command: yum install python-pip&& pip ...
- linux环境基于python语言docx转pdf
windows平台因借助win32com具有多种方法将word转为pdf,但linux环境不具备此环境,win32com包也将import失败,那该如何做呢? # -*- coding: utf-8 ...
- GoJS API学习
var node = {}; node["key"] = "节点Key"; node["loc"] = "0 0";// ...
- 033、Java中使用简化运算符
01.代码如下: package TIANPAN; /** * 此处为文档注释 * * @author 田攀 微信382477247 */ public class TestDemo { public ...
- JavaScript的调用
1 方法调用模式 var myObject = { value : 0, increment : function(inc) { alert('hi'); } }; myObject.incremen ...
- django ORM多对多正向查询时查询返回结果为None
表 class Books(models.Model): '''书籍''' id = models.AutoField(primary_key=True) name = models.CharFiel ...
- Linux学习-预习第五六七章节关于用户权限管理以及磁盘文件系统
- 验证试验 更改了从机CAN通信的MAC地址 从机新挂CAN网络 上电自检通过
更改前 该之后 主机程序 与 从机 程序 已经上传到网盘上 ,主机和从机程序基本一致, 唯一的区别是 从机更好了MAC地址 为0X10 主机的固定MAC地址为 0X1F 改程序的配置上设置的是双滤波 ...
- 3D打印技术的火爆,真的会让传统模具行业没落吗?
当一种新生事物出现时,人们除了赞美它带来的新畅想外,往往还会对"旧事物"贬低几分--各种淘汰观点总是不绝于耳.但可惜的是,新生事物取代旧事物的事儿并不会必然发生.比如,直到现在广播 ...