摘要:
一、heima-leadnews-schedule是一个通用的服务,单独创建模块来管理任何类型的延迟任务 二、在service下搭建heima-leadnes-schedule微服务模块,用以对其它服务提供延迟任务处理服务。 MySQL中,BLOB是一个二进制大型对象,是一个可以存储大量数据的容器; 阅读全文
摘要:
实现思路: 发布时间:立即发布、未来要发布 list存立即发布,redis中的list是双向链表,方便添加查找性能较高。 zset可以去重、排序,存储未来要发布的。 为什么要把任务存储到数据库中? 延迟任务是一个通用的服务,任何有延迟需求的任务都可以调用该服务,内存数据库的存储是有限的,需要考虑数据 阅读全文
摘要:
定时任务:有固定周期的,有明确的触发时间 延迟任务:没有固定的开始时间,它常常是由一个事件触发的,而在这个事件触发之后的一段时间内触发另一个事件,任务可以立即执行,也可以延迟 场景一:订单下单之后30分钟后,如果用户没有付钱,则系统自动取消订单;如果期间下单成功,任务取消 场景二:接口对接出现网络问 阅读全文
摘要:
文章发布——异步调用——>文章审核 问题: 不管文章的发布时间是什么时间段都会立马进行审核,然后生成app端相关的数据 此刻:立即发布文章 未来时间:按时发布文章 文章发布——》延迟任务服务《——文章审核 阅读全文
摘要:
一、自媒体微服务 —— 远程调用——> 文章微服务 倘若有一个微服务报错,另一个微服务不知道,无法保证事务的一致性。 作业:使用seata来解决审核过程中的分布式事务的问题 二、倘若文章发布是一个未来时间,该如何按照精确时间发布? 如1月1号提交,但是设定发布时间是1月5号。 阅读全文
摘要:
文章端创建app相关文章时,生成文章详情静态页上传到MinIO中 审核文章——feign远程——>修改或创建app相关数据——异步——>生成静态文件 文章微服务 自媒体用户发布文章后 审核成功后将 异步 feign 远程调用文章微服务,在文章微服务中有个方法将通过审核的文章保存或修改文章,以供移动端 阅读全文
摘要:
1、在heima-leadnews-common中创建工具类,封装一下tess4j package com.heima.common.tess4j; import net.sourceforge.tess4j.Tesseract; import net.sourceforge.tess4j.Tess 阅读全文