golang:高效能訊息佇列moonmq的簡單使用

這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。在上一篇moonmq的介紹中(這裡),我只簡短的羅列了一些moonmq的設計想法,可是對於怎樣使用並沒有具體說明,公司同事無法非常好的使用。對於moonmq的使用,事實上非常easy,例子代碼在這裡,我們僅僅須要處理好broker,consumer以及publisher的關係就能夠了。首先,我們須要啟動一個broker,由於moonmq如今僅僅支援tcp的自己定義協議,所以broker啟動的時候須要指定一個listen

golang web編程:簡單的會話(使用sessions包)

這是一個建立於

golang使用pprof檢查goroutine泄露

這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。有一段時間,我們的推送服務socket佔用非常不正常,我們自己統計的同一時候線上就10w的使用者,可是佔用的socket居然達到30w,然後查看goroutine的數量,發現已經60w+。每一個使用者佔用一個socket,而一個socket,有read和write兩個goroutine,簡化的代碼例如以下:c, _ := listerner.Accept()go c.run()func (c *conn) run() {

go package學習——os/exec

這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。 package exec用於運行外部命令,它封裝了os.StartProcess,從而使操作更容易。 Index  Variables func LookPath(file string) (string, error) type Cmd func Command(name string, arg ...string) *Cmd func (c *Cmd)

golang 資料建模json解析

這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。1.0 controller get請求type MainController struct { beego.Controller}func (this *MainController) Get() { this.Data["IsHome"] = true this.Data["Website"] = "s.me" this.Data["Email&#

golang實現udp接入伺服器

這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。前端通過udp與接入伺服器串連,接入伺服器與後端tcp伺服器維持tcp串連。目錄結構及後端tcp伺服器代碼同上一篇部落格。main.gopackage mainimport ( "lotuslib")const ( ip = "0.0.0.0" port = 1987)func main() { udplotus.UdpLotusMain(ip,

golang 實現微信公眾平台API引擎開發模式

這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。/* *@author 菠菜君 *@Version 0.2 *@time 2013-10-29 *@golang實現公眾平台API引擎開發模式 *@青島程式員 訂閱號qdprogrammer *@Golang 訂閱號gostock *@關於青島程式員的技術,創業,生活 分享。 *@開源 https://github.com/philsong/ */package mainimport ("crypto/sha1"&

golang的slice作為函數參數傳值的坑

這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。直接貼代碼func sliceModify(slice []int) { // slice[0] = 88 slice = append(slice, 6)}func main() { slice := []int{1, 2, 3, 4, 5} sliceModify(slice) fmt.Println(slice)} 返回的沒變,坑爹的,這個設計太那啥了,可以正確跑出效果的版本如下:func

golang RPC使用

這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。github:https://github.com/ZhangzheBJUT/blog/blob/master/golang_rpc.md 一 HTTP RPC服務端代碼package mainimport ("errors""fmt""net/http""net/rpc")const ( URL = "192.168.2.172:12981")

sublime text 配置golang開發環境

這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。一、準備工作:   1、下載Go語言套件: https://code.google.com/p/go/downloads/list   2、下載Git: https://code.google.com/p/msysgit/downloads/list   3、下載Sublime 2:http://www.sublimetext.com/2二、安裝:  1、安裝go(一路next),他會自動幫你配置環境變數 

為vim配置go開發環境

這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。 時至今日,go開發進入了慢而穩步發展的階段,所以一些可用的IDE也應時而生,例如LiteIDE,IntelliJ的Golang外掛程式等,不過我現在在某種環境下還只能使用vim,所以特此記錄一下。 其實在vim下配置的簡單開發環境也挺簡單的,把一下語句加入到~/.vimrc下即可: filetype offfiletype plugin indent offset

golang mysql 字串插入錯誤

這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。 Incorrect string value: '\xEF\xBF\xBD\xEF\xBF\xBD...' 報這個錯,基本是編碼問題,檢查一下表的編碼 show create table table_name;比如問題就出在字元集| gosignal | CREATE TABLE `gosignal` ( `id` int(11) DEFAULT NULL, `time` varchar(30)

golang中的defer panic recover

這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。大家都知道golang裡的panic相當於其他語言裡的throw,而recover相當於其他語言裡的cacth,可是由於golang的recover機制要求必須在defer的函數裡才能執行catch panic大概意思如下func protect(g func()) {defer func() {log.Println("done") // Println executes normally even if

golang 格式化時間為字串

這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。package mainimport ( "fmt" "reflect" "time")func main() { //格式化字串為時間 test, _ := time.Parse("2006-01-02", "2013-11-11") //時間增加 after, _ :=

golang 物件導向

這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。method的文法如下:func (r ReceiverType) funcName(parameters) (results)下面我們用最開始的例子用method來實現:package mainimport ( "fmt" "math")type Rectangle struct { width, height float64}type Circle struct {

go package學習——io/util

這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。 package io/util實現了一些io效用函數。 Index Variables func NopCloser(r io.Reader) io.ReadCloser func ReadAll(r io.Reader) ([]byte, error) func ReadDir(dirname string) ([]os.FileInfo, error) func

golang語言os.Stat()用法及功能

這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。package mainimport ( "fmt" "os")func main() { fileinfo, err := os.Stat(`C:\Users\Administrator\Desktop\UninstallTool.zip`) if err != nil { panic(err) }

golang sync WaitGroup

這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。剛才看golang的sync的包,看見一個很有用的功能。就是WaitGroup。先說說WaitGroup的用途:它能夠一直等到所有的goroutine執行完成,並且阻塞主線程的執行,直到所有的goroutine執行完成。WaitGroup總共有三個方法:Add(delta

golang win32編程的一個dll坑

這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。例子 package mainimport ("github.com/lxn/win""strconv""syscall")func _TEXT(_str string) *uint16 {return syscall.StringToUTF16Ptr(_str)}func _toString(_n int32) string {return strconv.Itoa(int(_n)

golang 環境搭建

這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。作業系統 ubuntu 12.04 64 位元1. 配置編譯環境Go工具鏈採用C語言編寫,需要安裝以下開發工具$ sudo apt-get install bison gcc libc6-dev ed gawk make 2.安裝Mercurial工具Mercurial是一種輕量級分布式版本控制系統,採用Python編寫。首先安裝Python$ sudo apt-get install python2.7$ sudo

總頁數: 1023 1 .... 1013 1014 1015 1016 1017 .... 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.