通過休息佇列控制使用者上線下線
建立交換機
@bean(name="oninechange")
public fanoutexchange onlineexchange() 建立成功】", fanout_exchange_name);
return new fanoutexchange(fanout_exchange_name);
}
2.建立佇列
@bean(name="onlinequeue")
public queue onlinequeue() 例項建立成功】", mysessionqueuename);
return new queue(mysessionqueuename, false);
}
3.繫結佇列到交換機
@bean(name="binginline")
public binding binglinequeue1toexchange() 到交換機{}成功】", mysessionqueuename, fanout_exchange_name);
return bindingbuilder.bind(onlinequeue()).to(onlineexchange());
}
4.新增訊息處理方式,監聽。
@bean(name="onlinemessagecontainer")
public ******messagelistenercontainer messagecontainer(sessionsynchronizereceiver sessionreceiver,
connectionfactory connectionfactory)
5.建立監聽,接受訊息佇列資訊
@component
public class sessionsynchronizereceiver implements channelawaremessagelistener ,channel :{}", message, channel);
try v :{}", sim.getentity1(), sim.getentity2());
if (stringutils.equals(mysessionqueuename, sim.getentity1()))
} return;
}"synchronize session {}", objs.tostring(sim.getentity2()));
} catch (exception e) finally
} }
6。建立傳送訊息到指定交換機(所屬佇列)
/** 上線 */
public boolean online(string access_token)
RabbitMQ 訊息廣播
rabbitmq訊息模型的核心理念是 發布者 producer 不會直接傳送任何訊息給佇列。事實上,發布者 producer 甚至不知道訊息是否已經被投遞到佇列。發布者 producer 只需要把訊息傳送給乙個交換機 exchange 交換機非常簡單,它一邊從發布者方接收訊息,一邊把訊息推送到佇列。...
RabbitMQ 廣播訊息
定義 廣播訊息是指生產者產生的訊息將分發給所有訂閱這個訊息的消費者,而普通的模式是 一批訊息可以被多個人共同消費,如consumer1可能消費1,3,5記錄,而consumer2可能消費的是2,4,6這種模組就是共同消費模組 而今天說的是廣播訊息,它是指一些訊息同時被推送到多個訂閱者,而這些訂閱者收...
RabbitMQ 廣播訊息
定義 廣播訊息是指生產者產生的訊息將分發給所有訂閱這個訊息的消費者,而普通的模式是 一批訊息可以被多個人共同消費,如consumer1可能消費1,3,5記錄,而consumer2可能消費的是2,4,6這種模組就是共同消費模組 而今天說的是廣播訊息,它是指一些訊息同時被推送到多個訂閱者,而這些訂閱者收...