public void RegisterMsg(string msgID, AsyncRequestMessageBase obj) { lock (msgIDObjectDicLock) { msgIDObjectDic.Add(msgID, obj); //Console.WriteLine("[RegisterMsg][" + msgIDObjectDic.GetHashCode() + "][REQ][" + obj.msgID + "] " + obj.GetJson().Substring(0, 100)); } }
public bool SendRequest(AsyncRequestMessageBase obj, bool verbose = false) { if (obj.msgID == null) return false; string message = obj.GetJson(); lock (senderLock) { var props = senderChannel.CreateBasicProperties(); props.CorrelationId = obj.msgID; receiver.RegisterMsg(obj.msgID, obj); var messageBytes = QuickLZ.compress(Encoding.UTF8.GetBytes(message), 1); //var messageBytes = Encoding.UTF8.GetBytes(message); if (verbose) Console.WriteLine(DateTime.Now.ToString("[HH:mm:ss.fff]") + "rpccall start : " + message); senderChannel.BasicPublish(exchange: "", routingKey: senderQueueName, basicProperties: props, body: messageBytes ); } return true; }