Apache OpenWhisk学习手册 PDF下载 公众号 其他格式

Apache OpenWhisk学习手册

计算机与互联网 软件工程及软件方法学

  • ISBN:9787519854812
  • 作者:米歇尔·西巴拉
  • 版次:1
  • 出版社:中国电力出版社
  • 审图号:9787519854812
  • 出版时间:2021-07-13

手机扫码免费下载

纠错留言

#电子书截图

Apache OpenWhisk学习手册截图

#电子书简介


内容介绍

本书的主要内容有:检查OpenWhisk的无服务器架构,包括程序包、操作、序列、触发器、规则和feed的使用。使用命令行或JavaScript API与OpenWhisk进行功能对接。使用常见的四种设计模式进行设计应用。了解如何在无服务器环境中测试和调试代码。了解如何使用JavaScript、Python和Go来开发无服务器应用程序。了解有关CouchDB和Kafka与OpenWhisk的集成。使用完整的分步指南在Kubernetes中安装OpenWhisk。



作者介绍

Michele Sciabarrà是信息技术的资深人士,目前是Sciabarra.com的首席执行官,这是一家专注于Kubernetes和无服务器解决方案的咨询公司。他还是Apache OpenWhisk项目的贡献者,尤其是Go、Swift、Rust、Java和其他编程语言的高性能Action Loop运行时的作者。



目录

"目录

序 . 1

前言 3

第一部分 OpenWhisk 开发介绍

第1 章 无服务器和OpenWhisk 体系结构 11

OpenWhisk 体系架构 12

功能和事件12

体系架构概览 13

OpenWhisk 编程语言 14

操作和操作组合 15

动作链接 16

OpenWhisk 是如何工作的? 17

Nginx 18

控制器 19

负载均衡器19

调用者 20

客户端 21

无服务执行限制 21

action 是功能性的 23

动作是事件驱动的 23

操作没有本地状态 24

action 是有时间限制的 24

操作是无序的 25

从Java EE 到无服务 25

经典的Java EE 架构 25

等效于Java EE 的无服务 27

小结 30

第2 章 一个简单的OpenWhisk 应用程序 33

开始 34

Bash 命令提示行 34

IBM 云 35

创建一个简单的联系人表单 37

表单验证 39

验证地址 40

返回结果 41

保存表单数据 42

调用action 45

存储到数据库中 47

发送电子邮件 49

配置Mailgun 50

编写一个action 来发送邮件 50

创建一个动作序列 53

小结 54

第3 章 OpenWhisk CLI 和JavaScript API 55

wsk 命令 56

配置wsk 命令 57

OpenWhisk 实体名 58

定义包 59

创建操作 61

操作的链式序列 64

包含一些你自己的代码作为库 66

检查激活 69

管理触发器和规则 70

使用反馈 75

通用JavaScript API 78

异步请求 78

使用promise 79

创造promise 80

使用OpenWhisk API 82

调用OpenWhisk 操作 83

触发触发器87

检查激活 89

小结 90

第4 章 OpenWhisk 通用设计模式 91

内置模式 92

单例模式 93

外观模式 94

原型模式 96

装饰模式 98

用操作实现通常模式 103

策略模式 103

责任链 106

命令模式 109

小结 113

第5 章 OpenWhisk 中的集成设计模式 115

集成模式 117

代理模式 117

适配器模式121

桥模式 123

观察模式 125

用户交互模式 130

组合模式 131

访问模式 133

MVC 模式 135

小结 138

第6 章 单元测试OpenWhisk 应用程序 139

使用Jest 测试运行程序 140

使用Jest 140

本地测试 143

Snapshot 测试 150

Mocking 155

什么是mock ? 155

模拟一个HTTPS 请求 156

模拟OpenWhisk API 163

使用模拟库调用操作 163

模拟操作参数 165

模拟一个序列 165

小结 167

第二部分 先进的OpenWhisk 开发应用

第7 章 用Python 开发OpenWhisk 操作 171

Python 运行时间 171

Python 运行时间是多少? 172

运行时间可用的库 174

使用第三方库 177

在zip 文件中打包一个Python 应用程序 177

使用virtualenv 180

virtualenv 和pip 的工作原理181

虚拟环境自动化 182

使用yattag 库 182

建立virtualenv,包括一个库 183

使用OpenWhisk REST API 184

身份验证 185

用curl 连接到API 186

