![240](https://cdn2.jianshu.io/assets/default_avatar/14-0651acff782e7a18653d7530d6b27661.jpg?imageMogr2/auto-orient/strip|imageView2/1/w/240/h/240)
總體介紹 以太坊內部有大量協(xié)程癌压,協(xié)程間的調度驅動通過事件機制來完成谷炸;具體實現使用golang的chan機制山涡。主要方案有以下兩種幻碱。 1.使用觀察者模式實現“事件”轉發(fā) Feed...
go-ethereum中go-event庫的使用 github.com/ethereum/go-ethereum/event包實現了一個事件發(fā)布訂閱的庫,使用接口主要是eve...
docker提供了logs命令來對日志進行處理 -f 對你的項目進行l(wèi)og監(jiān)聽治专,所有l(wèi)og日志實時輸出 -t 提供時間戳進行日志的追溯,可以和-f 混用 --tail=num...
golang標準庫對io的抽象非常精巧遭顶,各個組件可以隨意組合张峰,可以作為接口設計的典范。這篇文章結合一個實際的例子來和大家分享一下棒旗。 背景 以一個RPC的協(xié)議包來說喘批,每個包有如...
這篇文章想聊聊Golang語言下的設計模式問題,我覺得這個話題還是比較有意思的铣揉。Golang沒有像java那樣對設計模式瘋狂的迷戀饶深,而是擺出了一份“看庭前花開花落,望天空云卷...
今天介紹一下 go語言的并發(fā)機制以及它所使用的CSP并發(fā)模型 CSP并發(fā)模型 CSP模型是上個世紀七十年代提出的逛拱,用于描述兩個獨立的并發(fā)實體通過共享的通訊 channel(管...
項目中的消息通知用到了websocket敌厘,感覺比http長連接分塊發(fā)送好用,特此記錄一下朽合。WebSocket協(xié)議用ws表示俱两。此外饱狂,還有wss協(xié)議,表示加密的WebSocket...
序言 Golang遵循“少即是多”的設計哲學宪彩,同時又支持閉包(Closure)休讳,那么閉包對于Golang來說肯定有重要的價值。 對于Golang的初學者來說尿孔,肯定會有下面的幾...
序言 筆者在《軟件設計的演變過程》一文中俊柔,將通信系統(tǒng)軟件的DDD分層模型最終演進為五層模型,即調度層(Schedule)纳猫、事務層(Transaction DSL)婆咸、環(huán)境層(C...
map Golang的map采用的是hash表來實現的。我們知道hash映射中必須要解決一個問題:如何有效避免hash碰撞芜辕。避免hash碰撞的方式大致有:開放地址法尚骄,鏈地址法...
前言 本規(guī)范是針對 Go 語言的編碼規(guī)范,目的是為了統(tǒng)一項目的編碼風格侵续,提高源程序的可讀性倔丈、可靠性和可重用性,從而提高軟件的質量状蜗。 本規(guī)范適用于所有產品的軟件源程序需五,同時考慮...
序言 隨著容器云技術的不斷成熟,微服務架構也變得越來越火轧坎。在微服務架構下宏邮,我們將原本單一的應用按照功能邊界分解成一系列獨立、專注的微服務缸血。每個微服務對應傳統(tǒng)應用中的一個組件蜜氨,...
聲明:本文僅限于簡書發(fā)布,其他第三方網站均為盜版捎泻,原文地址: 簡單的并發(fā)控制 —— WaitGroup 在 golang 中飒炎,我了解的并發(fā)同步主要有兩種方式,一種是 chan...
如果非必要笆豁,盡量不要在程序中使用閉包郎汪。go函數可以是一個閉包。閉包是一個函數值闯狱,它引用了函數體之外的變量煞赢。這個函數可以對這個變量進行訪問和賦值。展示一個例子 運行結果 函數 ...
Socket服務器是網絡服務中常用的服務器扩氢。使用 go 語言實現這個業(yè)務場景是很容易的耕驰。這樣的網絡通訊,需要一個服務端和至少一個客戶端。我們計劃構建一個這樣的通訊過程朦肘。服務端...