1
vczyh 2022-11-09 16:09:32 +08:00
kafka 或者 rpc 只是邮件服务向外暴露的不同方式而已。
至于引入 kafka 依赖,这不是很正常么?如果不想引入,那就使用 rpc 方式,rpc 也有可能增加依赖。 |
2
AerithLoveMe OP @vczyh 我目前用的是 rpc 调用 kafka 生产者发送消息到 kafka 实现异步,如果业务耦合 kafka 生产者,服务一多就需要进行很多的配置。我想问这两种方式哪种更普遍适用。
|
3
wangxin3 2022-11-09 16:41:03 +08:00
在生产者上套了一层 rpc ,流量高峰时期 rpc 是不是会可能导致 kafka 生产者不可用?
多一层传输,多一次丢失的风险。 |
4
haya 2022-11-09 16:53:00 +08:00
套一层 rpc 的话,会不会导致消息重发、漏发
|
5
ipwx 2022-11-09 17:10:52 +08:00
kafka 这种东西最重要的意义在于排队。
“用户注册发送邮件” 如果一下你司在 1s 内分布式向 163.com 发送大量邮件,它会不会加强你司的垃圾信息权重?有了 kafka 这种队列好歹能做流控。当然,你也可以选择用 redis 。 |
6
sadfQED2 2022-11-09 17:43:22 +08:00 via Android
何必要自己套一层呢,你引入自己的 rpc 不也是依赖么。
|
7
vczyh 2022-11-10 10:03:57 +08:00
@AerithLoveMe
我个人觉得没有必要: 1. 增加一次网络是否有必要。 2. rpc 服务提供者( kafka 生产者)是否有必要做成一个单独的服务,因为他功能太简单了。 3. 通过 rpc 发送消息,是否少了很多 kafka 机制,比如丢失消息、重试等。 |