摘要:
前言 为什么要写这个文章呢, 因为最近开发了一个jdk时间相关的bug, 发现自己对java中的time模块了解很薄弱, 所以打算再深入学习一下这块内容 遇到的bug详情: LocalDate.ofEpochDay(days)踩坑记录 背景 在1.8以前, 我们通常使用 Date / Calenda 阅读全文
摘要:
最近在使用java.time.LocalDate时踩了坑, 归根到底是对jdk中的时间操作不够清晰 踩坑场景 以下这一段代码, 你认为能正常返回结果吗? 如果不能, 那么问题在哪里? /** * 基于当前时间, 进行一定的偏移, 返回偏移后的日期 * @param offsetMillis 便宜量 阅读全文
摘要:
适用场景 当我们的服务在集群模式部署的情况下, 假如需要定时执行一段逻辑, 并且不希望多个实例间重复执行, 那么就可以使用此组件 例: 每10秒执行一次, 将数据库中超时未支付的订单进行关闭处理 最终成果展示 有两种使用方式, 如下 package com.idanchuang.example.sp 阅读全文
摘要:
特性: 1.预申请资源, 减少对redis的请求次数, 提升性能 2.预判失败, 防止在限流资源不足时高频访问redis, 提升性能 3.限流的最小时间窗口为1s 基础依赖 <dependency> <groupId>org.springframework.boot</groupId> <artif 阅读全文
摘要:
基础依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> <version>2.x.x.RELEASE</version> 阅读全文
摘要:
前言 在生产环境中, 为了保障业务数据的安全, 我们往往会将业务服务部署在内网环境, 并通过一个网关服务将需要提供给外部调用的接口暴露出去, HTTP请求如此, Websocket亦是如此, 今天就来讲一下如何使用SpringCloud Gateway网关服务代理转发Websocket请求, 以及如 阅读全文
摘要:
从零实现一个注册中心 - 服务端 接上回, 咱们介绍了注册中心的概念, 以及如何实现注册中心的服务端, 那么, 一个完整的注册中心, 除了服务端以外, 客户端SDK也是不可或缺的 客户端SDK是什么? SDK是为了简化客户端应用与服务端的对接的逻辑, 将大部分复杂的交互代码封装起来, 并提供较为简单 阅读全文
摘要:
什么是注册中心? 注册中心, 也称命名服务(Naming servive), 它的核心功能与DNS服务类似, 无非就是通过一个特定的名字来查找相关的实例集合, 但是它们也有很多不同点 1. DNS中的配置是静态的一个ip或多个ip, 而注册中心中是动态变化的实例列表 2. DNS无法为ip添加元信息 阅读全文
摘要:
Spring Cache Spring Cache 是 Spring 提供的一整套的缓存解决方案。虽然它本身并没有提供缓存的实现,但是它提供了一整套的接口和代码规范、配置、注解等,这样它就可以整合各种缓存方案了,比如 Redis、Ehcache,我们也就不用关心操作缓存的细节。 https://do 阅读全文
摘要:
以下操作皆在root用户下, 话不多说, 直接开干 第一步: 备份原gitlab 进入gitlab目录下, 我这边是: /home/git/gitlab 执行命令: sudo -u git -H bundle exec rake gitlab:backup:create RAILS_ENV=prod 阅读全文