【发布时间】:2018-03-23 08:37:23
【问题描述】:
UCITY.API 请求 UCITY.USER 的“ucity_us_mobilephonecomplete”队列并接收消息,但 Masstransit 自动将其移至跳过队列
但其他队列工作正常
轨道交通记录:
2018-03-23 15:59:22.5727|DEBUG|MassTransit.Messages|SEND rabbitmq://192.168.1.142/us/ucity_us_mobilephonecomplete 0b350000-dafb-1866-5b48-08d59093fd36 MQNamespace.USER.IMobilephoneCompleteRequest
2018-03-23 15:59:22.6077|DEBUG|MassTransit.Messages|SKIP rabbitmq://192.168.1.142/us/bus-WIN-VH8418VRIC5-UCITY.API-bc4oyyg49ccgcqg6bdk3br7trf?durable=false&autodelete=true N/A
消息详情
他的服务器报告剩余 1 条消息。
Exchange bus-WIN-VH8418VRIC5-UCITY.API-bc4oyyg49ccgcqg6bdk3br7trf_skipped
Routing Key
Redelivered ●
Properties
message_id: 0b350000-dafb-1866-d0af-08d59093bae2
delivery_mode: 2
headers:
Content-Type: application/vnd.masstransit+json
publishId: 1
MT-Reason: dead-letter
MT-Host-MachineName: WIN-VH8418VRIC5
MT-Host-ProcessName: UCITY.API
MT-Host-ProcessId: 14648
MT-Host-Assembly: UCITY.API
MT-Host-AssemblyVersion: 1.0.0.0
MT-Host-MassTransitVersion: 4.0.1.1390
MT-Host-FrameworkVersion: 4.0.30319.42000
MT-Host-OperatingSystemVersion: Microsoft Windows NT 6.2.9200.0
content_type: application/vnd.masstransit+json
Payload
1060 bytes
Encoding: string
{
"messageId": "0b350000-dafb-1866-d0af-08d59093bae2",
"requestId": "0b350000-dafb-1866-8267-08d59093bade",
"conversationId": "0b350000-dafb-1866-0ddf-08d59093bae2",
"sourceAddress": "rabbitmq://192.168.1.142/us/ucity_us_mobilephonecomplete",
"destinationAddress": "rabbitmq://192.168.1.142/us/bus-WIN-VH8418VRIC5-UCITY.API-bc4oyyg49ccgcqg6bdk3br7trf?durable=false&autodelete=true",
"messageType": [
"urn:message:MQNamespace:IBaseResponseModel"
],
"message": {
"code": 4212,
"correlationId": "73989f86-51fd-4ae1-a467-a556a165f125",
"message": "COMPLETEMOBILEPHONE FAILD!USERWECHAT MOBILEPHONE COMPLETED",
"timeStamp": "2018-03-23T15:57:31.3218406+08:00"
},
"headers": {},
"host": {
"machineName": "WIN-VH8418VRIC5",
"processName": "UCITY.USER",
"processId": 8952,
"assembly": "UCITY.USER",
"assemblyVersion": "1.0.0.0",
"frameworkVersion": "4.0.30319.42000",
"massTransitVersion": "4.0.1.1390",
"operatingSystemVersion": "Microsoft Windows NT 6.2.9200.0"
}
}
跳过的队列有什么作用 谢谢回答
【问题讨论】:
-
您是否有请求客户端等待服务的响应?如果没有代码,很难弄清楚为什么会跳过消息。
-
我已经上传了我的代码。我正在等待您的回复谢谢。
-
问题是响应是 baseResponseModel 消息类型,并且没有返回实际类型。摆脱临时变量,只发送正确的响应类型。
-
您不能使用
"urn:message:MQNamespace:IBaseResponseModel"作为唯一的消息类型,要么使用对象响应(因此它会发现所有类型),要么使用您的请求客户端期望的实际响应类型。 -
哦,我明白了。感谢您的帮助。
标签: rabbitmq masstransit