原创 正確使用Golang的Channel

channel 是什麼 Don't communicate by sharing memory, share memory by communicating. 相信寫過 Go 的同學都知道這句名言,可以說 channel 就是後邊這

原创 使用HTTPDNS相比LocalDNS的好處

HTTPDNS使用HTTP協議進行域名解析,代替現有基於UDP的DNS協議,域名解析請求直接發送到阿里雲的HTTPDNS服務器,從而繞過運營商的Local DNS,能夠避免Local DNS造成的域名劫持問題和調度不精準問題。 功能 說明

原创 5G+邊緣雲計算(阿里ENS, 華爲IEC)

總結:邊緣雲計算2020是爆發的一年,雲計算架構會由端雲架構向端邊雲架構演進,5G+AI會推動邊緣計算不斷向前;在邊緣雲場景中,沉浸式消費場景(CloudXR、雲遊戲)與產業互聯網將不斷髮展;邊緣雲的技術挑戰在於站點小,資源少,站點分佈

原创 golang的Once研究

通過 Once學習 Go 的內存模型 Once 官方描述 Once is an object that will perform exactly one action,即 Once 是一個對象,它提供了保證某個動作只被執行一次功能,最典型

原创 分佈式ID(唯一性)的生成方法

我們在開發分佈式系統的時候,我們對數據庫的中的ID要保證唯一性,在數據庫分庫分表的時候,我們可能利用id的唯一性。 今天介紹一種生成分佈式ID的方法 SnowFlake 算法,是 Twitter 開源的分佈式 id 生成算法。其核心思想就

原创 go mod 設置代理下載依賴包,溜溜的

最近在做數據庫遷移的問題,用到了go版本的migrate工具,這個工具有個bug,需要下載源代碼進行編譯,苦於go mod下載google的依賴包都不能下載下來,所以想辦法來進行下載。 數據庫遷移源代碼git: git clone -b

原创 用golang實現多個數組的排列組合(笛卡爾積算法)

方法一:不囉嗦,直接上代碼 // Product func Product(sets ...[]interface{}) [][]interface{} { lens := func(i int) int { return len(

原创 邊緣站點時延分析圖

華爲IEC、阿里ENS服務,都是跟CDN結合,在CDN機房提供虛擬機、存儲、網絡的能力,客戶服務下沉到邊緣站點,用戶可以就近接入到邊緣站點。下沉到邊緣,最重要的一個原因,提供更低的時延,我們來看一下怎樣分析時延  

原创 活學活用golang的反射機制

瞭解和使用golang有一段時間了,由於項目比較趕,基本是現學現賣的節奏。最近有時間會在簡書上記錄遇到的一些問題和解決方案,希望可以一起交流探討。 需求 在golang中,給定一組數據,例如 map[string]interface{} 

原创 基於熱點發現的本地緩存的架構設計

基於流式計算技術的緩存熱點自動發現 其實這裏關鍵的一點,就是對於這種熱點緩存,你的系統需要能夠在熱點緩存突然發生的時候,直接發現他,然後瞬間立馬實現毫秒級的自動負載均衡。 那麼我們就先來說說,你如何自動發現熱點緩存問題?首先你要知道,一般

原创 golang版本的數據庫遷移工具(數據庫升級回滾)

我們在工作中,總會用到數據庫升級回滾、版本管理用具,最近迷戀go語言的工具,所有就開始使用golang版本的數據庫遷移工具 1、數據庫遷移 darwin - Go 實現的數據庫 schema 演進庫 goose - 數據庫遷移工具。可通過

原创 LVS簡介以及集羣部署方式

1、LVS簡介         LVS的IP負載均衡技術是通過IPVS模塊實現的。IPVS模塊是LVS集羣的核心軟件模塊,它安裝在LVS集羣作爲負載均衡的主節點上,虛擬出一個IP地址和端口對外提供服務。用戶通過訪問這個虛擬服務(VS),然

原创 KAFKA高性能吞吐架構設計

頁緩存技術 + 磁盤順序寫 首先 Kafka 每次接收到數據都會往磁盤上去寫,如下圖所示:     那麼在這裏我們不禁有一個疑問了,如果把數據基於磁盤來存儲,頻繁的往磁盤文件裏寫數據,這個性能會不會很差?大家肯定都覺得磁盤寫性能是極差的

原创 Istio學習文檔(envoy流量劫持原理,istio的介紹原理)

1、理解 Istio Service Mesh 中 Envoy 代理 Sidecar 注入及流量劫持理解 Istio Service Mesh 中 Envoy 代理 Sidecar 注入及流量劫持 2、Istio 中的 Sidecar 的

原创 全局負載均衡(GSLB)的實現方案

What is GSLB Global Server Load Balancing 中文:全局負載均衡 SLB(Server load balancing)是對集羣內物理主機的負載均衡,而GSLB是對物理集羣的負載均衡。 這裏的負載均衡可