应用程序架构正在从一个大而全的模型逐步发展为一个更加分布式的模型。这个变化的关键动力来源之一是云计算的到来及因此而拥有的不断增长的计算规模。对于一个主要从事构建与管理所谓大而全的软件的企业(包括其人员与工作流程),要想开发新的分布式系统,则不仅需要重新学习一些过时的设计方法,还需要会将一些新的模式应用到其中。作为其中的一部分,我将从架构的角度详细介绍在过渡到分布式应用程序的过程中将会凸显出来的问题。
除了上述问题,当构建一个分布式应用程序时,还需要考虑容器的操作系统与容器的运行时环境。其它诸如程序运行时环境、部署管理、DNS、安全问题、SSO/OAUTH、API网关、断路器(Circuit breakers)、性能与可扩展性等问题依然需要被解决。
在你的分布式开发生涯中,如果有其它没有被提及但你又认为很重要的分布式应用架构问题,也可以把它们分享出来。