private void ProcessEvent(BasicDeliverEventArgs ea) { _qps.Add("r"); var header = new HeadersAnalysis(ea.Body); var clienttime = header.ClientDate; var span = Math.Abs((DateTime.Now - clienttime).TotalMilliseconds); if (Configs.Delay != 0 && span > Configs.Delay * 1000) { ReplayTo(header.Url, DateTime.Now, ea, 402, $"请求已超时 请求 {ea.RoutingKey} 耗时 {span.ToString()}ms", ContentType.Text); return; } var action = _routing.Route(header.Url.AbsolutePath); if (action == null) { ReplayTo(header.Url, DateTime.Now, ea, 401, "未找到匹配请求的控制器或方法", ContentType.Text); return; } var reques = new Request() { Headers = header.Headers, Action = action, Url = header.Url, Seralize = RPCWrite.CreateSeralize(header.ContentType, header.Encode), ContentLength = header.ContentLength, Body = header.GetBodys() }; Excute(reques, ea); }