原创 go語言學習備忘(init)

init函數:  每個包可以包含任意多個 init 函數,這些函數都會在程序執行開始的時候被調用。所有被編譯器發現的 init 函數都會安排在 main 函數之前執行。 init 函數用在設置包、初始化變量或者其他要在程序運行前優先完成的

原创 k8s踩坑記錄

1.dumb-init: 容器啓動的進程管理  參考:  https://www.infoq.cn/article/2016/01/dumb-init-Docker 2.驅逐策略(主要是對升級的影響): v1.13之前版本 pod-evi

原创 iptables常用信息備忘1

iptables是內核空間內的防火牆框架netfilter的命令行工具,iptables位於用戶空間. 鏈(可以理解爲流量需要經過的關卡): 所以,根據上圖,我們能夠想象出某些常用場景中,報文的流向: 到本機某進程的報文:PREROUT

原创 go語言學習備忘(方法)

如果一個函數有接收者,那麼這個函數就叫方法。 Go 語言裏有兩種類型的接收者:值接收者和指針接收者。如下: // user 在程序裏定義一個用戶類型 type user struct { name string email stri

原创 go語言學習備忘(併發)

併發與並行        並行是讓不同的代碼片段同時在不同的物理處理器上執行。並行的關鍵是同時做很多事情,而併發是指同時管理很多事情,這些事情可能只做了一半就被暫停去做別的事情了。在很多情況下,併發的效果比並行好,因爲操作系統和硬件的總資

原创 go語言學習備忘(切片)

數組: 在 Go 語言裏,數組是一個長度固定的數據類型,用於存儲一段具有相同的類型的元素的連續塊。 數組是一種非常有用的數據結構,因爲其佔用的內存是連續分配的。由於內存連續,CPU能把正在使用的數據緩存更久的時間。而且內存連續很容易計算索

原创 linux常用命令(2)

sed 在匹配hub.xxx.io的行首添加#: sed -i '/hub.xxx.io/s/^/#&/' /etc/hosts sed去掉匹配hub.xxx.io行首的#: sed -i '/hub.easystack.io/s/^

原创 go語言學習備忘(競態與鎖)

        基於調度器的內部算法,一個正運行的 goroutine 在工作結束前,可以被停止並重新調度。調度器這樣做的目的是防止某個 goroutine 長時間佔用邏輯處理器。當 goroutine 佔用時間過長時,調度器會停止當前正