原创 如何研究Java的API?

研究源碼時候,首先會看到一個類,但是這個類的複雜度以及到底做了什麼,並不是很清楚,這裏總結了一些經驗。1 對象是實體類,還是抽象類,還是接口。接口類看有幾個接口以及默認方法,接口越多職責越多,接口參數越多發生耦合可能性越大。抽象類看抽象

原创 三大系統軟件(數據庫,操作系統,編譯器)書籍推薦

三大系統軟件有數據庫,操作系統,編譯器。有種說法是程序員的水平從掌握三大系統軟件的程度來看。會編譯器的比會操作系統牛,會操作系統的比數據庫牛,什麼都不會的水平堪憂。這裏主要推薦國外教科書。暢銷書和具體某個軟件實現類的書沒有推薦。 數據庫 《

原创 springboot2+exporter+prometheus+grafana搭建監控體系

項目中需要監控系統指標(JVM,CPU,IO,MySQL等),這時候可以使用Prometheus來做。如果是需要監控日誌系統,可以使用ELK stack。監控=日誌(ELK)+指標(Prometheus)。 step1 編寫springb

原创 python發送郵件和附件

發送郵件的時候,需要發送人,收件人,和一臺郵件服務器,這裏使用python發送一個郵件,主要需要引入smtplib和email庫。下面是源碼,粘貼即可用: #!/usr/bin/env python3 # coding: utf-8 imp

原创 ssh免密碼登錄

假如服務器地址是:88.88.88.88,用戶名是root,在第一次登錄的時候,會要求輸入密碼,登錄成功後會在本地~/.ssh/id_rsa.pub生成祕鑰,但是第二次登錄時候,還是需要輸入密碼,這時候可以將id_rsa.pub拷貝到服務器

原创 SpringCloud和SpringBoot的版本說明

SpringCloud包含了衆多子項目,每一個子項目發佈時間不一定一致,所以採用了倫敦地鐵站爲版本說明,而不是數字。並且從A開始是第一個發佈版,B是第二個,以此類推。 SpringCloud版本 SpringBoot版本 Gr

原创 Java中的鎖機制

Java中的鎖機制: API層面:Synchronized,AQS(CLH): ReentrantLock,ReentrantReadWriteLock,StampedLock(Ordered RW locks) JVM層面(Hotsp

原创 別再學習框架了

我們是開發者,我們需要和技術與時俱進,我們每天學習編程語言,框架,庫,我們知道越現代的工具,我們就越好和 Angular, React, Vue, Riot, Ember, Knockout 保持與時俱進很有趣。但是我們是在浪費時間。時間是

原创 docker常用運維命令

docker常用運維命令總結:在centos中一般通過systemd啓動與管理docker: 1. 啓動docker:sudo systemctl start docker 2. 關閉docker:sudo systemctl stop

原创 postman生成curl命令和request

postman使用小技巧,可以生成curl命令和各種語言的request請求: curl命令 okhttp go

原创 哈利波特圖片

原创 寫給大忙人看的數據庫存儲引擎-高級話題

導言在第一篇博文中,我們學習了b-tree和lsm-tree的索引管理方式,索引算法也在選擇存儲引擎類型時候起到了關鍵作用,下述大標題也同等重要需要考慮 1 一致性,事務和併發控制單體數據庫,通常指的是關係型/SQL,支持強一致性和ACID

原创 我的維基百科wikipedia的配置(中文維基百科配置)

中文維基百科配置:中文wikipedia在國內一直被牆了,網上找了一個方案,發現可以訪問中文的維基百科了,一陣欣喜。無論mac或者windows,配置host加入即可(參考鏈接:https://sspai.com/post/41076 )

原创 SpringCloud Gateway獲取post請求體(request body)

獲取spring cloud gateway POST請求體的時候,會有很多坑,網上大多數解決方案是 /** 這種方法在spring-boot-starter-parent 2.0.6.RELEASE + Spring Cloud Finc

原创 SpringCloud Gateway與swagger集成解決方案

spring cloud gateway 底層採用的是webflux,swagger2暫時不支持webflux,網上的解決方案雖然有一些,比如這篇文章 還有《重新定義spring cloud 實戰》這本書也有解決方案,書源碼鏈接,我們項目裏