作为目前互联网最流行的技术之一,分布式是当仁不让的,小伙伴们都了解什么是分布式架构吗?它的优缺点又有哪些呢?快听小编为你介绍介绍吧。

一、什么是分布式架构?

分布式概念

要想理解什么是分布式,我们一定要知道以下这些性质:

1)、首先,一个分布式系统它一定是由多个节点组成的系统。

2)、其次,一般它的节点都是指计算机服务器,并且这些节点通常不会孤立,它们是互通的。

3)、最后,它的连通的节点上都会部署我们的节点,且相互之间操作是协同的。

分布式特点:

1)、系统容量增加:随着互联网所需业务量越发庞大,如想应对越发庞大的业务量,只是一台机器的性能已经远远无法满足了,我们必须要使用多台服务器才能应对大规模的应用场景。因此,我们就需要垂直或是水平拆分整个业务系统,让其变成一个分布式的架构来应对各种庞大业务场景。

2)、增强系统可用性。

因为业务增大,导致我们出一个小错误就可能需要不知多少时间才能挽回,所以就需要提高整个系统架构的可用性,这就意味着架构中不能存在单点故障。这样,整个系统才不会因为一台机器出故障而导致整体不可用。分布式架构就能够冗余系统以消除单点故障,从而提高系统可用性。

3)、分布式系统是模块化的,因此,系统模块重用度会更高。

4)、分布式系统软件服务模块是被拆分的,所以它的开发和发布速度可以并行且变得更加快速。

5)、分布式系统扩展性更高

分布式系统类型:

1)、分布式处理,但只有一个总数据库,没有局部数据库。

2)、分层式处理,每一层都有自己的数据库。

3)、充分分散的分布式网络,没有中央控制部分,各节点之间的联系方式又可以有多种,如松散的联接,紧密的联接,动态的联接,广播通知式的联接等。

二、分布式架构的优缺点是什么?

优点:

1)、会把模块拆分,使用接口通信,从而降低模块之间的耦合度。

2)、会把项目拆分成若干个子项目,不同的团队负责不同的子项目。

3)、增加功能灵活,只需要增加一个子项目,调用其他系统的接口就可以。

4)、能够灵活的进行分布式部署.

5)、代码复用性提升极大。

缺点:

1)、系统之间交互需使用远程通信,使接口开发增大工作量。

注:拆分项目时一定要考虑好,做到独立的拆分。

2)、分功能进行拦截/order的请求,如果没登录就去单点登录系统进行登录处理,这样的好处就是拦截的更精确。

以上就是关于分布式架构的全部章节了,如果小伙伴们还需要了解更多分布式相关java架构师知识,就请一直关注我们的网站吧。

推荐阅读:

