标签:nts bit new eve amp ESS ble ace oca
项目使用的 rabbit RabbitMQ.Client, Version=5.0.0.0
最近项目用户量上来后,偶现 None of the specified endpoints were reachable 异常
解决方案:修改MQ请求的超时时间(参数TimeoutMilliseconds 由之前的30秒改成默认10秒,个别调用时间5秒) 发布后系统稳定
/// <summary> /// /// </summary> /// <param name="jsonStr"></param> /// <param name="className"></param> /// <param name="actionName"></param> /// <param name="authCode"></param> /// <returns></returns> public static string SendMessage(string jsonStr, string className, string actionName, string authCode, int timeout = 10000) { if (cf.HostName == null || string.IsNullOrWhiteSpace(cf.HostName) || cf.HostName == "localhost") { cf.HostName = hostName; cf.VirtualHost = virtualHost; cf.UserName = userName; cf.Password = password; } using (IConnection conn = cf.CreateConnection()) { using (IModel ch = conn.CreateModel()) { var requst = new RMQRequest { ClassName = className, ActionName = actionName, JStr = jsonStr, Timestamp = DateTime.Now }; object[] reqobj = new object[1]; reqobj[0] = JsonConvert.SerializeObject(requst); SimpleRpcClient client = new SimpleRpcClient(ch, authCode); client.TimeoutMilliseconds = timeout; client.TimedOut += new EventHandler(TimedOutHandler); client.Disconnected += new EventHandler(DisconnectedHandler); var reply = client.Call(reqobj); if (reply == null) { return null; } else { return reply[0].ToString(); } } } }
rabbit 在.net 环境下偶现(大概率):None of the specified endpoints were reachable 异常
标签:nts bit new eve amp ESS ble ace oca
原文地址:https://www.cnblogs.com/WQ1992/p/12100854.html