[chat example] How to simulate slow connection?
- 主要言語
- Go
- スター
- 5.5k
- フォーク
- 372
- PR マージ指標
- 30日以内にマージされた PR はありません
説明
I want to observe in what scenario `closeSlow` is called, How to simulate slow connection mentioned in [websocket/internal/examples/chat/chat.go](https://github.com/coder/websocket/blob/v1.8.14/internal/examples/chat/chat.go#L120-L127)?:
```
s := &subscriber{
msgs: make(chan []byte, cs.subscriberMessageBuffer),
closeSlow: func() {
mu.Lock()
defer mu.Unlock()
closed = true
if c != nil {
c.Close(websocket.StatusPolicyViolation, "connection too slow to keep up with messages")
}
},
}
```
コントリビューションガイド
このリポジトリのコントリビューションガイドは索引されていません
調査の方向性
internal/examples/chat/chat.go の120-127行付近から始め、chat例のsubscriberの動作を通じて closeSlow callback を追跡します。メッセージがsubscriberに届く仕組みを調べながらchat例を実行し、その後、低速接続の状態を再現可能な方法で発生させる手順と、期待される結果を文書化します。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- go
- 領域
- networking
- issue の種類
- ドキュメント
- 難易度
- 2/5
- 見積もり時間
- 1〜3時間
- 活発さ
- 停滞
- 明瞭さ
- 説明が足りない
- 初心者へのやさしさ
- 35/100