Gossiper channel的运用
来源:互联网 发布:世界老龄化数据 编辑:程序博客网 时间:2024/06/06 01:52
节点间的通知
注册
ch.ethz.systems.cloudy2.server.components.gossiper.cassandra.Gossiper.load()
{
...
CloudyFactory.getMessaging().registerVerbHandler(GOSSIP_DIGEST_SYN_VERB, new GossipDigestSynVerbHandler());
CloudyFactory.getMessaging().registerVerbHandler(GOSSIP_DIGEST_ACK_VERB, new GossipDigestAckVerbHandler());
CloudyFactory.getMessaging().registerVerbHandler(GOSSIP_DIGEST_ACK2_VERB, new GossipDigestAck2VerbHandler());
....
}
调用
public static void receive(Message message) {
if (CloudyFactory.getTestingComponent().isSleeping())
return;
Runnable runnable = new MessageDeliveryTask(message);
ExecutorService stage = StageManager.getStage(message.getStage());
if (stage == null)
{
if (logger_.isDebugEnabled())
logger_.debug("Running " + message.getStage() + " on default stage");
messageDeserializerExecutor_.execute(runnable);
}
else
{
stage.execute(runnable);
}
}
public class MessageDeliveryTask implements Runnable
{
private Message message_;
public MessageDeliveryTask(Message message)
{
message_ = message;
}
public void run()
{
String verb = message_.getVerb();
IVerbHandler verbHandler = MessagingService.getInstance().getVerbHandler(verb);
if (verbHandler == null) {
logger_.warn("Unknown verb " + verb + ". No processing occurs");
} else {
verbHandler.doVerb(message_);
}
// System.out.println("PUT 2"+Thread.currentThread().getName());
}
}
applicationState
- Gossiper channel的运用
- golang-goroutine与channel:高效的channel
- golang-goruntime与channel:高效的channel
- golang-goroutine与channel:高效的channel
- channel 标签的使用
- glib 的IO Channel
- 绝妙的 channel
- 绝妙的 channel
- golang 的channel
- golang的channel使用
- golang的channel剖析
- Java NIO的Channel
- golang的Channel
- golang的Channel
- golang的Channel
- Channel的基本使用
- golang channel 的使用
- Channel
- Apache+php+mysql在windows下的安装与配置图解(三)
- WP7必备同步工具Zune Software 4.8 官方简体中文版发布
- C#读取Excel
- 2010 ACM-ICPC Multi-University Training Contest(2)——Host by BUPT
- 打开Eclipse出现Failed to create the Java Virtual Machine 解决方法
- Gossiper channel的运用
- SurfaceView,SurfaceHolder
- ruby下简单的字符串赋值测试
- Java 学习最佳途径(一)---工具篇
- SQL Server死锁总结
- Java 最佳学习途径(二)----书籍篇
- Linux编程2: 进程
- 2012年一些计划
- U-Boot编译过程完全分析