- 浏览: 141604 次
- 来自: ...
最新评论
-
520920:
jibaros 写道你好,试了你在dubbo上发布的webse ...
阿里巴巴Dubbo实现的源码分析 -
horacemolin:
楼主厉害,正在研究这个~
activeMQ笑脸计划_message cursor -
DEMONU:
哎呦,终于找到了。
activeMQ笑脸计划_message cursor -
DEMONU:
...
activeMQ指南针_消息存储机制_Kaha存储机制原理分析 -
DEMONU:
hao
带持久化缓冲的ThreadPoolExecutor
文章列表
1.概述
Akka这样一个scala世界里的明星,给我们提供了各种各样吸引人的功能和特性,尤其在分布式、高并发领域。但就像任何其他优秀的框架,它的实现也必然会有其复杂性,在Roland Kuhn(Akka Tech Lead)的带领下,Akka的实现原理吸收了各个领域内成熟、领先的理论。尤其是Akka里cluster的实现,更是体现了非常多的优秀理论和实战经验。为了更方便大家在实际使用中碰到问题的时候,可以试着进行分析和解决。从今天开始,我将从以下几个方面试着说明cluster的实现(基于2.3.1版本):
#集群的启动
Akka这样一个scala世界里的明星,给我们提供了各种各样吸引人的功能和特性,尤其在分布式、高并发领域。但就像任何其他优秀的框架,它的实现也必然会有其复杂性,在Roland Kuhn(Akka Tech Lead)的带领下,Akka的实现原理吸 ...
由于项目中需要使用ArrayBlockingQueue方式的ThreadPoolExecutor,设置的有界队列上限为1000,由于java默认在线程数超过maximumPoolSize时会抛弃超过上限的请求,所以在某些压力较大情况下会出现丢弃较多请求的情况。所以如果能先把超过上限的请求序列化到某种存储介质上,然后按照先进先出一批批的提供给后面的工作线程,做一个类似“阀门”装置,那就比较好了。
目前这个组件已经开发完毕,目前开源地址是https://github.com/netcomm/sponge,它的基本介绍如下:
#使用方式跟普通的ThreadPoolExecutor没有 ...
由于温少开源的FastJSON非常优秀,但由于JSON本身协议是需要传输属性名等字符串的,这就使得它在java系统间作为通讯或磁盘存储的序列化方案,就显得不合适了。所以,结合FastJSON的设计 + protocol buffer做了个序列化小东西(glowworm)。
1.它的调用非常简单:
TP tmpTP = new TP();
… …
// 序列化
byte[] tmpBytes = PB.toPBBytes(tmpTP);
// 反序列化
TP tmpTP_2 = (TP)PB.parsePBBytes(tmpBytes, TP.class);
2. ...
在今天说到Thrift就不可避免的要谈到Avro。Avro出自Hadoop之父Doug
Cutting,其目标是要建立一个新的,标准性的云计算的数据交换和存储的Protocol。它偏向实用,主张建立一个统一的标准,并不介意采用特定的优化。Avro的创新之处在于融合了显式,declarative的Schema和高效二进制的数据表达,强调数据的自我描述,克服了以往单纯XML或二进制系统的缺陷。
Avro-generic方式支持Schema的动态加载,用通用的结构(map)代表数据对象,不需要编译加载直接就可以处理新的数据源,这是相对Thrift的一个非常重要的区别, ...
1.
Dubbo概述
Dubbo是阿里巴巴开源出来的一个分布式服务框架,致力于提供高性能和透明化的RPC远程服务调用方案,以及作为SOA服务治理的方案。它的核心功能包括:
#remoting: 远程通讯基础,提供对多种NIO框架抽象封装,包括“同步转异步”和“请求-响应”模式的信息交换方式。
#Cluster: 服务框架核心,提供基于接口方法的远程过程调用,包括多协议支持,并提供软负载均衡和容错机制的集群支持。
#registry: 服务注册中心,使服务消费方能动态的查找服务提供方,使地址透明,使服务提供方可以平滑增加或减少机器。
由于Dubbo团队的文档和代码都非常优秀, ...
很久没更新blog了,前几天看到淘宝开源了Meta,估计notify也要开源了。其实消息中间件的一个非常重要的核心部件就是持久化存储,可能Meta的功能定位使得它在这一块的实现相对notify和activemq就简单些。趁着有点时间,把activeMQ的 ...
我们在不断尝试、优化后,完成了处理大规模time-series类型数据如监控数据的NOSQL数据持久化组件,下面我们详细介绍一下这个组件:
开发语言: JAVA
适用的场景:
1、每秒能处理的数据项数量庞大,如2万个
...
这段时间终于把官方网站上线了,终于有了个较正式的地方可以推荐我们的产品,希望给需要运维监控软件的朋友一点帮助,官网地址:www.yunweitec.com
因群里的网友发现DurableTopicSubscription的NoLocal问题,具体问题描述请参考https://issues.apache.org/activemq/browse/AMQ-2561。基于我现在时间的原因,我把问题原因和解决方案做一简单方法,希望对碰到同样问题的朋友有所帮助。
...
因群里的“追风”问message cursor到底是有什么用,以及怎么用,我答应他出篇源码分析文档,现在有点时间,就把message cursor分析一下。
在分析的过程种发现,如果不从源码分析,只是从已有的用户使用文档中,确实没法用好message cursor。
activeMQ的message cursor分为3种
l Store-based
l VM
l
在越来越多的网友对activeMQ的存储机制发生了兴趣,为了更好的对activeMQ的存储机制从实现原理进行分析,以知道怎么可以更好的进行优化。我们觉得有必要把我们在分析源码时的一些心得,分享给大家,首先activeMQ的消息存储目录相对简单:
在*\data目录下包括3个目录:journal、kr-store、临时目录(机器名称为目录名)
Journal
存放的是原始的消息内容,这个相对简单。
kr-store
这个目录里面是整个activeMQ消息存储机制最复杂的部分,它又分为俩个目录,data和state
State目录里主要存放的是,一些全局状态、或包含多少queue ...
通过这么一段时间跟activeMQ正在、将要使用的朋友们的交流中,尤其是近期慢慢接到一些朋友需要提供actimveMQ的解决方案支持,还问价钱的事情。 为了更好的推广activeMQ,我们在此明确一下我们关于推广activeMQ的方式: 1.通过不定期的线下活动,培养、建立使用activeMQ的交流群。 2.提供activeMQ针对具体项目的解决方案。 3.因为英语沟通等其他原因,如果提交的bug或功能改进不能得到activeMQ官网的及时相应,我们可以先试着提供解决方案,然后我们会跟activeMQ官网交流,同步到activeMQ中。 我们的目的: 希望通过active ...
在接触activeMQ的这一段时间里,我们还是保持开始对它的态度,它是个优秀的开源消息中间件。消息中间件是个非常重要的搭建企业应用系统的重要组件,我们在不断深入分析activeMQ的过程中,发现直到5.1这个版本,都还是存在不 ...
修改日志
2009-08-04 (version 1.1)
1. 新增链路情况监控:
1.1 当新增、断开链路时,都会在监控列表中记录。
1.2 可对监控列表点击表头进行排序。
2. 当消息拓扑图较复杂时,调整消息拓扑图时需要方便的图形托拽操作。
2.1 可框选多个图形节点,同时托拽。
因附件上传慢,故只把spannermng.jar上传,对应的lib库,可继续使用上个版本。