java web 框架图

  • 系统架构是灵活的,根据需求的不同,不一定每一层的技术都需要使用。例如:一些简单的CRM系统可能在产品初期并不需要K-V作为缓存;一些系统访问量不大,并且可能只有一台业务服务器存在,所以不需要运用负载均衡层。

  • 业务系统间通信层并没有加入传统的HTTP请求方式。这是因为HTTP请求-响应的延迟比较高,并且有很多次和正式请求无关的通信(这在下面的内容中会详细讲到)。所以,传统的HTTP请求方式并不适合在两个高负载系统之间使用,其更多的应用场景是各种客户端(WEBIOSAndroid等)->服务器端的请求调用。

  • 我们把业务编码中常使用的缓存系统归入到数据存储层,是因为类似于Redis这样的K-V存储系统,从本质上讲是一种键值数据库。为什么Redis会很快以至于可以作为缓存使用,我将在随后的文章中进行详细的描述。

  • 还有一点需要注意的是,上面架构图中的每层之间实际上不存在绝对的联系(例如负载层一定会把请求转送的业务层,这样的必然性是不存在的),在通常情况下各层是可以跨越访问的。举例说明:如果HTTP访问的是一张图片资源,负载层不会把请求送到业务层,而是直接到部署的分布式文件系统上寻找图片资源并返回。再比如运用LVSMysql负载时,负载层是直接和数据存储层进行合作。


image.png

image.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,886评论 18 139
  • 可扩展Web架构与分布式系统 - 全栈开发者 http://www.admin10000.com/documen...
    葡萄喃喃呓语阅读 920评论 0 6
  • 来源:《美元与感觉:我们如何错误理解金钱,以及如何更明智地花钱》 第一,不要忽略机会成本。你应该从机会成本的角度来...
    Jacub阅读 225评论 0 0
  • 人物造型来自《森女萌萌哒》。小卡片做起来很简单,效果却挺温馨的哟~
    方羽夕阅读 293评论 0 2
  • 微商最大的魅力就是让每一个人都有一门槛的学习销售的能力。并且是每个人最实操最落地的销售的方法的分享。 而销售呢,其...
    熊芳菲阅读 784评论 0 1