public UpLoadState() { MessageState.TimeToBeReceived = new TimeSpan(0, 0, 10);//接受目标消息队列所需的最长时间10秒 MessageState.TimeToReachQueue = new TimeSpan(0, 0, 10);//消息到达队列所需的最长时间10秒 MessageState.Formatter = new System.Messaging.BinaryMessageFormatter();//消息队列格式:二进制 mcoper = new MqClientOperation(); //初始化消息队列 mcoper.InitServerQueue(InitConfig.RealStateServerIP, InitConfig.RealStateQueueName, false); dataAcc = new DataAcc(); dataAcc.ConnectionString = InitConfig.AnsyDbConnectionString; }
/// <summary> /// 初始化发送MQ /// </summary> /// <param name="MqClientList">发送数据队列数组</param> /// <param name="MqState">状态探测队列</param> public void InitSendConfig(ref MqClientOperation[] MqClientList,ref MqClientOperation MqState) { if(IsDebug) Log.Write("初始化发送配置信息:InitSendConfig"); XmlDocument xmlDoc = GetXmlDocument(sendConfigPath); if (xmlDoc != null) { CoalName = xmlDoc.SelectSingleNode(@"SendConig/CoalName").InnerText; ClientQueueName = xmlDoc.SelectSingleNode(@"SendConig/ClietQueueName").InnerText; IsDebug = bool.Parse(xmlDoc.SelectSingleNode(@"SendConig/Debug").InnerText); LocalIP = xmlDoc.SelectSingleNode(@"SendConig/ClientIP").InnerText; XmlNode xmlServerNode = xmlDoc.SelectSingleNode(@"SendConig/Servers"); XmlNodeList xmlServerNodeList = xmlServerNode.ChildNodes; int ServerCount = xmlServerNodeList.Count; int index = 0; MqClientList = new MqClientOperation[ServerCount]; MqState = new MqClientOperation(); foreach (XmlNode xn in xmlServerNodeList) { MqClientList[index] = new MqClientOperation(); MqClientList[index].Mark = xn.Attributes["IsRtm"].Value; if (xn.Attributes["IsRtm"].Value == "true") RealIP = xn.Attributes["IP"].Value; else { AllIP = xn.Attributes["IP"].Value; MqState.InitClientQueue("Client", xn.Attributes["IP"].Value, xn.Attributes["StateQueueName"].Value, true);//kjupload发送给服务器的网络状态消息队列 } MqClientList[index].InitClientQueue("Client", xn.Attributes["IP"].Value, xn.Attributes["QueueName"].Value, true);//实时数据:kjrtm发给web服务的消息队列;//kjall发给服务器的消息队列 index++; } } }