我正在测试ZeroMQ作为中型系统的Pub-Sub(服务总线式).我们有大约50个节点,所有节点都应该是发布者和订阅者.网络是一种星形拓扑,但边缘相互"交谈".我们需要动态发现(不需要硬编码参与者的网络地址),也没有SPOF(单点故障).
我已经阅读了http://zeromq.org/whitepapers:0mq-3-0-pubsub,据我所知,动态发现的建议0MQ方式涉及转发订阅和发布的代理节点(XPUB/XSUB).我考虑在我们的系统中使用这样的代理作为中央调解器,但是,我对这种架构有以下关注:(A)代理节点是SPOF - 当它失败时整个系统不起作用(B)所有流量,包括数据,通过代理节点,这意味着延迟和性能问题.
假设我正确理解了pub-sub白皮书,是否有一种相对简单的方法可以在ZeroMQ中实现pub-sub + dynamic-discovery + no-SPOF?
补充一点:我已经排除了多播(PGM)解决方案,因为大多数消息都有一个/很少的相关方,我们不喜欢过度拥挤的网络.
当源不可用时,是否有可用于反编译类文件的Eclipse插件(从.class文件生成.java源代码),类似于Resharper在VS.NET中为C#做的事情?或者,是否有一个插件可以比默认的Eclipse视图更友好地查看类文件的API?
我正在寻找一个非常简单和轻量级的IoC容器,其C#源代码可以包含在我自己的项目中(因此不会进行外部引用).
这样做的原因是我正在编写基础结构,并希望提供单个.dll文件,而不需要任何其他依赖项.
我也不想用IoC组件ILMerge我的组件..
我想过MEF,其他一些建议?
在log4j 2中,当大小超过指定的阈值时,我想修剪写入控制台appender的消息的结尾.
我查看了http://logging.apache.org/log4j/2.0/manual/layouts.html#PatternLayout文档但看不到截断"msg"字段结尾的选项.
"%.1000msg"将仅留下消息的最后 1000个字符.
这对我不利,因为在Java中,堆栈跟踪中的大多数内部帧都打印在消息的开头.
任何的想法?
我安装了一个自托管的NuGet服务器作为描述在这里.我使用的是Windows 2008 R2,IIS 7.5和Nuget 1.7.
从VS中我能够在包管理器窗口中看到我自己托管的包,但是当我尝试安装它们中的任何一个时,我收到错误"远程服务器返回错误:(404)Not Found".
帮助任何人?
我有一个不同类的实例列表,我想将它们中的每一个绑定到它自己的类.我试过foreach循环binder.bind(obj.getClass()).toInstance(obj)
,但是当然这不能编译,因为编译器无法解析泛型T.如何才能实现这一点?