zoukankan      html  css  js  c++  java
  • 分布式系统

    什么是分布式系统

    单体:所有的代码在一个工程中,最多拆分模块打成jar引用或者maven拆分成代码工程模块,将不同的代码放在不同的工程代码中
    分布式:分而治之思想,讲义个庞大的系统拆分成很多小的系统,甚至是很多小的服务,不同的系统之间通过接口相互调用,每个子系统有个子的数据库
    微服务:将服务拆分成多个小的服务,不同服务之间进行调用

    什么是CAP

    CAP原则又称CAP定理,指的是在一个分布式系统中, Consistency(一致性)、 Availability(可用性)、Partition tolerance(分区容错性),三者不可得兼。
    一致性(C):分布式系统中所有的数据备份,在同一时刻是否是同样的值
    可用性(A):在集群中的一部分节点故障后,集群整体是否还能响应客户短的请求
    分区容错性(P):不同分区的服务之间是否能够调用(这个必须实现)
    dubbo保证AP springcloud保证CP

    分布式系统常见问题

    1. 框架选择:目前流行的dubbo和springcloud
    2. 分布式事务:一旦系统拆分成几个子系统,那么贯穿全局的分布式事务用该怎么处理?(TCC、最终一致性、2PC)
    3. 分布式锁:不同系统之间争抢同一资源,怎样保证资源的同步
    4. 分布式缓存:很多子系统要共用同一个缓存问题(Redis)
    5. 分布式消息:多个子系统之间传递消息要怎么做(消息中间件MQ)
    6. 分布式搜索系统:单体系统中可以在本地基于Lencene开发一个全文搜索模块,但是在分布式系统中呢?你需要在系统里引入一个外部的分布式搜索系统,比如Elasticsearch
    7. 其他问题:比如说分布式配置中心、分布式日志中心、分布式监控告警中心、分布式会话,等等,都是分布式系统场景下你需要使用和了解的一些技术。
    8. 系统部署问题:子系统过多,怎么部署
  • 相关阅读:
    关于这个 blog
    P6499 [COCI2016-2017#2] Burza 题解
    CF1172F Nauuo and Bug 题解
    CF1479D Odd Mineral Resource 题解
    CF1442E Black, White and Grey Tree 题解
    CF1442D Sum 题解
    CF1025D Recovering BST 题解
    CF1056E Check Transcription 题解
    CF1025F Disjoint Triangles 题解
    红包算法的PHP实现
  • 原文地址:https://www.cnblogs.com/monkay/p/11950825.html
Copyright © 2011-2022 走看看