Golang 限速器

這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。限速器之前看到這篇golang並發編程的兩種限速方法,覺得 sleep 等待的方式不是特別好,喚醒線程的時間比較長。而且1s內的請求只能均勻的到來,如瞬間來 N 個, 那麼只有一個能立刻返回,剩下的只能等待。【修正】根據的說明,無論是 sleep 還是 chan block, 發生的事情都是 G 和 P

Go語言並行存取模型:以平行處理MD5為例

這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。簡介Go語言的並發原語允許開發人員以類似於 Unix Pipe 的方式構建資料流水線 (data pipelines),資料流水線能夠高效地利用 I/O和多核 CPU 的優勢。本文要講的就是一些使用流水線的一些例子,流水線的錯誤處理也是本文的重點。閱讀建議本文是"Go語言並行存取模型:像Unix Pipe那樣使用channel"一文的下半部分,但重點在於實踐。如果你對 channel 已經比較熟悉,則可以獨立閱讀。

Go語言並行存取模型:像Unix Pipe那樣使用channel

這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。簡介Go語言的並發原語允許開發人員以類似於 Unix Pipe 的方式構建資料流水線 (data pipelines),資料流水線能夠高效地利用 I/O和多核 CPU 的優勢。本文要講的就是一些使用流水線的一些例子,流水線的錯誤處理也是本文的重點。閱讀建議資料流水線充分利用了多核特性,代碼層面是基於 channel 類型 和 go 關鍵字。channel 和 go

golang的一個醜陋實現

這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。好多些天前,我在golang實踐群裡問了下面代碼的問題:package mainimport "fmt"type Aer interface{ Name()string PrintName()}type A struct {}func (a *A) Name() string { return "a"}func (a *A) PrintName() {

通過拆分多幀的方式WebSocket發送圖片

這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。package mainimport ("fmt""golang.org/x/net/websocket""log""net/http""os""time")var (dirPath stringtest bytelenFile int)func check(e error) {if e != nil { panic(e)}

使用 delve 調試 golang 程式

這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。安裝 delve官方的文檔已經很全了,參考這裡(github)安裝。Mac OSX 比較麻煩,需要搞定認證。斷點和變數列印delve 裝好之後就可以直接在命令列使用 dlv 命令了。查看可用的命令dlv -h看協助資訊可知:支援用 dlv attach 的方式調試正在啟動並執行進程,支援 dlv connect 連結到網路連接埠調試。這裡先用最簡單的 dlv debug 調試。dlv debug main.go然後會進入偵錯模式,

Go語言:簡介(一)

這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。Go語言:簡介(一)對Go語言瞭解前,我們先來補一些基本概念基本概念Program Errorstrapped errors。導致程式終止執行,如除0,Java中數組越界訪問untrapped errors。 出錯後繼續執行,但可能出現任意行為。如C裡的緩衝區溢位、Jump到錯誤地址Forbidden Behaviours語言設計時,可以定義一組forbidden behaviors. 它必須包括所有untrapped

節操,代碼,修養,妹子和其他(Go語言版)

這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。Festival & Fuck, Coding, Inner depth, Sister and Others.某些文章會提到《為什麼Go語言這麼不受待見》,《真的沒必要浪費心思在 Go 語言上》,《我為什麼放棄Go語言》,《Why worse is

Go 語言反射三定律

這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。簡介Reflection(反射)在電腦中表示

nsqjs用戶端的部署

這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。因為公司在業務中需要用到訊息佇列產品,我選用了基於golang開源的nsq產品,記錄下我遇到的那些部署中的坑。首先安裝nsq,這個沒什麼好說的,我是直接在官網下載bin檔案,直接部署的,環境是centOS 6.7,安裝在/opt/nsq-0.3.7.linux-amd64.go1.6目錄下;其次是安裝nodejs,我安裝的是v6.1.0版本,這步也沒什麼好講;然後安裝nsqjs這個遇到了些坑,這裡先記錄下1、要看下gcc的版本;$

Golang伺服器的網路層實現

這是一個建立於

用Golang寫一個搜尋引擎(0x07)--- 正排索引

這是一個建立於

用Golang寫一個搜尋引擎(0x06)--- 索引構建

這是一個建立於

字串尋找演算法(二)

這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。接前面的《字串尋找演算法》繼續寫。上一篇文章說過,神奇的數字16777619,當時不知道這個是幹嘛用的,現在差不多知道了。字串雜湊,會經常用到FNV雜湊演算法。FNV雜湊演算法如下:將字串看作是字串長度的整數,這個數的進位是一個質數。計算出來結果之後,按照雜湊的範圍求餘數,結果就是雜湊結果。#define TRUE_HASH_SIZE ((u_int32_t)50000) /* range top plus 1

Golang Web架構 Tiny Go Web

這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。Tiny Go Web (TGW)是一個非常簡單的Web架構,甚至談不上架構。TGW無意取代任何架構,TGW的誕生是因為作者在使用beego時有種挫敗感,決定自己重新寫一個適合自己網站用的(私人借書網,因為網站沒有完成備案,暫時由託管在US的vps進行反向

Go語言的測試

這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。之前看過一本書,說:“凡大神都是先寫好單元測試用例,才去寫代碼的”。我一直都記在心裡。今天終於有空,就看了看Golang的測試包testing。謝大的書和Golang官方的文檔講的差不多,Golang提供了兩個測試方式:用例測試和壓力測試。###1. 用例測試用例測試的規則我是複製謝大的: 檔案名稱必須是_test.go結尾的,這樣在執行go test的時候才會執行到相應的代碼 你必須import testing這個包

使用Go語言編寫的跨平台的emlog整站(首頁+文章)靜態化工具

這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。emlog_static.go項目地址: https://github.com/johnlui/emlog_static.go====================功能新聞部落格類非資料互動網站通用首頁靜態化emlog部落格系統文章頁靜態化使用Go語言編寫,跨平台條件需要能夠管理伺服器,需要編譯、運行軟體需要Go語言編譯環境,請去The Go Programming Language

too many open files錯誤

這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。大家都知道,最近我模仿binux大嬸的pyspider的害羞組線上上跑了一段時間了。後來加入了一些新的東西,比如代理池等。看瞅著代碼越來越靠譜了,結果突然有一天,發現抓取停止了,緊接著去看日誌:2015/08/12 23:18:22 Post http://api.duoshuo.com/posts/import.json: dial tcp: lookup api.duoshuo.com: too many open

iota: Golang 中優雅的常量

這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。 註:該文作者是 Katrina Owen,原文地址是 iota: Elegant Constants in Golang有些概念有名字,並且有時候我們關注這些名字,甚至(特別)是在我們代碼中。const ( CCVisa = "Visa" CCMasterCard = "MasterCard" CCAmericanExpress =

Golang的記憶體回收

這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。我們公司服務端都是在用Golang,每天幾百萬的UV,過億的PV一直沒啥問題。後來改了一次邏輯,首頁能展示一個列表,之前這個列表都沒有做過緩衝處理,一個是因為資料少,一共才一千多條;還有就是量不大。但是首頁加了入口之後出了問題,記憶體瘋漲,一般記憶體也就佔200M+,這還是包含In

總頁數: 1023 1 .... 114 115 116 117 118 .... 1023 Go to: 前往

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.