如何学习分布式

Posted xiaohaigegede

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何学习分布式相关的知识,希望对你有一定的参考价值。

https://www.cnblogs.com/xybaby/p/7787034.html

概念与实现:

负载均衡:

  nginx:高性能、高并发的web服务器;功能包括负载均衡、反向代理、静态内容缓存、访问控制;工作在应用层

  LVS: Linux virtual server,基于集群技术和Linux操作系统实现一个高性能、高可用的服务器;工作在网络层

webserver:

  Java:Tomcat,Apache,Jboss

  Python:gunicorn、uwsgi、twisted、webpy、tornado

service:  

  SOA、微服务、spring boot,django

容器:

  docker,kubernetes(k8s)

cache:

  memcache、redis等

协调中心:

  zookeeper、etcd等

  zookeeper使用了Paxos协议Paxos是强一致性,高可用的去中心化分布式。zookeeper的使用场景非常广泛,之后细讲。

rpc框架:

  grpc(google)、dubbo、brpc(百度)

  dubbo是阿里开源的Java语言开发的高性能RPC框架,在阿里系的诸多架构中,都使用了dubbo + spring boot

消息队列:

  kafka、rabbitMQ、rocketMQ、QSP

  消息队列的应用场景:异步处理、应用解耦、流量削锋和消息通讯

实时数据平台:

  storm、akka

离线数据平台:

  hadoop、spark

  PS: apark、akka、kafka都是scala语言写的,看到这个语言还是很牛逼的

dbproxy:

  cobar也是阿里开源的,在阿里系中使用也非常广泛,是关系型数据库的sharding + replica 代理

db:

  mysql、oracle、MongoDB、HBase

搜索:

  elasticsearch、solr

日志:

  rsyslog、elk、flume

以上是关于如何学习分布式的主要内容,如果未能解决你的问题,请参考以下文章

如何系统性地学习分布式系统?

人机共生时代,分布式机器学习是如何加速的?

如何学习分布式

大数据基础学习

什么是分布式系统,如何学习分布式系统

贵阳如何学习大数据?大数据学习路线安排