美文网首页
SaaS应用12原则:(四)后端服务

SaaS应用12原则:(四)后端服务

作者: 低至一折起 | 来源:发表于2019-08-08 15:09 被阅读0次

把后端服务(backing services)当作附加资源

后端服务是指程序运行所需要的通过网络调用的各种服务,如数据库(MySQL,CouchDB),消息/队列系统(RabbitMQ,Beanstalkd),SMTP 邮件发送服务(Postfix),以及缓存系统(Memcached)。

类似数据库的后端服务,通常由部署应用程序的系统管理员一起管理。
除了本地服务之外,应用程序有可能使用了第三方发布和管理的服务。示例包括 SMTP(例如 Postmark),数据收集服务(例如 New Relic 或 Loggly),数据存储服务(如 Amazon S3),以及使用 API 访问的服务(例如 Twitter,Google Maps,Last.fm)。

12-Factor 应用不会区别对待本地或第三方服务

对应用程序而言,两种都是附加资源,通过一个 url 或是其他存储在 配置中的服务定位/服务证书来获取数据。12-Factor 应用的任意 部署 ,都应该可以在不进行任何代码改动的情况下,将本地 MySQL 数据库换成第三方服务(例如 Amazon RDS)。类似的,本地 SMTP 服务应该也可以和第三方 SMTP 服务(例如 Postmark )互换。上述 2 个例子中,仅需修改配置中的资源地址。

每个不同的后端服务是一份资源。例如,一个 MySQL 数据库是一个资源,两个 MySQL 数据库(用来数据分区)就被当作是 2 个不同的资源。12-Factor 应用将这些数据库都视作附加资源,这些资源和它们附属的部署保持松耦合

attached-resources.png

部署可以按需加载卸载资源

例如,如果应用的数据库服务由于硬件问题出现异常,管理员可以从最近的备份中恢复一个数据库,卸载当前的数据库,然后加载新的数据库,整个过程都不需要修改代码。

应用也因此具有容错和复原能力,因为它一方面要求编码时就要考虑资源不可用的情况,另外一方面也增强微服务方法的好处

参考:

相关文章

  • SaaS应用12原则:(四)后端服务

    把后端服务(backing services)当作附加资源 后端服务是指程序运行所需要的通过网络调用的各种服务,如...

  • SaaS应用12原则:简介

    简介 如今,软件通常会作为一种服务来交付,它们被称为网络应用程序,或软件即服务(SaaS)。12-Factor(1...

  • SaaS应用12原则:(十一)日志

    把日志当作事件流 日志使得应用程序运行的动作变得透明。 在基于服务器的环境中,日志通常被写在硬盘的一个文件里,但这...

  • SaaS应用12原则:(八)并发

    通过进程模型进行扩展 任何计算机程序,一旦启动,就会生成一个或多个进程。互联网应用采用多种进程运行方式。例如,PH...

  • SaaS应用12原则:(二)依赖

    显式声明依赖关系( dependency ) 大多数编程语言都会提供一个打包系统,用来为各个类库提供打包服务,就像...

  • SaaS应用12原则:(三)配置

    在环境中存储配置 通常,应用的配置在不同部署(预发布、生产环境、开发环境等等)间会有很大差异。这其中包括: 数据库...

  • SaaS应用12原则:(六)进程

    以一个或多个无状态进程运行应用 运行环境中,应用程序通常是以一个和多个进程运行的。 最简单的场景中,代码是一个独立...

  • 云应用设计的十二条准则

    简介 如今,软件通常会作为一种服务来交付,它们被称为网络应用程序,或软件即服务(SaaS)。12-Factor 为...

  • The Twelve-Factor App

    简介 如今,软件通常会作为一种服务来交付,它们被称为网络应用程序,或软件即服务(SaaS)。12-Factor 为...

  • 现代软件开发流程(12-factors)

    简介 如今,软件通常会作为一种服务来交付,它们被称为网络应用程序,或软件即服务(SaaS)。12-Factor 为...

网友评论

      本文标题:SaaS应用12原则:(四)后端服务

      本文链接:https://www.haomeiwen.com/subject/dnexjctx.html