准备使用jms+activemq做分布式项目,有几个问题求教

发布于 2021-11-25 03:04:32 字数 366 浏览 729 评论 8

准备使用jms+activemq做分布式项目,有几个问题求教

1、比如调用远程的接口作查询操作然后返回结果

    问:用jms实现,请求参数是发送到queue里的,查询结果要怎样返回?

2、项目根据功能模块分布成5台服务器,相互调用接口

    问:5台服务器一共大概100个接口,是不是每个接口有专用queue,要建立100个queue

3、有文件上传需求

    问:用jms实现文件上传合适吗



一共三个问题,求帮助阿

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(8

彼岸花ソ最美的依靠 2021-11-26 01:30:06

你好。我问下 点对点传输的话。怎么监听收取多队列信息

丢了幸福的猪 2021-11-26 01:27:22

回复
每个 listener 只监听一个队列,你多建几个就行

旧城烟雨 2021-11-26 01:25:51

回复
谢谢,我现在也是这么做的。网上类似资料比较少,还以为一个队列一个监听会不合理。消费队列信息能有哪些地方可以优化的。多队列的话还需要跟Spring整合么,感觉单独灵活多了,spring不知道怎么配置,怎么读取队列了

倾城泪 2021-11-26 01:21:45

回复
不一定要用Spring,看项目的其他需求。用 Spring 的话,把配置抽出来当作字段(例如MQ的地址和队列名字等),然后在 Spring 配置文件里面用 <property/> 注入就行了。

葬花如无物 2021-11-26 01:13:03

我已经基于 activemq 使用 camel 编写了一个小型 RPC 系统:三端(A, B, C),五个命令种类,40多个具体的命令。

1. 可以在调用的时候生成UUID,然后使用 callback 方法根据此 UUID 来进行处理。

2. 将接口方法归类细分,可以减少 queue 数量,便于调试维护。

3. 不合适。MQ本身就是为了传递大量小数据(<32K?)而设计的。

4. 同一队列是按顺序接收的,但是效率方面不用担心,比 webservice 快。

离不开的别离 2021-11-26 01:10:56

这种需求应该是wevservice的范畴。非异步,可以稳定发送大字节的序列化数据。建议了解下webservice是否能够替代jms。jms是消息服务,用来处理多个服务器直接的一些消息互通。并不适合做数据传输。

最偏执的依靠 2021-11-26 01:09:33

首先lz你要明确消息队列到底适用于哪些场景:我的理解是解耦一些非关键性的操作(或者说及时性要求相对不高的),首先回答第二个问题,上传图片不是不可能用队列来做,传进去的都是二进制的字节流嘛,当然也可以接收并写入到图片文件中来保存,但是这样一来,用户上传完图片很可能不能马上返回结果,所以说这不适用与图片上传。第二个问题:也可以不用100个queue,只要你在消息中加入可识别的标识就可以了,比如一个自定义消息类型,这样接收端就能分清楚到底接收的是什么类型的消息该如何处理。第一个问题:发送端源源不断的将要处理的任务调用发送接口传输到队列中,同样也需要有个接收任务的hanlder也是远远不到的在处理队列中的任务,lz要用mq就已经确定这是异步的操作,所以就不要在用同步的思想来思考问题了。

甜扑 2021-11-25 06:06:50

上传文件用这个咋整?

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文