使用 Kitura 和 Kubernetes 设计一个计步应用  

用一个原生 iOS 应用和 Kubernetes 上的 Kitura 开发一个全栈 Swift 应用程序

| By Anthony Amanse

Description

全栈开发可能会很麻烦。当您使用不同语言和框架进行编码时,情况可能很混乱。Swift 开放源码给开发者带来了许多变化,其中最大的变化是 Swift 允许 iOS 开发人员完全使用 Swift 对其后端进行编码。Kitura 是一个强大的服务器端 Swift Web 框架,可以帮助开发人员将更多精力和时间集中在应用程序的逻辑上。Kitura 还可以被部署到 Kubernetes 并在公共域中公开,以充当 iOS 应用的后端基础架构。

概览

在本 Code Pattern 中,我们将使用 Swift 创建一个 iOS 计步应用。该应用程序的后端也将用 Swift 编写,同时利用 Swift 的服务器端 Web 框架 Kitura。本 Code Pattern 适合那些希望用同一种语言编写前和后端的 iOS 开发人员。使用同一种语言可以帮助开发人员将更多精力和时间花在应用程序的逻辑上,而不是学习或处理另一种编程语言。3 个简单的 Kitura 微服务将会部署到 Kubernetes(一种容器编排平台)中。作为示例的 iOS 应用程序是一个采用 “fitcoin”(“健康币”)作为用户奖励的计步器。 完成本 Code Pattern 后,您将掌握如何:
  • 使用 Kitura 构建服务器端 Swift 应用程序。
  • 使用 Kitura 和 Swift Kuery 连接数据库。
  • 将 Kitura 微服务部署到 Kubernetes 中。
  • 将 iOS 应用与 Kitura 后端集成。
  • 在公共域中通过 TLS 提供 Kubernetes。

  1. 第一次打开 iOS 应用程序时,它会尝试通过 “Users” 微服务注册。
  2. “Users” 微服务与外部服务进行通信,以便将其虚拟形象分配给用户。
  3. 然后,“Users” 微服务将所有用户信息持久化到数据库中。“Users” 微服务还会更新用户的步数并提供 “fitcoin” 作为奖励。
  4. “Leaderboard” 微服务根据数据库中存储的数据,提供用户步数排行榜。
  5. “Shop” 微服务获取数据库中的产品信息,用户可以通过其 “fitcoin” 交换这些产品。各个(用于创建交易的)API 也会在这里更新用户的 “fitcoin” 。

Instructions

准备好使用这个 Code Pattern 了吗?有关如何开始运行和使用此应用程序的完整细节,请参阅 README 文件。

相关博客

相关链接

英文原文

本 Code Pattern 翻译自 Design a step-tracking app with Kitura and Kubernetes(2018-08-08)。

Swift-Kuery-ORM

一个为 Swift 构建的 ORM(Object Relational Mapping,对象关系映射)库。简化了将模型对象持久保存到服务器的过程。

cert-manager

一个原生的 Kubernetes 证书管理控制器。它可以帮助从各种来源发放证书,比如 Let’s Encrypt、HashiCorp Vault 或一个简单的签名密钥对.