原创 【併發那些事】生產者消費者問題

Step 1. 什麼是生產者消費者問題 生產者消費者問題也叫有限緩衝問題,是多線程同步的一個最最最經典的問題。這個問題描述的場景是對於一個有固定大小的緩衝區,同時共享給兩個線程去使用。而這兩個線程會分爲兩個角色,一個負責往這個緩衝區裏放入

原创 【spock】單測竟然可以如此絲滑

0. 爲什麼人人都討厭寫單測 在之前的關於swagger文章裏提到過,程序員最討厭的兩件事,一件是別人不寫文檔,另一件就是自己寫文檔。這裏如果把文檔換成單元測試也同樣成立。 每個開發人員都明白單元測試的作用,也都知道代碼覆蓋率越高越好。高

原创 【websocket】spring boot 集成 websocket 的四種方式

集成 websocket 的四種方案 1. 原生註解 pom.xml <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring

原创 【隨筆】跳出程序員思維看世界

作爲程序員,我真的有時候特別想 debug 這個世界。看看這個世界究竟是怎麼運行的。因爲經常會遇到她的輸出跟我斷言的不一樣,或者我覺得正常的輸入,卻被她判定爲非法。 先分享兩件事吧。 第一件事,記得去年考駕照的時候,應該是在練科

原创 【併發那些事 】創建線程的三種方式

創建線程可以說是併發知識中最基礎的操作了,JDK 提供的創建線程的方式,如果不包括通過線程池的話,目前有三種形式,它們分別是通過繼承 Thread 類,通過實現 Runable 接口,通過 FutureTask。如下圖所示 下

原创 【websocket】spring boot 集成 websocket 的四種方式

集成 websocket 的四種方案 1. 原生註解 pom.xml <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot

原创 【併發那些事 】創建線程的三種方式

創建線程可以說是併發知識中最基礎的操作了,JDK 提供的創建線程的方式,如果不包括通過線程池的話,目前有三種形式,它們分別是通過繼承 Thread 類,通過實現 Runable 接口,通過 FutureTask。如下圖所示 下面整理了一

原创 【隨筆】跳出程序員思維看世界

作爲程序員,我真的有時候特別想 debug 這個世界。看看這個世界究竟是怎麼運行的。因爲經常會遇到她的輸出跟我斷言的不一樣,或者我覺得正常的輸入,卻被她判定爲非法。 先分享兩件事吧。 第一件事,記得去年考駕照的時候,應該是在練科目三。教練

原创 【Sentinel】sentinel 集成 apollo 最佳實踐

【Sentinel】sentinel 集成 apollo 最佳實踐 前言   在 sentinel 的控制檯設置的規則信息默認都是存在內存當中的。所以無論你是重啓了 sentinel 的客戶端還是 sentinel 的控制檯。你

原创 【Rocketmq】通過 docker 快速搭建 rocketmq 環境

1. 安裝 Namesrv 拉取鏡像 docker pull rocketmqinc/rocketmq:4.4.0 啓動容器 docker run -d -p 9876:9876 -v {RmHome}/data/namesr

原创 【Sentinel】sentinel 集成 apollo 最佳實踐

【Sentinel】sentinel 集成 apollo 最佳實踐 前言   在 sentinel 的控制檯設置的規則信息默認都是存在內存當中的。所以無論你是重啓了 sentinel 的客戶端還是 sentinel 的控制檯。你所設置的規

原创 【Rocketmq】通過 docker 快速搭建 rocketmq 環境

1. 安裝 Namesrv 拉取鏡像 docker pull rocketmqinc/rocketmq:4.4.0` 啓動容器 docker run -d -p 9876:9876 -v {RmHome}/data/namesrv/log

原创 【Swagger】可能是目前最好的 Spring Boot 集成 swagger 的方案

【Swagger】可能是目前最好的Spring Boot集成 swagger 的方案 ![](https://img2018.cnblogs.com/blog/746311/201909/746311-20190908162326923-1

原创 【Swagger】可能是目前最好的 Spring Boot 集成 swagger 的方案

【Swagger】可能是目前最好的Spring Boot集成 swagger 的方案   據說程序員最恨的兩件事:一件是別人不寫文檔,另一件是自己寫文檔。   可見文檔真的是程序員生活中相愛相殺的存在。一方面對於使用者來說,一

原创 【基準測試】JMH 簡單入門

JMH 簡單入門 什麼是 JMH JMH 是 Java Microbenchmark Harness 的縮寫。中文意思大致是 “JAVA 微基準測試套件”。首先先明白什麼是“基準測試”。百度百科給的定義如下: 基準測試是指通過