美文网首页
16 高并发之应用拆分

16 高并发之应用拆分

作者: 十丈_红尘 | 来源:发表于2018-11-03 14:13 被阅读0次
    1️⃣应用拆分实例

    2️⃣应用拆分原则

    1 业务优先
    2 循序渐进
    3 兼顾技术 : 重构 分层
    4 可靠测试


    3️⃣应用拆分的思考

    1 应用之间通信 : RPC(dubbo等) or 消息队列;
    2 应用之间的数据库设计 : 每个应用都有其独立的数据库;
    3 尽量避免事物操作跨应用;


    4️⃣应用拆分组件
    1 服务化 Dubbo

    Dubbo是阿里巴巴公司开源的一个高性能优秀的服务框架,使得应用可通过高性能的 RPC 实现服务的输出和输入功能,可以和 Spring框架无缝集成。

    主要核心部件
    Remoting: 网络通信框架,实现了 sync-over-async 和request-response 消息机制.
    RPC: 一个远程过程调用的抽象,支持负载均衡、容灾和集群功能
    Registry: 服务目录框架用于服务的注册和服务事件发布和订阅

    2 微服务 Spring Cloud
    Spring Cloud是一系列框架的有序集合。它利用Spring Boot的开发便利性巧妙地简化了分布式系统基础设施的开发,如服务发现注册、配置中心、消息总线、负载均衡、断路器、数据监控等,都可以用Spring Boot的开发风格做到一键启动和部署。Spring Cloud并没有重复制造轮子,它只是将目前各家公司开发的比较成熟、经得起实际考验的服务框架组合起来,通过Spring Boot风格进行再封装屏蔽掉了复杂的配置和实现原理,最终给开发者留出了一套简单易懂、易部署和易维护的分布式系统开发工具包。
    Spring Cloud组成
    Spring Cloud的子项目,大致可分成两类,一类是对现有成熟框架”Spring Boot化”的封装和抽象,也是数量最多的项目;第二类是开发了一部分分布式系统的基础设施的实现,如Spring Cloud Stream扮演的就是kafka, ActiveMQ这样的角色。对于我们想快速实践微服务的开发者来说,第一类子项目就已经足够使用,如:
    • Spring Cloud Netflix
        是对Netflix开发的一套分布式服务框架的封装,包括服务的发现和注册,负载均衡、断路器、REST客户端、请求路由等。

    • Spring Cloud Config
        将配置信息中央化保存, 配置Spring Cloud Bus可以实现动态修改配置文件

    • Spring Cloud Bus
        分布式消息队列,是对Kafka, MQ的封装

    • Spring Cloud Security
        对Spring Security的封装,并能配合Netflix使用

    • Spring Cloud Zookeeper
        对Zookeeper的封装,使之能配置其它Spring Cloud的子项目使用

    • Spring Cloud Eureka

    Spring Cloud Eureka 是 Spring Cloud Netflix 微服务套件中的一部分,它基于Netflix Eureka 做了二次封装,主要负责完成微服务架构中的服务治理功能。

    相关文章

      网友评论

          本文标题:16 高并发之应用拆分

          本文链接:https://www.haomeiwen.com/subject/acykxqtx.html