Web 技术研究所

我一直坚信着,Web 将会成为未来应用程序的主流

「API 交换机」概念引入

  现在有一大堆 HTTP 服务提供方和一大堆 HTTP 服务需求方,它们是由不同团队的不同人员开发的。服务需求方很难确定自己所需的提供方所在的机器,于是我们需要一个中心的交换机,人为地设置服务的路由表来将需求方的请求转发到其所需的服务方机器上。
  看到上面这段神奇的描述也许有人就想骂我了吧?什么鬼啊,根本看不懂!我自己都觉得挺绕的。其实这个描述是已经抽象化后的结果。如果把上面的 HTTP 服务提供方换成 Web API,把 HTTP 服务需求方换成 Web 前端项目,这么一看也许瞬间就可以明白。
  假如某个项目的前端和后端分别有 10 个开发者,然后有 10 个功能正在同步开发,每个功能对于一个前端和后端开发人员。假如某个功能开发完毕,要交个测试人员做测试,那么前端开发人员是不是要修改服务器配置或直接硬编码把测试的 API 服务器修改到后端开发人员提供的地址上呢?这么做显然是不科学的,因为每个业务需求对应的开发人员都不同,而且大部分前端开发者根本不了解服务器配置相关的事情,更不可能去改。当然有些公司的开发模式可能是使用统一的 API 服务器域名,然后动态修改过 hosts 来解决这个问题。这么做虽然可以解决一些简单的问题,但要是一个前端服务调用多套 API 之类的复杂业务出现就会变得非常麻烦。而且 hosts 这东西完全没可读性可言,所以我觉得这么做太过粗暴了。为了全面解决这个问题,在开发和测试环境的所有 API 调用都直接指向一台「API 交换机」上,测试人员只要只要某个功能的前后端分别在那两台机器上,到「API 交换机」上为它们添加对应关系即可开始测试。这样就解决了前后端开发和测试人员难以协调的问题。
  我早已厌倦了项目经理的人肉协调开发测试模式。人和猴子的区别就在于人会发明并利用工具,造出更好的轮子才是人该干的事情。
网名:
34.203.213.*
电子邮箱:
仅用于接收通知
提交 悄悄的告诉你,Ctrl+Enter 可以提交哦
神奇海螺
[查看全部主题]
各类Web技术问题讨论区
发起新主题
本模块采用即时聊天邮件通知的模式
让钛合金F5成为历史吧!
次碳酸钴的技术博客,文章原创,转载请保留原文链接 ^_^