gydtep 发表于 2022-9-15 08:32:02
终端设备通过 ACK 来反馈消息是否成功收到或处理,服务端需要根据终端是否返回 ACK 来决定是否重投。Pull,即终端设备主动来服务端获取其所有消息gydtep 发表于 2022-9-15 12:48:54
可以看到读放大场景下消息只写一份,写到 Topic 维度的队列,但接受者读取时需要按照订阅的 Topic 列表多次读取,而写放大场景下消息要写多份,gydtep 发表于 2022-9-16 13:35:50
但是终端消息必须明确可靠推送给具体客户端。客户端维度的队列意味着数量级上比传统的 RocketMQ 服务端 Topic 队列要大得多。gydtep 发表于 2022-9-17 09:40:17
我认为任何一个系统都会属于某个特定的领域,比如论坛是一个领域,只要你想做一个论坛,那这个论坛的核心业务是确定的,比如都有用户发帖、回帖等核心基本功能。gydtep 发表于 2022-9-18 09:43:50
因为DDD是一种基于模型驱动开发的软件开发思想,强调领域模型是整个系统的核心,领域模型也是整个系统的核心价值所在。每一个领域,都有一个对应的领域模型,领域模型能够很好的帮我们解决复杂的业务问题。gydtep 发表于 2022-9-19 10:06:11
而那时如果你再想重构模型,那要付出的代价会比一开始重新开发还要大,因为你还要考虑兼容历史的数据,数据迁移,如何平滑发布等各种头疼的问题。所以,就导致我们最后天天加班。gydtep 发表于 2022-9-19 13:51:06
上面我们通过第一步,虽然我们明确了要做一个什么样的系统,该系统主要解决什么问题,但是就这样我们还无法开始进行实际的需求分析和模型设计,我们还必须将我们的问题进行拆分,需求进行细化。gydtep 发表于 2022-9-19 19:25:09
交互流程太多,导致我们没办法直接针对这个大的领域进行领域建模。所以,我们需要将领域进行拆分,本质上就是把大问题拆分为小问题,然后各个击破的思路。gydtep 发表于 2022-9-20 08:16:20
上面这些中心看起来很自然,因为大家对电子商务的这个领域都已经非常熟悉了,所以都没什么疑问,好像很自然的样子。所以,领域划分是不是就是没什么挑战了呢?显然不是。gydtep 发表于 2022-9-20 15:27:28
我们一方面会主观的定义我们想要什么;另一方面,我们还会思考我们要的东西的合理性。我认为这个就是产品经理的工作,产品经理必须要负起职