分布式精华问答 | 如何实现分布式系统的高可用性?

640?wx_fmt=png

布式的处理方式越来越受到业界的青睐——计算机系统正在经历一场前所未有的从集中式向分布式架构的变革。今天,我们就来看看关于分布式的精华问答吧!


640?wx_fmt=gif1

Q:什么是分布式缓存?


A:为了提高性能和响应时间,在应用程序(通常是Web应用程序)中“部署”并确保数据从内存加载而不是从磁盘加载(速度更慢)的解决方案。

如果要在单台机器上使用高速缓存,那么看起来很简单 - 只需从内存中的数据库中加载最活跃的数据(例如Guava Cache实例),然后从中提供。当必须在集群中工作时,它变得有点复杂 - 例如5个应用节点以循环方式向用户提供请求。


640?wx_fmt=gif2

Q:如何实现分布式系统的高可用性?


A:高可用性的前提是:保证服务系统能够持续工作,实现高可用性一般有两种手段: 一种是通过第三方软件/组件保证系统的可用性;另一种是软件/组件自身己具备高可用的技术实现。


640?wx_fmt=gif3

Q:分布式系统利弊


A:在分布式系统中:


1、应用可以按业务类型拆分成多个应用,再按结构分成接口层、服务层;我们也可以按访问入口分,如移动端、PC端等定义不同的接口应用;


2、数据库可以按业务类型拆分成多个实例,还可以对单表进行分库分表;


3、增加分布式缓存、搜索、文件、消息队列、非关系型数据库等中间件;


很明显,分布式系统可以解决集中式不便扩展的弊端,我们可以很方便的在任何一个环节扩展应用,就算一个应用出现问题也不会影响到别的应用。


随着微服务Spring Cloud & Docker的大热,及国内开源分布式Dubbo框架的重生,分布式技术发展非常迅速。


分布式系统虽好,也带来了系统的复杂性,如分布式事务、分布式锁、分布式session、数据一致性等都是现在分布式系统中需要解决的难题,虽然已经有很多成熟的方案,但都不完美。分布式系统也增加了开发测试运维成本,工作量增加,分布式系统管理不好反而会变成一种负担。


640?wx_fmt=gif4

Q:分布式系依赖关系如何理解?


A:整个顶层设计下的若干个子系统肯定存在依赖关系,但是依赖关系是否科学、是否可以持久维护是需要考虑的一个非常关键的要点 。 客户方不懂技术,是我们在需求调研阶段遇到的算一个问题的问题,但关键看需求人员从哪个方面着手向用户解释,引导用户对需求逻辑进行分析 。 比起前两个代码级别的循环依赖和业务级别的循环依赖,整个顶层设计下的若干子系统的循环依赖问题才是架构师最头疼的问题。


640?wx_fmt=gif5

Q:分布式与集群的区别是什么?


A:分布式:一个任务分给多台机器去做,减少单个任务的执行时间。


集群:提高单位时间内执行任务数。


例如:一个任务由10个子任务组成,每个子任务单独执行需要1个小时,则在一台服务器上执行该任务需要10个小时。


分布式方案:提供10台服务器,每台服务器只处理一个子任务,不考虑任务间的依赖关系,执行完这个任务只需要一个小时。


集群方案:同样提供10台服务器,每台服务器都能独立处理这个任务。假设有10个任务同时到达,10个服务器将同时工作,10小时后,10个任务同时完成,同样是一个小时完成一个任务。


640?wx_fmt=png

小伙伴们冲鸭,后台留言区等着你!

关于分布式,今天你学到了什么?还有哪些不懂的?除此还对哪些话题感兴趣?快来留言区打卡啦!留言方式:打开第XX天,答:……

同时欢迎大家搜集更多问题,投稿给我们!风里雨里留言区里等你~


福利

1、扫描添加小编微信,备注“姓名+公司职位”,加入【云计算学习交流群】,和志同道合的朋友们共同打卡学习!


