分布式系统学习笔记

分布式系统的定义

分布式系统就是若干独立计算机的集合,这些计算机对于用户来说就像是单个相关系统。

当在不同的主机执行不同的功能来最终完成同一个服务,这就可以叫做分布式系统。当在不同的主机执行相同的功能,这就叫做集群。集群就是将相同的程序,通过不断横向扩展,以提高服务能力的方式。

分布式系统的优势

分布式系统因为将数据、功能等都分到多个主机,这样如果发生由于各种原因而导致的主机崩溃的时候,我们可以减轻风险,另一个重要的优势就是可扩展性,任何主机都会有性能的极限,而分布式可以通过不断扩张主机的数量以实现横向水平性能的扩展,主机数量越多,CPU、内存、存储资源等也就越多,能够处理的并发访问量也就越大。

分布式系统面临的挑战

  • 异构性:分布式系统由于基于不同的网络、操作系统、计算机硬件和编程语言来构造,所以必须用一种通用的网络通信协议来屏蔽异构系统之间的差异。一般由中间件来处理这些差异。
  • 一致性:数据被分散或者复制到不同的主机上,如何保证各台主机的一致性则成为一个难点。
  • 故障独立性:分布式系统要求单个主机出现故障不会影响整个系统的正常使用。
  • 安全性:由于分布式系统主要通过网络通信来相互沟通,所以网络通信中的数据安全也是一个需要解决的问题。
  • 可扩展性:系统要设计成随着业务量的增加,相应的系统也必须要能扩展来提供相对应的服务。

分布式系统基础设施

  1. 分布式缓存系统
    分布式缓存主要用于高并发环境相爱,减轻数据库的压力,提高系统的响应速度和并发吞吐量。当大量的读、写请求涌向数据库时,磁盘的处理速度和内存不再一个量级,因此,在数据库之前加一层缓存,能够显著提高系统的响应速度,并降低数据库的压力。
  2. 持久化存储
    常见的分布式系统存储解决方案,包括Mysql的分布式扩展、HBase的API及使用场景、Redis的使用等。
  3. 分布式信息系统
    消息可以被保存在队列中,直到被接受者取出。
  4. 搜索引擎
    垂直化的搜索引擎。
  5. CDN系统
  6. 负载均衡系统
  7. 运维自动化系统
  8. 实时计算系统
  9. 离线计算系统
  10. 分布式文件系统
  11. 日志收集系统
  12. 监控系统
  13. 数据仓库

今天先写到这儿,后面补充。。。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值