Golang 什么時候使用指針(Pointer)?什么時候使用值(Value)?對于go開發(fā)者來說是一件頭疼的事情, 而且這個問題似乎沒有絕對的答案,那是否代表我們可以隨意使用呢?答案當然是否定的。本文我將試圖總結什么場景使用指針更合理。 在開始閱讀前,建議讀者先能夠清晰理解 Golang 指針、類型和值等概念。本文并不是標準更不是唯一答案,而是自己根據使用經驗和社區(qū)的一些討論而總結的實踐有下幾種...
本文介紹docker中的contanier,基于操作系統(tǒng)介紹什么是container。進程(Processes)Container是具有指定配置的Linux進程(processes)。我們進行如下操作: ##啟動一個redis進程 ?~dockerrun-d--name=dbredis:alpine ##顯示容器運行的進程 ?~dockertopdb PIDUSERTIMECOMMA...
本文以一個實際業(yè)務問題來談談事務該如何處理。對接外部系統(tǒng)是是不可避免的,從廣泛意義上來說,外部系統(tǒng)范圍很大,中間件(數據庫)也屬于外部系統(tǒng)。當我們討論事務時,通常我們將那些沒有支持事務的系統(tǒng)稱為外部系統(tǒng),業(yè)務系統(tǒng)基本上都是外部系統(tǒng)。問題有這樣一套系統(tǒng),以gitlab為底層系統(tǒng), 在gitlab project的基礎上封裝了代碼倉,系統(tǒng)對其中一些與gitlab關聯的數據進行了落表。創(chuàng)建代碼倉的邏輯過...
在使用Spring Boot開發(fā)過程中,并發(fā)concurrency問題不可避免。很多開發(fā)者存在這樣的誤區(qū),使用Servlets為每個請求分配一個新的線程進行處理就不再需要并發(fā)處理了。我將在這篇文章中介紹如何在Spring Boot中處理并發(fā)并且如何避免一些問題。Spring Boot 并發(fā)基礎有以下幾點特別值得注意:最大線程數:這是為處理應用程序的請求而分配的最大線程數。共享資源:調用共享資源如數...
通過Hexo&Gitpage方案部署的博客系統(tǒng),訪問速度確實很慢。一個網站如果在4秒內沒有讀取出來,大多數訪客會選擇離開。分析首先需要排查出頁面加載速度慢的原因,這里我們結合Chrome開發(fā)者工具和開源的在線網站測試(模擬不同地區(qū)和終端)進行測試。chrome分析結果通過比較Gitpage和本地訪問情況,可以看出DomcontentLoad加載時間沒有多少差距,那當然是請求資源load耗時...