640?wx_fmt=jpeg

2、公众号后台回复:白皮书,获取IDC最新数据白皮书整理资料!


推荐阅读:

  • Elastic Jeff Yoshimura:开源正在开启新一轮的创新 | 人物志

  • 深入浅出Docker 镜像 | 技术头条

  • 19岁当老板, 20岁ICO失败, 21岁将项目挂到了eBay, 为何初创公司如此艰难?

  • 码二代的出路是什么?

  • 机器学习萌新必备的三种优化算法 | 选型指南

  • 小程序的侵权“生死局”

  • @996 程序员,ICU 你真的去不起!


640?wx_fmt=png真香,朕在看了!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/523951.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

qt将生成的程序打包在他人电脑上可用

引言 生成的可执行文件exe后,想在没有安装qtCreate编译器的电脑上用,这里可以使用qt自带的打包工具来添加所需的库到运行程序所在的目录。 步骤 将生成的exe文件拷贝到一个空文件夹下,若程序使用过程中用到其他项目成员的库文件&#xff0…

Guns 下载、导入、运行_入门试炼01

一、在码云搜索Guns下载项目解压: 码云Guns:https://gitee.com/stylefeng/guns 二、打开idea点击open选择guns文件夹,等一会,会出现: 三、配置Guns项目的数据库 在导入成功的“guns-admin”项目中,我们…

Docker 官方公共仓库 Docker Hub 遭攻击,恐19 万用户信息泄露;Intel 10核心新品要现身了?...

关注并标星星CSDN云计算极客头条:速递、最新、绝对有料。这里有企业新动、这里有业界要闻,打起十二分精神,紧跟fashion你可以的!每周三次,打卡即read更快、更全了解泛云圈精彩newsgo go go 新上的努比亚红魔3&#xff…

Guns 代码生成演示_入门试炼02

一、运行Guns idea运行springboot开源项目Guns: https://blog.csdn.net/qq_37164847/article/details/81701583 二、设计表结构 表结构: CREATE TABLE sys_house (id int(11) NOT NULL AUTO_INCREMENT COMMENT 房屋编号,house_user varchar(50) NOT…

qt点击按钮本身,来删除自身

引言 实现下面这样一个功能,点击界面的添加按钮,增加一行班级和学生的信息,刚才被点击行的按钮上的文字由添加变为删除,按钮文字为删除,点击的时候可以删除被点击行的所有控件,选中那个班级后会自动更新对…

强推!盘点阿里巴巴 15 款开发者工具 | 程序员硬核评测

戳蓝字“CSDN云计算”关注我们哦!程序员硬核评测:客观、高效、不说软话。无论是技术质量、性能水平,还是工具筛选,一测便知!从人工到自动化,从重复到创新,技术演进的历程中,伴随着开…

Guns 查询列表_入门试炼03

