在尝试了使用 AWS 开发 Serverless 应用之后,我便想尝试使用 OpenWhisk 框架来搭建自己的 Serverless 服务。
Apache OpenWhisk(http://openwhisk.org/)是一个由IBM和Adobe驱动的开源项目,它是一个健壮的FaaS平台,可以部署在云或数据中心内。相比其他serverless项目,OpenWhisk是一个健壮的、可扩展的平台,支持数千并发触发器和调用。
其系统架构如下所示:
OpenWhisk 流处理流程
对应的组件的功能如下:
Nginx 暴露HTTP(S)端点给客户端。
Controller 充当系统的守门员、系统的协调者,它将决定请求最终采取的路径。
CouchDB 护和管理系统的状态。
Consul 作为系统每个组件可访问的单一数据源。 同时,consul还提供服务发现功能,使控制器发现调用操作的实体。
Apache Kafka 用于构建实时数据管道和流应用程序。
Invoker 使用 Scala实现,它是处理执行过程的最后阶段。
Docker, 几乎所有的 OpenWhisk 组件都打包和部署为容器。
官网的指引很简单,但是中间还是遇到一些环境问题。
首先 clone 代码
git clone --depth=1 https://github.com/apache/incubator-openwhisk.git openwhisk
然后于是虚拟机的目录:
cd openwhisk/tools/vagrant
接着执行 hello 命令
$./hello
./hello: line 8: vagrant: command not found
便提示 vagrant 没有安装。Vagrant 只是一个虚拟机管理和配置工具,为了安装 vagrant,还需要先安装 virtualbox 虚拟机:
brew cask install virtualbox
然后安装 vagrant,顺便也 可以安装 vagrant-manager
$ brew cask install vagrant vagrant-manager
==> Satisfying dependencies
==> Downloading https://releases.hashicorp.com/vagrant/2.0.1/vagrant_2.0.1_x86_64.dmg
######################################################################## 100.0%
==> Verifying checksum for Cask vagrant
==> Installing Cask vagrant
==> Running installer for vagrant; your password may be necessary.
==> Package installers may write to any location; options such as --appdir are ignored.
Password:
==> installer: Package name is Vagrant
==> installer: Installing at base path /
==> installer: The install was successful.
原文来自:phodal
声明:所有来源为“聚合数据”的内容信息,未经本网许可,不得转载!如对内容有异议或投诉,请与我们联系。邮箱:marketing@think-land.com
支持全球约2.4万个城市地区天气查询,如:天气实况、逐日天气预报、24小时历史天气等
支持识别各类商场、超市及药店的购物小票,包括店名、单号、总金额、消费时间、明细商品名称、单价、数量、金额等信息,可用于商品售卖信息统计、购物中心用户积分兑换及企业内部报销等场景
涉农贷款地址识别,支持对私和对公两种方式。输入地址的行政区划越完整,识别准确度越高。
根据给定的手机号、姓名、身份证、人像图片核验是否一致
通过企业关键词查询企业涉讼详情,如裁判文书、开庭公告、执行公告、失信公告、案件流程等等。