java分布式特点_java分布式架构是什么?分布式架构的优缺点有哪些?相关推荐

  1. java 唯一编号_Java秒杀系统实战系列~分布式唯一ID生成订单编号

    摘要: 本篇博文是"Java秒杀系统实战系列文章"的第七篇,在本博文中我们将重点介绍 "在高并发,如秒杀的业务场景下如何生成全局唯一.趋势递增的订单编号",我们 ...

  2. java 下单 锁_JAVA 高并发下单解决方案-分布式锁

    背景:高并发情况下,商品出现超卖的情况. 最终目标:保证数据的最终一致性. Contrrler 层框架 : Spring MVC 第一次尝试:最初的时候,发现Spring MVC是一个单例多线程的Co ...

  3. java io 结构_java 的IO类库的基本架构

    java IO 操作的类在java.io 包中,大概可以分为以下几组: 基于字节操作的接口:InputStream 和 OutputStream 基于字符操作的接口:Writer 和 Reader 基 ...

  4. java多线程爬虫_Java 多线程爬虫及分布式爬虫架构

    在这个时间就是金钱的年代,不可能给你时间去慢慢的采集,所以单线程爬虫程序是行不通的,我们需要将单线程改成多线程的模式,来提升采集效率和提高计算机利用率.维护待采集的 URL多线程爬虫程序就不能像单线程 ...

  5. 一文看懂Java微服务架构,WEB2.0,垂直架构,分布式架构,微服务架构

    Java微服务架构 目录: 了解开发环境&生成环境 WEB1.0 & WEB2.0 垂直架构 分布式架构 微服务架构 1.了解开发环境&生产环境 1.1 开发环境 平时在写代码 ...

  6. 2018最新Java面试78题:数据结构+网络+NoSQL+分布式架构

    算法和数据结构 数组.链表.二叉树.队列.栈的各种操作(性能,场景) 二分查找和各种变种的二分查找 各类排序算法以及复杂度分析(快排.归并.堆) 各类算法题(手写) 理解并可以分析时间和空间复杂度. ...

  7. 蚂蚁金服4轮面经(Java研发):G1收集器+连接池+分布式架构

    一面 线程池有哪些参数?分别有什么用?如果任务数超过的核心线程数,会发生什么?阻塞队列大小是多少? 数据库连接池介绍下,底层实现说下 hashset底层实现,hashmap的put操作过程 说说Has ...

  8. java kafka分布式_JavaWeb项目架构之Kafka分布式日志队列

    架构.分布式.日志队列,标题自己都看着唬人,其实就是一个日志收集的功能,只不过中间加了一个Kafka做消息队列罢了. kafka介绍 Kafka是由Apache软件基金会开发的一个开源流处理平台,由S ...

  9. Java面试——架构设计与分布式

    一.用 Java 自己实现一个 LRU LRU(Least Recently Used:最近最少使用):简单的说,就是保证基本的 Cache容量,如果超过容量则必须丢掉最不常用的缓存数据,再添加最新的 ...

  10. 新课重磅发布-Java开发微信朋友圈PC版系统(架构2.0+分布式中间件)

    继"Java开发微信朋友圈PC版系统-架构1.0" 课程之后,debug这段时间日撸夜撸,终于赶在春节放假前给诸位带来了这一系统的架构2.0版本,特此分享给诸位进行学习,以掌握.巩 ...

最新文章

  1. 最新安卓系统细节曝光:后盖手势控制、浮雕式UI、隐私保护.....本月更新!
  2. robot framework环境搭建
  3. 我的编码习惯 —— API 接口定义
  4. 洛谷 【P1252】马拉松接力赛
  5. Python手册 3.7
  6. 《游戏编程模式》一7.8 并发状态机
  7. php项目邮件连接无效,完美解决wordpress邮件链接无效的问题
  8. 计算机键盘指示灯不亮也不启动不了机,电脑开不开机,显示器无反应,键盘指示灯不亮,主...
  9. breadweb控制台下载_路由器刷breed web控制台助手通用版下载
  10. 【光学设计】- 第一节
  11. html怎么在手机打不开,手机的浏览器打不开网页怎么办
  12. CHD 常用web端口
  13. 用个人微信小号代替【Server酱】推送消息通知
  14. BDrate、BDBR、BDPSNR的计算原理和程序
  15. 联想y9000x做java_联想Y9000X装win7系统及BIOS设置教程(支持9代)
  16. 实用帖!22个无版权、免费、高清图片素材网站整理!(合集)
  17. R语言ggplot画世界地图并根据条件给国家上色
  18. 《红楼梦》的读后感范文2300字
  19. 基于多输出顺序回归的年龄识别
  20. 红队笔记之杀软原理介绍与免杀技术总结

热门文章

  1. 一套完整的综合布线系统方案
  2. 凤凰系统 android 分辨率,凤凰系统如何修改屏幕分辨率[多图]
  3. java读取mp3文件_java读取mp3文件 | 学步园
  4. Python 安装openGL教程
  5. Friendster,linkedin,orkut,liring对SNS的求索
  6. Android下实现Google街景
  7. McAfee:僵尸网新威胁远甚Conficker
  8. php网页怎么设置背景音乐,怎么给网页添加背景音乐
  9. 计算机学课毕业论文,计算机专业毕业论文(精选5篇)
  10. SIM868使用笔记