こんにちは。私はSergey Kamardin(セルゲイ・カマルディン)です。Mail.Ru(ロシアの電子メールサービス会社)で開発者をしています。 この記事では、どのように私がGoを使って高負荷対応のWebSocketサーバを開発したかについて説明したいと思っています。 パフォーマンス最適化のアイデアやテクニックを通じて、WebSocketの知識はあるもののGoについてはほとんど知らないという方のお役に立てれば幸いです。 1. はじめに まずは開発に至った経緯について、どうして私たちがこのサーバを必要としたのかを説明しておきましょう。 Mail.Ruには多くのステートフルなシステムがあります。ユーザのeメール保存もその1つです。システム内、およびシステムイベントの状態変更を追跡する方法にはいくつかの種類がありますが、それらは主に状態変更に関するシステム通知、または周期的なシステムのポーリ

1日1個golang のクイズを出す @DailyGolangQuiz というtwitter アカウントを見つけたので既存の質問に答えてみた。 Do you know length of the smile in #golang? package main import ."fmt" func main() { Println(len("😄")) } — DailyGolangQuiz (@dailygolangquiz) September 21, 2015golang の string は len でバイト列数が返ります。スマイル絵文字は 4 バイトです。 Why this code prints 1? #golang package main import . "fmt" func main() { s := 0 for i := range []int{1, 2} { s

1リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く