2019第3周日-回顾

ActiveMQ常用的三种持久化存储方案:KahaDB、LevelDB、关系型数据库。其中KahaDB和LevelDB的工作原理基本类似,都采用内存+磁盘介质的方案:内存用于存放信息的位置索引,磁盘介质上存放消息内容。而关系型数据库的方案,ActiveMQ将完全通过JDBC对数据库进行操作完成消息的存储和修改。某种存储方案的性能,除了这种存储方案的工作原理以外对其有直接影响外,还要考虑它的工作环境。只有根据软件团队预估的系统压力、综合建设方案、考虑后续扩容方式,来确定采用哪一种存储方案,才是科学的。

组播(multicast)基于UDP协议,它是指在一个可连通的网络中,某一个数据报发送源向一组数据报接收目标进行操作的过程。在这个过程中,数据报发送者只需要向这个组播地址(一个D类IP)发送一个数据报,那么加入这个组播地址的所有接收者都可以收到这个数据报。组播实现了网络中单点到多点的高效数据传送,能够节约大量网络带宽,降低网络负载。

ActiveMQ集群Master-Slave模式不支持负载均衡,但可以通过消息的实时备份或共享保证消息服务的可靠性,Broker Cluster模式支持负载均衡,可以提高消息的消费能力,但不能保证消息的可靠性。所以为了支持负载均衡,同时又保证消息的可靠性,我们可以采用Msater-Slave+Broker Cluster的模式。

类似于ActiveMQ、RabbitMQ这样的消息队列中间件,其目的并不是一味地追求单位时间内消息数据的吞吐量/并发量的处理能力。它们的功能中涵盖了诸多功能:事务机制、确认机制、重试机制、热备机制等等,都是为了一个更重要的功能目的:保证消息完整可达。所以您和您的团队一定要按照业务特性来确定是否适合使用这样的中间件服务,并且您需要在预算范围内为您的消息服务中间件配置多个服务节点、多个存储单元,以便保证消息队列中间件能够完成它的任务——消息完整可达。

调用与被调用的关系,是无法被MQ取代的。比如用户登录场景,登录页面调用passport服务,passport服务的执行结果直接影响登录结果,此处的“登录页面”与“passport服务”就必须使用调用关系,而不能使用MQ通信。

Apache Kafka最初由LinkedIn贡献,目前它是Apache下的一个顶级开源项目。Apache Kafka设计的首要目标是解决LinkedIn网站中海量的用户操作行为记录、页面浏览记录,后继的Apache Kafka版本也都是将“满足高数据吞吐量”作为版本优化的首要目标。为了达到这个目标,Apache Kafka甚至在其他功能方面上做了一定的牺牲,例如:消息的事务性。如果您的系统需要进行单位时间内大量的数据采集工作,那么可以考虑在您的系统设计方案中加入Apache Kafka。

原文地址:https://www.cnblogs.com/doit8791/p/10293959.html

时间: 2024-08-30 16:09:20

2019第3周日-回顾的相关文章

【转帖】2019年操作系统行业回顾与发展趋势:移动互联网时代[图]

2019年操作系统行业回顾与发展趋势:移动互联网时代[图] http://www.chyxx.com/industry/201910/796129.html 中国市场 macOSX的占有量 都有 7%了 经济发展 其实什么发展的都快. 2019年10月23日 13:58:43字号:T|T 操作系统(OperatingSystem,OS),是配置在计算机硬件上的第一层软件,是对硬件系统的第一次扩充,占据整个计算机系统核心地位.从1945年第一台计算机诞生至今,随着半导体技术的快速迭代,操作系统也经

2019第2周日-要点回顾

消息中间件的可靠性是指对消息不丢失的保障程度:而消息中间件的可用性是指无故障运行的时间百分比,通常用几个 9 来衡量.不存在绝对的可靠性只能尽量趋向完美.并且通常可靠性也意味着影响性能和付出更大的成本,因此实际应用时还要根据业务需求,对真正关键的信息来做可靠性保证,并要从生产者.消息队列.消费者三个维度来努力. 如果在发送消息时采用了事务机制或者publisher confirm机制的话,服务端的返回是在消息落盘之后执行的,这样可以进一步的提高了消息的可靠性.但是即便如此也无法避免单机故障且无法

2019第11周日

