• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            Fork me on GitHub
            隨筆 - 215  文章 - 13  trackbacks - 0
            <2015年11月>
            25262728293031
            1234567
            891011121314
            15161718192021
            22232425262728
            293012345


            專注即時(shí)通訊及網(wǎng)游服務(wù)端編程
            ------------------------------------
            Openresty 官方模塊
            Openresty 標(biāo)準(zhǔn)模塊(Opm)
            Openresty 三方模塊
            ------------------------------------
            本博收藏大部分文章為轉(zhuǎn)載,并在文章開頭給出了原文出處,如有再轉(zhuǎn),敬請保留相關(guān)信息,這是大家對原創(chuàng)作者勞動(dòng)成果的自覺尊重!!如為您帶來不便,請于本博下留言,謝謝配合。

            常用鏈接

            留言簿(1)

            隨筆分類

            隨筆檔案

            相冊

            Awesome

            Blog

            Book

            GitHub

            Link

            搜索

            •  

            積分與排名

            • 積分 - 215445
            • 排名 - 118

            最新評論

            閱讀排行榜

            https://blog.csdn.net/qq_36389107/article/details/80404043

            1.安裝erlang 
            1).官網(wǎng)下載:官網(wǎng)下載 
            2).百度云盤下載:點(diǎn)擊下載 
            下載完成后,是一個(gè)exe文件,雙擊傻瓜式安裝即可 
            3).新建系統(tǒng)變量:變量名 ERLANG_HOME 變量值 D:\softInstall\erl8.3(Erlang安裝目錄) 
            4.添加到PATH:%ERLANG_HOME%\bin;

            2.安裝rabbitMQ 
            1).官網(wǎng)下載:官網(wǎng)下載 
            2).百度云盤:點(diǎn)擊下載 
            下載完成后,也是傻瓜式安裝即可

            3.安裝RabbitMQ-Plugins 
            進(jìn)入rabbitMQ的安裝目錄下的sbin目錄, 
            打開cmd,輸入:rabbitmq-plugins enable rabbitmq_management 
            打開瀏覽器:輸入:http://localhost:15672/

            1. 如果能打開登錄界面,直接輸入賬號密碼為guest,guest即可進(jìn)入管理頁面
            2. 打不開的話,進(jìn)入C:\Users\Administrator\AppData\Roaming\RabbitMQ\db目錄下,全選刪除即可。刪除不了的不管跳過即可。(是c盤用戶下的目錄位置。如果沒看見appdata,左上角點(diǎn)擊查看》》顯示隱藏的文件即可)
            3. 在點(diǎn)擊RabbitMQ.exe安裝即可。完成后就能打開web管理界面了

            視頻教程地址:點(diǎn)擊傳送

            RabbitMQ for Go

            接收和發(fā)送實(shí)例(下面是完整代碼):

            package main

            import (
                "fmt"
                "log"
                "bytes"
                "time"
                "github.com/streadway/amqp"
            )

            var conn *amqp.Connection
            var channel *amqp.Channel
            var count = 0

            const (
                queueName = "push.msg.q"
                exchange  = "t.msg.ex"
                mqurl ="amqp://shi:123@192.168.232.130:5672/test"
            )

            func main() {
                go func() {
                    for {
                        push()
                        time.Sleep(1 * time.Second)
                    }
                }()
                receive()
                fmt.Println("end")
                close()
            }

            func failOnErr(err error, msg string) {
                if err != nil {
                    log.Fatalf("%s:%s", msg, err)
                    panic(fmt.Sprintf("%s:%s", msg, err))
                }
            }

            func mqConnect() {
                var err error
                conn, err = amqp.Dial(mqurl)
                failOnErr(err, "failed to connect tp rabbitmq")

                channel, err = conn.Channel()
                failOnErr(err, "failed to open a channel")
            }

            func close() {
                channel.Close()
                conn.Close()
            }

            //連接rabbitmq server
            func push() {

                if channel == nil {
                    mqConnect()
                }
                msgContent := "hello world!"

                channel.Publish(exchange, queueName, falsefalse, amqp.Publishing{
                    ContentType: "text/plain",
                    Body:        []byte(msgContent),
                })
            }

            func receive() {
                if channel == nil {
                    mqConnect()
                }

                msgs, err := channel.Consume(queueName, "", truefalsefalsefalse, nil)
                failOnErr(err, "")

                forever := make(chan bool)

                go func() {
                    //fmt.Println(*msgs)
                    for d := range msgs {
                        s := BytesToString(&(d.Body))
                        count++
                        fmt.Printf("receve msg is :%s -- %d\n", *s, count)
                    }
                }()

                fmt.Printf(" [*] Waiting for messages. To exit press CTRL+C\n")
                <-forever
            }

            func BytesToString(b *[]byte) *string {
                s := bytes.NewBuffer(*b)
                r := s.String()
                return &r
            }


            posted on 2018-06-09 15:13 思月行云 閱讀(366) 評論(0)  編輯 收藏 引用 所屬分類: Golang分布式\MQ
            三级韩国一区久久二区综合 | 麻豆精品久久久一区二区| 中文字幕久久亚洲一区| 久久www免费人成看国产片| 国产精品美女久久久久AV福利| 国产精品对白刺激久久久| …久久精品99久久香蕉国产| 久久久国产乱子伦精品作者| 看久久久久久a级毛片| 久久精品国产久精国产思思| 久久99国产亚洲高清观看首页| 国产V综合V亚洲欧美久久| 久久久久久综合一区中文字幕| 91精品国产综合久久精品| 久久亚洲综合色一区二区三区| 99久久99久久精品国产片果冻| 国产免费久久精品99久久| 久久丝袜精品中文字幕| 久久精品免费一区二区| 久久AV高清无码| 精品久久久久久无码人妻热 | 国产精品99久久久精品无码| 久久综合精品国产二区无码| 久久精品国产精品青草app| 国产精品美女久久久网AV| 久久久亚洲裙底偷窥综合| 国产V亚洲V天堂无码久久久| 精品人妻伦一二三区久久| 精产国品久久一二三产区区别 | 国产精品久久影院| 久久久久国产精品嫩草影院| 99久久国产精品免费一区二区| 99久久人妻无码精品系列| 久久99国产精品成人欧美| 人妻无码αv中文字幕久久| 久久99热这里只有精品国产| 久久久久高潮综合影院| 国产亚洲精久久久久久无码AV| 中文字幕乱码人妻无码久久 | 精品久久人人妻人人做精品 | 嫩草影院久久国产精品|