package main
import (
"flag"
"fmt"
"log"
"net/url"
"time"
"github.com/gorilla/websocket"
)
//根据自身情况修改服务器ip地址
var addr = flag.String("addr", "localhost:12345", "http service address")
func main() {
succCount := 0
failCount := 0
//建立1000个websocket连接请求某数据
for i := 1; i < 1000; i++ {
u := url.URL{Scheme: "wss", Host: *addr, Path: "/ws"}
log.Println(u.String())
conn, _, err := websocket.DefaultDialer.Dial(u.String(), nil)
if err != nil {
log.Println(err)
failCount++
fmt.Println("Number of dialing failures:", failCount)
fmt.Println("Number of dialing fail:", err)
time.Sleep(time.Second)
continue
}
defer conn.Close()
succCount++
fmt.Println("Number of successful connections:", succCount)
go Client(conn)
}
//Stop here to prevent
golang websocket压测示例
最新推荐文章于 2025-08-03 00:00:00 发布
本文将展示如何使用Golang进行WebSocket的性能压测,通过实例详细解析压测过程,帮助理解WebSocket在高并发场景下的行为表现。
订阅专栏 解锁全文
1179

被折叠的 条评论
为什么被折叠?