2019过去1/5了,你的目标实现进度达到1/5了吗? 时间不会因为你没准备好而停止,时间也不会因为你悔恨而倒退,时间总是以最简单规律不紧不慢的往前走,时间总是馈赠那些珍惜它用好它的朋友. Rod,Juergen 和 Yann 于 2003 年 2 月左右开始合作开发该项目 .Yann 为新框架创造了“Spring”的名字.Yann Caroff 在早期离开了团队,Rod Johnson 在 2012 年离开,Juergen Hoeller 仍然是 Spring 开发团队的积极成员. 自 200

2019第23周日

端午遇上高考,1031万考生奔赴考场,背后有上亿个关心加油的人.护航2019高考,6月7日至9日,全国举行2019年高考.高考首日,北京试卷从各区的教育招生和考试中心运送至考点,全程GPS跟踪和移动视频监控,确保试卷保密性. 高考能改变人的一生,但高考不能决定人的一生. 一个远程接口调用服务要保存服务地址信息,同时要处理地址的立即更新,这里会存在同步问题,根据同步代码执行时间要确定同步方法,是否用读写锁,是否用读写互斥的读写锁.Java中大部分锁.同步工具都是基于AQS实现的,它又是基于通过JN

2019第34周日

Zookeeper是一个分布式协调系统,为应用提供一致性服务,实现配置.域名维护.分布式服务等.它以Fast Paxos算法为基础实现了Zab协议,通过选举leader,只有leader才能提交议案,从而解决Paxos算法多个议员提交议案互相排斥而产生的活锁问题.通过Zab协议传递leader状态改变,保证leader和follow而的一致性.一般Zookeeper都是集群模式,不存在单点故障从而保证了可靠性. dubbo.kafka. hbase.solr等很多开源项目都用到了Zookeepe

2019第5周日

农历腊月二十九,假期第2天,法定假日前一天. 减少写作焦虑,更要减少应付,没啥好写的就推荐自己遇到最好的文章,并思考为啥自己觉得好.哪怕只是一个故事段子笑话让人一乐也行. 看到李想的创业经验,年轻人创业和发展七个要点: 方向.目标.意愿.方法.毅力.成果.自我观察. 方向.目标很多人表面都很重视,但如果真要他讲清楚自己的方向.目标是什么,为什么要这样,估计很少人能做到.为什么?没有足够的重视,没有强烈的意愿,自然也没有时刻把它们放在心上,在现代社会诱惑一多,很容易被琐事占据自己的时间精力.影响自

2019第6周日

2月10号,大年初六,春节假期最后一天. 这一周是春节休息的一周,走亲访友的同时看了李善友在混沌大学的大课,他讲的第二曲线.第一性原理让我对思维模型有新的认识. 随着科技发展越来越快,未来社会出现越来越多的非连续性,不光是企业,我们每个人都需要第二曲线,它可能是从第一曲线中某一个点放大形成的.我们以往学习多是通过归纳法总结经验的方式,但它有个前提要求是事物是连续的,但从第一曲线跳到第二曲线时往往是不连续的,而我们要跨域的方法就是运用第一性原理,找到第一曲线和第二曲线的底层的第一性原理(往往是相同

2019第7周日

春节后上班第1周,原以为请教的人比较多吃饭会比较空,结果大部分都按时上班回到公司吃饭反而更挤了.这也算是想象与真实差距很大的例子,其实还有很多想象很美好的人和事,当事实上根本不是那样,我们想要更好就必须拥有智慧看到事实的真相. 春节期间看了很多关于思维模型相关的视频和文章,也更意识到学习思维模型的重要性.它是人类文明进化过程中形成的金字塔顶端的蓝宝石,是重要学科的重要理论,是顶尖高手每天都在刻意练习和使用的思维工具. 模型思维:以结构思维为框架,碎片化知识填充,形成了稳固可视化模型,左右脑协同记

2019第8周日

在以前的Java版本中,日期和时间相关的类存在诸多问题: Java的日期/时间类的定义并不一致,在java.util和java.sql的包中都有日期类,此外用于格式化和解析的类在java.text包中定义. java.util.Date同时包含日期和时间,而java.sql.Date仅包含日期,将其纳入java.sql包并不合理.另外这两个类都有相同的名字,这本身就是一个非常糟糕的设计. 对于时间.时间戳.格式化以及解析,并没有一些明确定义的类.对于格式化和解析的需求,我们有java.text.