用JAVA设计分布式系统
2023-04-03 · 百度认证:重庆猪八戒网络有限公司官方账号
分布式是一种思想,范围很广,我得先知道它的诞生:
以前是一个数据库一个JSP就可以做一个应用了,后来随着业务复杂,我们开始分层,比如MVC之类的,再后来我们的数据越来越多了,比如有上亿的数据,这个时候我们一个数据库查询太慢了,就开始分库,这也算是分布式的一种。
还有比如我们的系统访问的人多了,比如双11,上千万人同时访问,我们的服务器(网站)支持不住了,这个时候就要部署到很多个服务器,每个服务器分摊请求,这也是分布式
当然随着业务扩大,我们得分业务了,比如注册登录的,物流的,卖东西的等等,不同的系统,但是各个系统之间进行协调,也算分布式一种
以上都算是分布式的来源,主要是解决压力过大,大家协同工作的,那么这就涉及到一些常用的东西,或者像你说的的技术
1.你用N个数据库才放数据,至少CRUD方面就麻烦些了,得用cobar,tddl,mysql-proxy等协调
2.服务器:你部署了很多服务器,肯定得用个东西来分发请求这些吧,nginx,apache等分发请求。
3.你公司有很多系统,想很好的联系在一起,光用接口不满足了,得用一些JMS,像activemq,ons之类的来协调吧
4.为了解决io问题,得加缓存吧,那么缓存对应上面的,也得分布式吧,就涉及memcache,redies等等
上面就简单的介绍了下分布式的东西,还有很多啦,这是常用的一些,希望你能慢慢来,不是一下子能理解得