Kafka 并没有提供延时队列,可以用 Redis 的 ZSet 来实现。 ZSet 是按 score 排序的,可以用消息实际消费的时间作为 score,然后取 [0, 当前时间] 区间内的消息即可实现延时队列。 基本接口 首先定义一个基本…
在微服务架构中,如果把鉴权放在各服务中将会导致代码冗余且增加工作量。 如果在网关鉴权,不仅能保证所有接口有统一的鉴权标准,也能避免各服务鉴权不一致导致的漏洞。 下面记录一下用 Spring Security Oauth2 + Spring …
在需要重复使用大量相同数据的场景下(如展示用户信息、商品信息、购物车列表等),重复调用 api 获取不仅会增加后端服务器的负担,也显得代码不太简洁。 现在写一个全局缓存,将获取数据的逻辑也写入其中,这样外部只需要调用 get() 方法而无需…
国内的地图 SDK 目前暂不支持 Compose,之前给高德地图封装过一次,可以达到想要的效果。 这次准备封装一个通用的地图组件,把不同地图 SDK 之间共同的组件以及功能抽象出来,开发者不再需要关心不同地图 SDK 对同一功能的不同实现,…