• 2022就业季|Spring认证教你,如何使用 Spring 构建 REST 服务(四)


    书接上文⬆⬆⬆

    不断发展的 REST API

    通过一个额外的库和几行额外的代码,您已将超媒体添加到您的应用程序中。但这并不是使您的服务成为 RESTful 所需的唯一事情。REST 的一个重要方面是它既不是技术堆栈也不是单一标准。

    REST 是架构约束的集合,采用这些约束会使您的应用程序更具弹性。弹性的一个关键因素是,当您对服务进行升级时,您的客户不会遭受停机时间的困扰。

    在“过去”的日子里,升级因破坏客户端而臭名昭著。换句话说,升级到服务器需要更新客户端。在当今时代,花费数小时甚至数分钟进行升级的停机时间可能会造成数百万美元的收入损失。

    有些公司要求您向管理层提出一个计划,以尽量减少停机时间。过去,您可以在周日凌晨 2:00 进行升级,此时负载最低。但在今天的基于互联网的电子商务中,国际客户在其他时区,这样的策略就没有那么有效了。

    基于 SOAP 的服务和基于CORBA 的服务非常脆弱。很难推出可以同时支持新旧客户端的服务器。使用基于 REST 的实践,这要容易得多。特别是使用 Spring 堆栈。

    支持对 API 的更改

    想象一下这个设计问题:您已经推出了一个具有Employee基于此记录的系统。该系统大受欢迎。你已经把你的系统卖给了无数的企业。突然,需要拆分员工的姓名firstName并lastName出现。

    哦哦。没想到。

    在您打开课程并用andEmployee替换单个字段之前,请停下来想一想。这会破坏任何客户吗?升级它们需要多长时间。您甚至控制所有访问您服务的客户端吗?namefirstNamelastName

    停机时间 = 损失金钱。管理层准备好了吗?

    有一个比 REST 早几年的旧策略。

    永远不要删除数据库中的列。

  • 相关阅读:
    DSL查询语法
    技术科普:汽车开放系统架构AUTOSAR
    业务工人业务实体元模型-软件方法(下)第9章分析类图案例篇Part09
    数据结构——lesson5栈和队列详解
    【操作系统】进程,线程和协程的哪些事儿
    嵌入式操作系统--篮球记分计时系统
    对时序数据进行分类与聚类
    bp神经网络是用来干嘛的,bp神经网络和神经网络
    代码审计(某个人发卡系统V6.0(php))
    Ubuntu22.04安装 wordpress
  • 原文地址:https://blog.csdn.net/CIPSDN/article/details/126036367