什么是分布式?
分布式是为了解决单个物理服务容器和性能瓶颈问题而采用的优化手段。该领域需要解决的问题很多,在不同的技术层面上有包括:分布式文件系统,分布式缓存,分布式数据库,分布式计算等,一些技术名词如Haddoop,Zookeeper,MQ等都跟分布式有关。从概念上讲,分布式有两种实现形式:
水平扩展:当一台机器扛不住流量时,就通过添加机器的方式,将流量平分到多台服务器上,所有机器都可以提供相应的服务。
垂直拆分:前端有多种查询需求时,一台机器扛不住时,可以将不同的需求分发到不同的机器上,比如A机器处理余票查询请求,B机器处理支付请求。
什么是高并发?
相对于分布式来讲,高并发在解决问题上会集中一些,其反应的是同一时间有多少的量。
高并发可以通过分布式技术去解决,将并发流量分到不同的物理服务器上。除此之外,还有很多其他的优化方法:比如说使用缓存系统,将所有的静态内容放到CDN等,还可以使用多线程技术将一台服务器的服务能力最大化。
什么是多线程?
多线程是指从软件或者硬件上实现多个线程并发的技术,更多的是解决CPU调度多个进程的问题,让这些进程看起来是同时进行(实际上是交替运行)。
分布式是从物理资源角度将不同的机器组成一个整体对外服务,技术范围非常广且难度非常大,有了这个基础,高并发,高吞吐量的系统很容易构建。
高并发是从业务角度去描述系统的能力,实现高并发的手段可以采用分布式,也可以采用缓存,CDN等,也包括多线程。
多线程则聚焦于如何使用编程语言将CPU调度能力最大化。
网友评论