大型应用程序正向基于服务的小巧而用途单一的应用转变

在一场网络研讨会上,Anne Thomas总结说,大型应用程序正向基于服务的小巧而用途单一的应用转变,而Matias Duarte已经在一次采访中谈到了连通这些应用。

在一场题为《面向数字化业务的应用程序架构》的网络研讨会上,Garner副总裁、著名分析师Anne Thomas介绍了当前应用程序架构的趋势。他指出,侧重于完备性的大而全的应用程序时代已经结束,我们正见证其向侧重于简单性的小而单一的应用转变。希望为用户提供更好的体验是这一转变的推动力,所以,每个应用的创建都以特定用户为目标而尽可能地简单,并不考虑任何非必须的东西。应用普遍基于高可扩展的服务来完成它们的任务。

另外,Thomas还指出,许多应用正转向基于SOA原则和领域驱动模型的微服务进行构建:

    每个微服务封装了一种特定的功能
    每个微服务都有自己的数据
    明确定义了与其它服务的依赖关系
    通过Web API在微服务上执行命令和查询
    数据模型中的更新通知通过异步消息传播
    系统使用BASE而不是ACID事务模型

下面的幻灯片(PDF)展示了客户端如何与微服务交互以及事件如何在服务间传播:

大型应用程序正向基于服务的小巧而用途单一的应用转变

据Thomas介绍,客户端使用POST、PUT或DELETE在微服务上执行命令,并使用GET查询。当命令执行时,一个内部事件处理器会更新数据模型(这里没有显示,它包含在“查询”组件中),另外还会产生一个异步事件,将更新内容通知相关微服务。一个发布-订阅代理会作为消息通信中介。

屏幕尺寸这一移动端引入的主要限制加速了应用的这种转变。虽然可以做到,但在一个移动设备上重新创建有菜单和工具栏的标准桌面应用并不实用。谷歌设计副总裁Matias Duarte在FORM SF 2014:围炉会议上谈到,人们已经采用了一种新方法(24分12秒):

    转向移动端的最大好处之一不在于由此产生的任何特定的设计模式,而在于屏幕太小这样一个简单的约束。你无法把所有东西都放在上面。你有更多种更有针对性的工具,而不是一个很复杂的大型工具,并且你只会用到其中的一小部分,但你要承担所有这些复杂性,即使你只用到其中一小部分。

Duarte认为,虽然这些简单应用看上去在执行复杂任务方面受到限制,但连通这些小应用非常有潜力(25分50秒):

    其中一个前沿领域是使这些更简单、更有针对性、更直观的工具更好地协同工作,以无缝的方式做一些它们一起可以完成但单独无法进行的工作。

按照Duarte的说法,应用应该了解环境以及彼此的存在,能以自然的方式交换信息和功能。他指出,移动应用的功能目前相当孤立。他认为,这是一个有很多事情可以做并能取得成果的领域。当问到谷歌是否正在做这方面的工作时,他回避了这个问题,只是说他“对此充满热情。”虽然我们不能确切地说谷歌正在做的工作就是互联应用,但我们知道他们正在推动移动深度链接,这是向这个方向发展的第一步。

原文地址:https://www.cnblogs.com/sennly/p/4152426.html