摘要: 日常需求开发过程中,不免会遇到需要通过代码进行异步处理的情况,比如批量发送邮件,批量发送短信,数据导入,为了减少用户的等待,不希望一直菊花转啊转,因此需要进行异步处理,做法就是讲要处理的数据添加到队列当中,然后按照排队的先后顺序进行异步处理。 这个队列,可以是专业的消息队列,如 RocketMQ/R 阅读全文
posted @ 2020-08-15 16:38 WeJan1 阅读(6756) 评论(2) 推荐(1) 编辑
摘要: 项目在多环境迭代开发过程中,数据库的表结构不断变更,在部署时,往往会出现数据库表结构未及时变更导致出现问题,耗费在表结构上的时间相当多,上线过程持续痛苦,代码有 GIT/SVN 来控制,数据库中的表版本也可以做到版本控制,本文讲解通过 flyway 的方式来管理数据库版本变动。 本文首发个人技术博客 阅读全文
posted @ 2020-06-26 14:42 WeJan1 阅读(2701) 评论(1) 推荐(1) 编辑
摘要: 工作当中不免要与其他的公司进行打交道,比如调用对方的接口完成某项操作,或者提供接口给对方调用,这些接口可能使用者有很多公司,为了保证接口的安全性,需要设计一些方式来对接口进行保护,常见的保护措施有 IP 白名单与接口签名。 IP 白名单这种方式就不多说很简单,判断接口调用者 IP 是否在设定的白名单 阅读全文
posted @ 2020-06-06 17:11 WeJan1 阅读(1117) 评论(0) 推荐(0) 编辑
摘要: 今天以实用角度切入,来示范自定义 springboot starter 在项目开发过程中的实际应用。 SpringBoot 相对于 Spring 最大的优点就是提供了相当数量的 starter,只需引入 starter 进行极少量的配置就可使用相应的功能,有效减少 Spring 冗余复杂的配置文件。 阅读全文
posted @ 2020-05-16 19:52 WeJan1 阅读(470) 评论(0) 推荐(0) 编辑
摘要: 在项目开发过程中,有这样的一种常见的场景,比如根据环境的不同,发短信的服务也是不同的,但是依赖短信服务的系统调用的都是相同的接口,这样就需要针对环境来做区分,调用不同的短信通道接口。举例的这种情况,你可能会想到使用策略模式的方式来实现,当然这也是可以的。 但是只有两种策略而且在一个环境当中, 只会有 阅读全文
posted @ 2020-05-01 11:48 WeJan1 阅读(1031) 评论(0) 推荐(0) 编辑