apache服务 功能错误_如何使用Apache OpenWhisk开发功能即服务
apache服务 功能错误
Apache OpenWhisk是一个无服务器的开源云平台,允许您执行代码以响应各种规模的事件。 Apache OpenWhisk为开发人员提供了基于四个概念的简单编程模型: action , package , trigger和rules 。
动作是在Apache OpenWhisk平台上运行的无状态代码段。 您可以通过JavaScript , Swift , Python , PHP , Java或任何二进制兼容的可执行文件(包括Go程序和打包为Linux容器的自定义可执行文件)来开发动作(或函数)。 可以显式调用动作或响应事件来运行动作。 在这两种情况下,每次执行操作都会产生一个激活记录,该记录由唯一的激活ID标识。 动作的输入和动作的结果是键值对的字典,其中键是字符串,值是有效的JSON值。
软件包提供事件提要; 任何人都可以创建新程序包供他人使用。
与这些供稿关联的触发器在事件发生时触发 ,开发人员可以使用规则将动作(或函数)映射到触发器。
以下命令用于在Apache OpenWhisk中创建,更新,删除和列出操作:
Usage:
wsk action [command]
Available Commands:
create create a new action
update update an existing action, or create an action if it does not exist
invoke invoke action
get get action
delete delete action
list list all actions in a namespace or actions contained in a package
设置OpenWhisk
让我们探讨一下它如何起作用。 首先,下载Minishift在您的工作站上创建一个单节点本地OKD (为Red Hat OpenShift供电的Kubernetes社区分发)集群:
$ minishift start --vm-driver=virtualbox --openshift-version=v3.10.0
Minishift启动并运行后,您可以使用admin / admin登录并创建一个新项目(命名空间)。 OpenShift上的项目OpenWhisk提供了部署Apache OpenWhisk所需的OpenShift模板:
$ eval $(minishift oc-env) && eval $(minishift docker-env)
$ oc login $(minishift ip):8443 -u admin -p admin
$ oc new-project faas
$ oc project -q
$ oc process -f https://git.io/openwhisk-template | oc create -f -
Apache OpenWhisk由许多必须相互启动和同步的组件组成,该过程可能需要花费几分钟才能稳定下来。 以下命令将等待,直到组件容器运行:
$ while $(oc get pods -n faas controller-0 | grep 0/1 > /dev/null); do sleep 1; done
您还可以通过以下方式查看状态:
$ while [ -z "`oc logs controller-0 -n faas 2>&1 | grep "invoker status changed"`" ]; do sleep 1; done
开发一个简单的Java动作
Maven原型是一个Maven项目模板工具包。 为了创建示例Java Action项目,您不会引用中央Maven原型,但是您需要首先生成自己的Maven原型,如下所示:
$ git clone https://github.com/apache/incubator-openwhisk-devtools
$ cd incubator-openwhisk-devtools/java-action-archetype
$ mvn -DskipTests clean install
$ cd $PROJECT_HOM
现在让我们创建一个简单的Java Action,将其部署到OpenWhisk,最后调用它以查看结果。 创建Java Action,如下所示:
$ mvn archetype:generate \
-DarchetypeGroupId=org.apache.openwhisk.java \
-DarchetypeArtifactId=java-action-archetype \
-DarchetypeVersion=1.0-SNAPSHOT \
-DgroupId=com.example \
-DartifactId=hello-openwhisk \
-Dversion=1.0-SNAPSHOT \
-DinteractiveMode=false
接下来,构建Java应用程序并在本地Minishift上部署到OpenWhisk:
$ cd hello-openwhisk
$ mvn clean package
$ wsk -i action create hello-openwhisk target/hello-openwhisk.jar --main com.example.FunctionApp
创建函数
hello-openwhisk ,通过调用它来验证函数:
$ wsk -i action invoke hello-openwhisk --result
由于所有OpenWhisk操作都是异步的,因此您需要添加--result
才能在控制台上显示结果。 成功执行命令将显示以下输出:
{"greetings": "Hello! Welcome to OpenWhisk" }
结论
借助Apache OpenWhisk,您可以使用流行的语言(如NodeJS ,Swift,Java,Go, Scala ,Python, PHP和Ruby)编写函数,并使用容器构建组件。 它轻松地支持本地和内部云基础架构(例如Kubernetes和OpenShift)中的许多部署选项。
接下来要读什么
翻译自: https://opensource.com/article/18/11/developing-functions-service-apache-openwhisk
apache服务 功能错误
apache服务 功能错误_如何使用Apache OpenWhisk开发功能即服务相关推荐
- 大脑构造图与功能解析_大脑的结构和功能分区_详解人脑构造与功能
大脑的结构和功能分区 _ 详解人脑构造与功能 学习,可以开阔人的大脑 ; 学习,可以使人的大脑拥有更多的知识,人的大脑和肢 体一样,多用则灵,不用则废.那么下面学习啦小编给大家分享一些大脑的结构和功 ...
- springboot增删改查案例_大神基于SpringBoot开发一个Restful服务,实现增删改查功能...
前言 在去年的时候,在各种渠道中略微的了解了SpringBoot,在开发web项目的时候是如何的方便.快捷.但是当时并没有认真的去学习下,毕竟感觉自己在Struts和SpringMVC都用得不太熟练. ...
- swagger 返回json字符串_[Swagger] Swagger Codegen 高效开发客户端对接服务端代码
[Swagger] Swagger Codegen 高效开发客户端对接服务端代码 @TOC 手机用户请横屏获取最佳阅读体验,REFERENCES中是本文参考的链接,如需要链接和更多资源,可以关注其他博 ...
- 小程序 和 web 功能对比_运动健身小程序开发有哪些功能
对健身的需求正在增加. 尽管体育馆正在逐步增加,但健身仍受到某些限制.首先是时间限制. 健身房有自己的营业时间,健身营业时间也是用户的正常工作时间. 除周末外,大多数人没有多余的运动时间. 其次,健身 ...
- apache配置cgi出错_大坑之Apache配置CGI解决提示500错误 | kTWO-个人博客
艾玛!这两天可把我累的够呛,心累的那种,用python写了个API想放在Apache服务器上面利用CGI使用,但是整了两个晚上,经过无数次尝试和失败,最终终于搞定了,最终豁然开朗的感觉,才觉得这特么真 ...
- mysql服务2013错误_错误2013(HY000):在“读取授权数据包”时丢失与MySQL服务器的连接,系统错误:0...
我收到以下错误 ERROR 2013 (HY000): Lost connection to MySQL server at 'reading authorization packet', syste ...
- apache poi使用例_使用java Apache poi 根据word模板生成word报表例子
[实例简介] 使用java Apache poi 根据word模板生成word报表 仅支持docx格式的word文件,大概是word2010及以后版本,doc格式不支持. 使用说明:https://b ...
- 印象笔记打开错误_印象笔记新增桌面便签功能
印象笔记最新的 macOS 客户端 9.0.0 发布了新功能:桌面便签,可以非常方便的将笔记置顶放置在桌面,充当传统的便签功能.@Appinn 注意此版本为国内团队发布的印象笔记客户端,但支持登录 E ...
- cics 服务端配置_使用PHP在CICS上构建RESTful服务
cics 服务端配置 存档日期:2019年5月15日 | 首次发布:2009年4月21日 CICS®TransactionServer®(TS)是功能强大的事务管理器,旨在进行快速,大量的处理. Su ...
最新文章
- 启动64位 IIS 32位应用程序的支持
- python查询天气
- Java:逐步读取/流式传输CSV文件
- LeetCode 1738. 找出第 K 大的异或坐标值(DP)
- 避开Google Voice Search利用Google Speech API实现Android语音识别
- 通过channel进行goroutine间的通信
- Activity 横竖屏切换
- sql server中case when的用法
- 学习python:实例属性和类属性
- 职场 | 算法是怎样决定你的职业生涯的
- C语言课程设计——学生成绩信息管理系统
- C语言程序设计(第四版)谭浩强 清华 【2000】
- 现代通信原理思维导图--第五章 模拟调制系统
- matlab直流电机转速 电流双闭环,转速电流双闭环直流调速系统的课程设计(MATLABSimulink)..docx...
- 瘦AP如何连接到无线控制器AC
- ecshop4.0php,ECSHOP安装教程【ECSHOP4.0安装教程】图解ECSHOP4.0安装教程流程和步骤-ECSHOP教程网...
- 国家图书馆最新推荐70本书
- 人工智能轨道交通行业周刊-第14期(2022.9.12-9.18)
- mimax 刷原生android,小米手机想爽刷原生安卓?不愁!
- HTML制作简单的页面