在Python 中使用OpenWhisk REST API 188

Python 中的调用、激活和触发器 190

阻塞操作调用 191

非阻塞触发器调用 193

检索调用的结果 195

测试Python 操作 197

在本地重新创建Python 运行时环境 197

单元测试示例 198

在本地调用OpenWhisk API 201

模拟请求 202

小结 204

第8 章 在OpenWhisk 中使用CouchDB 205

如何查询CouchDB 206

在命令行上探索CouchDB 208

CouchDB 工作方式 209

创建数据库209

创建 210

检索 211

更新 211

删除 212

附件 213

查询CouchDB 216

搜索数据库217

索引 218

字段 219

分页支持 220

书签功能 221

选择器 221

运算符 223

CouchDB 设计文件 225

视图函数 227

用map 函数提取数据 227

用map 函数实现join 230

加入单个文档 233

带有reduce 函数的聚合 234

验证函数 236

使用cloudant 包 238

cloudant 包中的crud 操作 240

包含包的查询和视图 244

小结 246

第9 章 Python 中的OpenWhisk Web 应用程序 247

CRUD 应用程序体系结构 247

抽象数据库访问 250

实现modelinit() 251

实现modelinsert() 251

实现modelfind() 253

测试 insert 和 find 253

实现modelupdate() 和modeldelete() 255

测试update 和 delete 257

用户界面 257

测试 258

使用viewtable 呈现表 260

使用viewform 呈现表单 262

控制器 263

处理操作 264

边界效应 268

高级的Web 操作 269

改进CRUD 应用程序 272

验证和错误报告 274

分页 276

创建索引 277

使用书签和限制 277

页码 278

处理书签 279

上传和显示图像 280

文件上传表单 281

解析文件上传 282

将数据保存在数据库中 284

生成一个 标记 284

生成一个URL 来检索图像 285

使用HTTP 请求呈现图像 287

小结 288

第10 章 在Go 中开发OpenWhisk 操作 289

你的第一个Go 语言操作 290

多文件包 293

import、GOPATH 和vendor 文件夹 294

在main 中多个文件的操作 295

多个包的操作 297

使用第三方库的操作 299

Go 如何使用第三方开源库 299

为库选择一个给定版本 300

预编译操作302

测试Go 操作 305

编写测试 305

测试用例 306

嵌入的资源 308

使用Web 操作提供资源 310

在Go 中访问OpenWhisk API 315

实用程序 315

HTTP 请求 317

调用OpenWhisk 操作 319

触发触发器321

检索与激活ID 关联的数据 323

小结 324

第11 章 通过OpenWhisk 使用Kafka 325

介绍Apache Kafka 326

Kafka 代理和协议 327

消息和关键字 328

主题和划分328

偏移量和客户机组 329

在IBM Cloud 中创建Kafka 实例 329

创建一个实例 330

创建一个主题 331

获取证书 332

使用消息传递包 333

创建连接和反馈 334

使用一个操作接收消息 334

使用kafkacat 发送消息 335

测试Kafka 代理 336

一个在Go 中的Kafka Producer(生成器) 338

创建一个Producer 338

发送Kafka 消息 340

编写发送者操作 341

部署和测试Producer 343

一个在Go 中的Kafka Consumer 344

创建一个Consumer 345

接收一个消息 347

编写一个接收者操作 349

测试Consumer 351

实现Web 聊天的应用程序 352

综述 353

用户界面 354

初始化 355

加入 356

接收 358

发送 359

小结 359

第12 章 使用Kubernetes 部署OpenWhisk 361

安装Kubernetes 362

安装kubectl 和 Helm 363

在本地安装Kubernetes 365

在云端安装Kubernetes 367

Kubernetes 云部署的架构 368

使用cloud-init 安装Kubernetes 的一般过程 370

在Hetzner Cloud 上安装 374

在AWSA 云上安装 377

在裸金属服务器上安装Kubernetes 381

收集所需软件 382

网络结构 383

安装脚本 384

创建集群 385

安装OpenWhisk 388

配置Kubectl 389

配置Helm 390

在Docker Desktop 上安装 391

在Kubernetes 集群中安装393

配置OpenWhisk 命令行界面 397

不安全地为Docker Desktop 配置wsk 397

创建一个新的命名空间 397

小结 399

总结 399

作者介绍 401

封面介绍 401"


  • 评论列表(0

留言评论