摘要: 基础概念 管道模式(Pipeline Pattern) 是责任链模式(Chain of Responsibility Pattern)的常用变体之一。在管道模式中,管道扮演着流水线的角色,将数据传递到一个加工处理序列中,数据在每个步骤中被加工处理后,传递到下一个步骤进行加工处理,直到全部步骤处理完毕 阅读全文
posted @ 2022-12-02 00:40 AaronTanooo 阅读(2786) 评论(0) 推荐(0)
摘要: [TOC] ##背景 由于业务发展,在Place Order时接入了Promotion模块,要进行核销Coupon的动作,由于动作在不同的服务上,同时也要保证事务一致性,@Transactional注解已经不能满足需求,所以考虑引入Seata ##基础概念 ### TC (Transaction C 阅读全文
posted @ 2022-11-16 17:01 AaronTanooo 阅读(1215) 评论(0) 推荐(0)
摘要: ##方案二 期望在同一时间段,不允许相同的库存被操作 通过Redisson以SKU Code为唯一标识+业务标识上锁 @Transactional(rollbackFor = Exception.class) @DistributedLock(prefix = LOCK_STOCK_SYNC_PRE 阅读全文
posted @ 2022-07-21 02:34 AaronTanooo 阅读(651) 评论(0) 推荐(1)
摘要: ##背景 假设同步库存的业务逻辑以SKU Code为唯一标识,存在两种情况 表中不存在,insert 表中存在,update 一开始没有仔细考虑有什么异常case,直接拿起来就写 @Transactional(rollbackFor = Exception.class) public void ex 阅读全文
posted @ 2022-07-20 17:11 AaronTanooo 阅读(2216) 评论(0) 推荐(0)
摘要: ##前言 为帮助懒狗实现不用背题,轻松通过线上考试的目标。 需要把目标网站上的题库以及对应的答案,全部爬取到本地。 ##技术选型 通过控制台发现点击下一题并不会产生新的资源链接。也就是说该页面是动态页面,那么像BeautifulSoup之类的库就没有用武之地了。 综上,所以考虑使用Selenium来 阅读全文
posted @ 2022-07-13 00:28 AaronTanooo 阅读(1357) 评论(0) 推荐(0)