zoukankan      html  css  js  c++  java
  • 分布式布局简述

    前台服务和后台服务需要为用户提供服务,两者都要Service为其提供服务。Service在Zookeeper中注册服务,cotroller和portal在需要服务时直接在zookeeper 寻找服务。Dao层则负责服务的具体实现.

    1. Dao 层做数据持久层的工作,负责与数据库进行联络的任务都在Dao层。
    2. Service 负责业务模块的逻辑应用设计。
    3. Controller 层负责具体的业务模块流程控制,调用Service 层的接口来实现控制业务流程。

    使用doubbo把项目拆分后:

    1. Controller作为一个项目的消费者。
    2. Service和Dao作为服务的提供者。
    3. Zookeeper作为doubbo服务的注册中心,可以做到集群管理数据。

    当Service封装到Controller中时,就是ssm设计模式。同时会使前后台都分别要有对应服务,即在同一台服务器上进行服务。而通过zookeeper可以是数据管理更有效,服务效率更高。

    当大量用户访问同一个互联网业务,会有很多问题:高吞吐,高并发,低延迟和负载均衡。

    高吞吐,即同时承载大量用户的使用。整个系统同时服务的用户数,这个吞吐量可定不是一台服务器可以解决的。所以就需要多台服务器同时协调服务。

    高并发是高吞吐的一个延伸需求,当我们承载海量用户时,希望每台服务器能及其所能的工作,最好不要出现无谓的消耗和等待的情况。

    低延时,要求我们在大量用户访问时很快地返回计算结果。

    负载均衡,是为了有效的应对用户来源的复杂性。要让同时发生的请求有效的让多个不同的服务器承载。

    产生的问题:

    1. 如何利用多台服务器,不让一部分服务器影响整个系统的处理能力。
    2. 如何既可能多的处理任务,减少消耗。
    3. 请求的分拣和转发,如何尽可能让请求较快得到处理。

    分布式系统就是为了解决这些问题的基本方法。

    分布式架构:

    1. 系统访问的特点遵循二八定律,即80%的业务访问集中在20%的数据上。将数据库中访问集中的一部分数据储存在缓存服务器上,减少数据库的访问次数,降低数据库的访问压力。
    2. 多台服务器通过负载均衡同时向外部提供服务,解决单台服务器处理能力和存储上限的问题。
    3. 系统上按照业务进行拆分改造,应用服务器按照业务区分进行分别部署。
    4. ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、名字服务、分布式同步、组服务等。目标就是封装好复杂易出错的关键服务,将简单易用的接口和性能高效、功能稳定的系统提供给用户。
    你一定会喜欢那个因为喜欢她而发光的自己!
    个人博客:http://www.yanghelong.top
  • 相关阅读:
    03 python学习笔记-文件操作
    02 Python学习笔记-基本数据类型
    01 Python简介、环境搭建及包管理
    一、如何使用postman做接口测试笔记一
    django测试开发-1.开始Hello django!
    Oracle创建用户并给用户授权查询指定表或视图的权限
    ORA-00933 UNION 与 ORDER BY
    excel设置单元格不可编辑
    oracle之分组内的字符串连接
    10 款强大的JavaScript图表图形插件推荐
  • 原文地址:https://www.cnblogs.com/zzu-general/p/9010119.html
Copyright © 2011-2022 走看看