原创 IDEA 無限重置30天插件

以上三步,簡單完事!!!

原创 過濾 Json 數據

@JsonIgnoreProperties:作用在類上 // 生成 json 時將 userRoles 屬性過濾 @JsonIgnoreProperties({"userRoles"}) public class User { pr

原创 Json 扁平化對象 @JsonUnwrapped

@Data public class Account { @JsonUnwrapped private Location location; @JsonUnwrapped private PersonInf

原创 Maven 簡述

Maven 是服務於 Java 平臺的自動化構建工具,從工具的發展歷程來看,經歷過 Ant 到 Maven 再到 Gradle 構建:一般的定義是把動態的 Web 工程編譯,再把編譯的工程部署到服務器上 編譯:java 源文件[.java

原创 數據庫 ID 生成方案:美團 Leaf

在美團早期,有的業務直接通過 DB 自增的方式生成 ID,有的業務通過 Redis 緩存來生成 ID,也有的業務直接用 UUID 這種方式來生成 ID。以上的方式各自有各自的問題,因此美團實現了一套分佈式 ID 生成服務來滿足需求。具體

原创 數據庫 ID 生成方案:號段模式

還可以使用號段的方式來獲取自增 ID,號段可以理解成批量獲取。比如從數據庫獲取 ID 時,就可以批量獲取多個 ID 並緩存在本地,提升效率。 比如每次從數據庫獲取 ID 時,就獲取一個號段,如 (1,1000],這個範圍表示1000個

原创 數據庫 ID 生成方案:雪花算法

上面的三種方法總的來說是基於自增思想的,而接下來就介紹比較著名的雪花算法-snowflake。 我們可以換個角度來對分佈式ID進行思考,只要能讓負責生成分佈式ID的每臺機器在每毫秒內生成不一樣的ID就行了。 snowflake是twitt

原创 數據庫 ID 生成方案:數據庫多主模式

將兩個數據庫組成主從模式的集羣,正常情況下,是可以解決數據庫的可靠性問題,但如果主庫掛掉後,數據沒有及時同步到從庫,這個時候就會出現 ID 重複的問題。 可以使用雙主模式集羣,也就是兩個實例都能單獨的生產自增ID,這樣能夠提高效率,不過就

原创 數據庫 ID 生成方案:數據庫自增

創建一個數據庫實例,在這個實例中新建一個單獨的表: 表結構如下: CREATE DATABASE `Test`; CREATE TABLE Test.test01 ( id bigint(20) unsigned NOT NUL

原创 數據庫 ID 生成方案:Redis

使用 Redis 來生成分佈式 ID,其實和利用 Mysql 自增 ID 類似,可以利用 Redis 中的 incr 命令來實現原子性的自增與返回,比如: 127.0.0.1:6379> set id 1 // 初始化自增 ID 爲1

原创 數據庫 ID 生成方案:百度 UidGenerator

UidGenerator 是用 Java 語言實現的基於 Snowflake 算法的唯一 ID 生成器。 UidGenerator 是以組件形式工作在應用項目中, 支持自定義 workerId 位數和初始化策略, 從而適用於 Docker

原创 Docker 鏡像詳情

藉助 docker inspect 命令,我們可以獲取鏡像的詳細信息,包括鏡像 Id、創建時間、State、HostConfig、Config 等,如查看 redis : docker inspect redis Docker

原创 Docker 鏡像歷史

我們知道,一個鏡像是由多個層(layer)組成的,那麼,要如何查看各個層的具體內容呢? 通過 docker history 命令,可以列出各個層(layer)的創建信息,如查看 redis 的各層信息: docker history re

原创 布隆過濾器之 Guava 實現

首先,在項目中引入 Guava 的依賴: <dependency> <groupId>com.google.guava</groupId> <artifactId>guava