spring集成netty实现rabbitmq的rpc通信
2016-08-20 14:13
417 查看
使用rabbitmq更多的是为了解耦,而有时候为了确保消息的落地我们需要在接收方处理完消息后,发送ack给发送方,以下使用spring-boot集成rabbitmq,netty来做这一点
如果你使用这种方式发送到接收方
在接收方使用
jacksonMapper.writeValueAsString(results) 以json字符串来传递对象,同样在发送端有相应的来解析json串封装成类,(保证两端的类是相同的)
如果你使用这种方式发送到接收方
//超时时间 rabbitTemplate.setReplyTimeout(20000); final String resultMessages = (String) rabbitTemplate.convertSendAndReceive(mqexchange, mqroutekey, msg4send); RPCFleetResult rpcFleetResult = jacksonMapper.readValue(resultMessages, RPCFleetResult.class);
在接收方使用
@Component public class GPSDataListener extends MessageListenerAdapter { @Override public void onMessage(Message message, Channel channel) { super.handleResult(jacksonMapper.writeValueAsString(results),message,channel); } }
jacksonMapper.writeValueAsString(results) 以json字符串来传递对象,同样在发送端有相应的来解析json串封装成类,(保证两端的类是相同的)
相关文章推荐
- 第5篇 RabbitMQ集成SpringBoot实现Direct模式
- Spring集成RabbitMQ并实现延迟队列
- SpringBoot 集成 rabbitmq 简单实现通过队列进行,订单系统与库存系统,物流系统之间的信息交互
- spring和CXF集成来实现webservices
- CXF 与 spring 集成 自己做例子 实现
- Spring与MX4J集成实现JMX管理
- jquery + json + springMVC集成在controller中实现Ajax功能
- 传智播客-- 教育办公系统集成 spring-security 框架实现权限模块
- 简单的spring-data集成mongoDB项目,实现crud的功能
- spring集成blazeds,使用@RemoteDestination实现远程服务
- Mongodb与spring集成(3)------MongoRepository实现增删改查和复杂查询
- spring集成jotm实现JTA分布式事务管理
- 在SPRING中集成DWR实现二级菜单的级联响应
- 集成Spring后HibernateTemplate实现分页
- java开发之netty里集成spring注入mysq连接池(一)
- spring 集成hibernate事务管理(aop实现)
- 使用BlazeDS实现Java和Flex通信(2)---BlazeDS 与Spring集成指南
- spring-jpa (hibernate实现) 集成心得
- netty里集成spring注入mysq连接池(二)
- shiro 权限认证框集成到spring中,实现登陆与权限拦截