使用OpenWhisk的无服务器Swift

Swift是开发人员中增长最快的编程语言之一。

Swift排名前15位,比我们追踪的任何其他语言都要快。

RedMonk编程语言排名 redmonk.com/sogrady/2017/03/17/…

该语言是为构建移动应用程序而创建的,现已在后端开发中流行。

但是,对于开始构建后端应用程序的Swift开发人员而言,他们现在发现自己必须管理计算基础架构才能在云中运行其应用程序。

进入无服务器云平台…☁️☁️☁️

这些服务允许开发人员将代码(而不是VM)推送到云中。 该平台允许您将外部事件源(例如API请求或消息队列)连接到代码中的函数。 当事件发生时,您的代码将被实例化并执行以处理每个请求。 开发人员仅需为处理每个请求所需的毫秒数付费。

无服务器平台使您可以在云中运行应用程序,而不必担心基础架构。 😎

Apache OpenWhisk 是当前唯一支持Swift语言功能的无服务器平台。

让我们先看一下如何在OpenWhisk中使用Swift,然后再深入研究该平台如何实现此功能,为我们提供一些有关OpenWhisk上Swift的提示和技巧。

Swift on OpenWhisk

使用CLI

使用以下源代码创建一个Swift文件。

  func main(args:[String:Any])-> [String:Any] { 
如果让name = args [“ name”]为? 字符串{
return [“ greeting”:“你好\(名字)!” ]
}其他{
return [“ greeting”:“你好陌生人!” ]
}
}

快速动作必须消耗并返回字典。 作为函数参数传递的字典将包含事件参数。 返回的字典值必须支持序列化为JSON。

使用命令行实用工具创建并调用新的OpenWhisk操作。

  $ wsk action创建swift action.swift 
好的:快速创建动作
$ wsk操作调用swift --result
{
“ greeting”:“你好陌生人!”
}
$ wsk action调用swift --result --param名称世界
{
“ greeting”:“ Hello World!”
}

result标志将仅在控制台中显示操作输出,而不是完整的API响应。

源文件必须具有一个称为main的函数。 每次调用都会执行此功能。 可以覆盖要调用的函数名称,如下所示。

  func foo(args:[String:Any])-> [String:Any] { 
return [“ greeting”:“你好,foo!” ]
}