摘要: # 1 文章概述 商品在电商领域中是一个非常重要的领域,交易行为前提是有商品信息存在。本文我们分析商品表基本设计,其它复杂场景可以在此基础上进行扩展。需要说明第一本文所用数据是**测试数据**,可能与真实数据有偏差,仅供演示。第二本文展示商品核心字段,一些通用字段不展示。 # 2 商品类目 ## 2 阅读全文
posted @ 2023-06-06 07:35 JAVA前线 阅读(955) 评论(1) 推荐(6) 编辑
摘要: # 0 文章概述 在RPC场景中因为重试或者没有实现幂等机制而导致的重复数据问题,必须引起大家重视,有可能会造成例如一次购买创建多笔订单,一条通知信息被发送多次等问题,这是技术人员必须面对和解决的问题。 有人可能会说:当调用失败时程序并没有显示重试,为什么还会产生重复数据问题呢?这是因为即使没有显示 阅读全文
posted @ 2023-05-26 08:28 JAVA前线 阅读(438) 评论(0) 推荐(2) 编辑
摘要: # 1 六大原则 在设计模式中有六大设计原则: > 单一职责原则:一个类只做一件事 > > 里式替换原则:子类可以扩展父类 > > 依赖倒置原则:面向接口编程 > > 接口隔离原则:高内聚低耦合 > > 迪米特法则:最少知道原则 > > 开闭原则:关闭修改,开放新增 我认为在这六个原则中开闭原则最为 阅读全文
posted @ 2023-05-21 15:51 JAVA前线 阅读(474) 评论(0) 推荐(2) 编辑
摘要: 1 理论知识 1.1 分库分表是否必要 分库分表确实可以解决单表数据量大这个问题,但是并非首选。因为分库分表至少引入了三个必须解决的突出问题。 第一是分库分表方案本身具有的复杂性。第二是本地事务失效问题,原本在同一个数据库中可以保证强一致性业务逻辑,分库之后事务失效。第三是难以聚合查询问题,因为分库 阅读全文
posted @ 2023-05-18 07:46 JAVA前线 阅读(1081) 评论(2) 推荐(10) 编辑
摘要: 0 文章概述 大家想一想工作中有没有遇到以下情况:一位同事用了很长时间罗列了很多事实和数据向你说明一件事情,但是你听完根本不知道他想要说什么。一位同事用了大量笔墨编写了技术方案,不仅有文字还有图表,但是你看完也不知道这个方案到底要解决什么问题以及如何落地。 上述情况的出现大概率是因为表述者没有使用结 阅读全文
posted @ 2023-05-14 09:46 JAVA前线 阅读(443) 评论(0) 推荐(0) 编辑
摘要: 1 六个问题 1.1 为什么使用DDD DDD方法论核心是将问题不断分解,把大问题分解为小问题,大业务分解小领域,简而言之就是分而治之,各个击破。 分而治之是指直接面对大业务我们无从下手,需要按照一定方法进行分解,分解为高内聚的小领域,使得业务有边界清晰,而这些小领域是我们有能力处理的,这就是领域驱 阅读全文
posted @ 2023-05-12 12:48 JAVA前线 阅读(2033) 评论(4) 推荐(11) 编辑