
プライベートで開発しているプロダクト用の技術調査。 とりあえず簡単に、受け取ったメッセージをそのまま返すサーバを実装した。 github.com docker-compose up して client/index.html をブラウザで開くと、開発者コンソールから「Message from server echo {"msg":"hello world!"}」の出力が確認できる。 Golang の実装部分は下記の Qiita 記事をそのまま参考にしたので、解説はそちらを参照のこと。 Go 言語で Websocket を使ったアプリケーションをつくる 余談 *-test ってリポジトリ名がなんだか微妙な感じがした。 practice とか、 training とかがいいのかな? 2018-06-09 追記 あまりよく確認していなかったが trevex/golem は長らく更新のないプロジェク
もともと数ヶ月前から、Go言語によるWebアプリケーション開発 を読みながら Go での Webアプリケーション開発の勉強をしていた。 Go言語によるWebアプリケーション開発 作者:Mat RyerオライリージャパンAmazon 「実際に動くもの」を、「手を動かして作りながら学ぶ」のが僕は好きで、今回も同様、それを楽しんでやっていたのだけど、思いの外それっぽいものができあがってしまって。これをそのままローカルで動かすだけじゃおもしろくないな、もったいないな、と思ったので、それをサービス化して公開するところまでやってみた。 かんじんのアプリケーションは↓これ。Yukizuri と書いて「ゆきずり」と読む。 https://yukizuri.moshimo.worksyukizuri.moshimo.works ログインもない、ログも残らない、そんな「ゆきずり」の会話を楽しむチャットサービス
こんにちは。私はSergey Kamardin(セルゲイ・カマルディン)です。Mail.Ru(ロシアの電子メールサービス会社)で開発者をしています。 この記事では、どのように私がGoを使って高負荷対応のWebSocketサーバを開発したかについて説明したいと思っています。 パフォーマンス最適化のアイデアやテクニックを通じて、WebSocketの知識はあるもののGoについてはほとんど知らないという方のお役に立てれば幸いです。 1. はじめに まずは開発に至った経緯について、どうして私たちがこのサーバを必要としたのかを説明しておきましょう。 Mail.Ruには多くのステートフルなシステムがあります。ユーザのeメール保存もその1つです。システム内、およびシステムイベントの状態変更を追跡する方法にはいくつかの種類がありますが、それらは主に状態変更に関するシステム通知、または周期的なシステムのポーリ
By Sergey Kamardin Hi everyone! My name is Sergey Kamardin and I’m a developer at Mail.Ru. This article is about how we developed the high-load WebSocket server with Go. If you are familiar with WebSockets, but know little about Go, I hope you will still find this article interesting in terms of ideas and techniques for performance optimization. 1. Introduction To define the context of our story,
package main import ( "code.google.com/p/go.net/websocket" "io" "net/http" ) func echoHandler(ws *websocket.Conn) { io.Copy(ws, ws) } func main() { http.Handle("/echo", websocket.Handler(echoHandler)) http.Handle("/", http.FileServer(http.Dir("./"))) if err := http.ListenAndServe(":9999", nil); err != nil { panic("ListenAndServe: " + err.Error()) } } <html> <head> <title>websocket sample</title> <
2. 概要 中学生が見たウェブソケット ウェブソケットちょー簡単じゃんw § ¦ § ¤ var ws = new WebSocket ( "ws://localhost:8080/echo" ) ; ws . onmessage = f u n c t i o n ( e ) { console . log ( e . data ) ; }; ¥ ¤ var WebSocketServer = r e q u i r e ( 'ws' ) . Server , wss = new WebSocketServer ( { port : 8080}) ; wss . on ( 'connection' , f u n c t i o n ( ws ) { ws . on ( 'message' , f u n c t i o n ( message ) { console . log ( '
Golang の勉強がてらちょっとしたツールを作ろうと思って、まず websocket サーバーを書いてみた。 書いてみたと言っても go の websocket chat は golang-samples/websocket · GitHub ここにサンプルがあって、これをそのまま使っても良かったのだけれどいくつか気になったのでよりシンプルに書き直してみた。 hatz48/go-websocket-sample · GitHub 気になったのは二つあって、一個は client id が競合しそうに見えた点。 https://github.com/golang-samples/websocket/blob/master/websocket-chat/src/chat/client.go#L35 ここで maxId をインクリメントしている. この NewClient 関数は https:/
EngineeringHijacking Amazon EventBridge for launching Cross-A...Securing the invisible paths: How cross-account event flows can become security ... Data ScienceRevamping Data Science InterviewsInterviews are not just about improving hiring outcomes - they are about strengt... EngineeringRoBERTa Model for Merchant Categorization at Squar...Harnessing Large Language Models to Deliver Accurate Busine
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く