一、插入数据进行测试: INSERT INTO guns.sys_house (id, house_user, house_address, house_date, house_desc) VALUES (1949033474, 雨昕, 北京大兴区, 2019-05-30 17:20:25, 北京次渠南); INSERT INTO guns.sys_house (id, house_user, house_address, house_da…

Guns根据条件查询数据_入门试炼04

一、找到Controler,对方法进行修改即可实现 二、修改list方法 修改钱的方法: /*** 获取房屋管理列表**wrapper 条件*/RequestMapping(value "/list")ResponseBodypublic Object list(String condition) {return houseService.selectList(nul…

Storm精华问答 | 最火的流式处理框架——Storm

戳蓝字“CSDN云计算”关注我们哦!Storm是Twitter开源的分布式实时大数据处理框架,被业界称为实时版Hadoop。 今天就为大家带来Storm诞生到发展再到实践,赶快学习起来吧!1Q:Storm的诞生。A:在2011年Storm开…

Guns 添加功能实现_入门试炼05

找到添加页面,进行修改 源代码: 默认这些表平淡中的字段都需要,手写,不需要手写的可以删除,用别的策略代替即可 第一处: id 数据库设置的是自增的因此不需要,删除 第二处:房屋交付…

浪潮云ERP到底属于什么水平?

戳蓝字“CSDN云计算”关注我们哦!极客头条:速递、最新、绝对有料。这里有企业新动、这里有业界要闻,打起十二分精神,紧跟fashion你可以的!常常听到企业应用市场三巨头,用友、金蝶、浪潮,但如果问…

Guns 编辑功能实现_入门试炼06

一、编辑功能默认实现 未修改前的样图: 案例演示: 将刘英3 、北京大兴区2、次渠2,更新为刘英5 、北京大兴区5、次渠5 选中需要修改的那条数据,点击修改按钮。 未提交表单前: 更新完成后: 想学习更多…

小米回应有品特殊激励需放弃年终奖……外媒说,荷兰运营商KPN允许华为有限参与5G网络建设;传苹果挖角英特尔5G工程师...

关注并标星星CSDN云计算极客头条:速递、最新、绝对有料。这里有企业新动、这里有业界要闻,打起十二分精神,紧跟fashion你可以的!每周三次,打卡即read更快、更全了解泛云圈精彩newsgo go go AT&T实现2Gbps的…

Guns 删除功能_入门试炼07

一、删除功能默认实现 选中需要删除的数据执行删除操作即可 删除前截图: 删除后截图: 从截图中可以看出,删除的那条数据已经不在了。 想学习更多微服务、分布式、中间件、数据库、项目快速构建等系列技术 请跳转Gblfy个人专栏: www.gblf…

第一次更名为OpenInfra的“她”,给我们带来了哪些惊喜?| 技术头条

戳蓝字“CSDN云计算”关注我们哦!技术头条:干货、简洁、多维全面。更多云计算精华知识尽在眼前,get要点、solve难题,统统不在话下!在美国丹佛阴冷的天气中,开源业界最顶级的技术峰会,前身为Open…

稳居亚太第一,阿里云进军全球;李彦宏候选工程院院士;苹果巨大损失:工业设计核心元老纷纷离职……...

关注并标星星CSDN云计算极客头条:速递、最新、绝对有料。这里有企业新动、这里有业界要闻,打起十二分精神,紧跟fashion你可以的!每周三次,打卡即read更快、更全了解泛云圈精彩newsgo go go 【5月1日 星期三】云の声音不…

Guns 切换Oracle分支

远程拉取Guns代码 git clone gitgitee.com:gb_90/guns.git进入本地拉取Guns代码的目录下面 cd guns/切换到oracle分支 git checkout oracle切换到未删除Oracle配置的历史版本 提交id号是 :24466d6 git reset --hard 24466d6查看; dir导入idea开发工具效果…

ZStack张鑫:面对混合云浪潮 我们主动出击

戳蓝字“CSDN云计算”关注我们哦!极客头条:速递、最新、绝对有料。这里有企业新动、这里有业界要闻,打起十二分精神,紧跟fashion你可以的!人类首次捕获黑洞照片,让我们看到了原本幽暗的宇宙,也有…

MyBatis-Plus_简介

第 1 章 简介 MyBatisPlus 介绍 MyBatis-Plus(简称 MP)是一个 MyBatis 的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。 代码及文档发布地址 官方地址: http://mp.baomidou.com 代码发布地址: G…

解决ORA-00257: 归档程序错误。在释放之前仅限于内部连接

文章目录一、预先准备1. 现象2. 异常信息3. 分析二、解决方案2.1. 登录oracle2.2. 查看ARCHIVED LOG空间占用率2.3. 查看元空间大小2.4. 整空间上限2.5. 结果验证一、预先准备 1. 现象 场景1: 昨天尝试通过plsqldev尝试连接oracle数据库,报错&#xff…