WebSocket:golang chat
メーリークリスマス!
と、言う事で(笑)WebSocketのchatを色々と実装。
って言っても切り貼りでベースは、WebSocketでChatを作ってみた。
http://kumama.org/chat/メッセージをDBに書いてたりWSサポートしてないブラウザでも一応掲示板として動いたりといった実装を追加。
で実際に動かしています。
# 止めました
HTML5の規格ではあるもののWebSocketは、
現状Chrome β(release 4.0.249.0から)でしかサポートされていないので、
βを入れるかChromiumのdaily buildを突っ込まないとWebSocketのお試しには成りません。
ブラウザを2つ立ち上げて片方で書き込んだメッセージがもう片方に届くさまを見てください。
メッセンジャーとかも作れそうな感じ有ってFlashとかAdobe Air使うよりは全然まともな気がします。
コードは以下に。
template使ったりsqlite使ったり色々やってみるとgo言語の理解が進む感じ。
書いていて「をを!」って思った事は小ネタ集として明日にでもまた書きます。
あー、sqliteは微妙に下記の方がいい感じだったので前に紹介したのは使ってなかったりw
http://github.com/phf/go-sqlite3
http://github.com/phf/go-db
cgo経由でのCライブラリの呼び出しは色々疑問も有るものの、現状DBが無いので仕方なし。っていうか、presistent storegeが欲しいって事かなぁ。
嗚呼、golangもreleaseブランチじゃなくてdefaultブランチじゃないとだめですよ。
golangでスライスには代入出来ない…
多分、参照だからって理由だと思うけど、
スライスの要素には代入できるけど、スライスのコピーができないのは…。
確かに要素数違い場合とか元配列の方の残り要素で移動が必要になるけど、
要素数が同じ場合ぐらいは代入させて欲しい。
多分、いろんなところで copySlice って関数が出来てる気がする。
# defaultブランチ追いかけてる人の間では WebSocket っていうのが話題に
Add WebSocket server framework hooked into http.
WebSocketでChatを作ってみた
今はclient側のコードでProxy対応は入ってないけど…。
httpだけじゃなく https で CONNECT して、Proxyのタイムアウトごまかすために noop して…とかそのうち進化していくんだろうなぁ。
0xdroid with FullHD HDMI
Kernel command line: console=ttyS2,115200n8 init=/init omapdss.def_disp=dvi omapfb.mode=dvi:1920x1080MR-24@60 omapfb.vram=0:8M,1:3M,2:3M vram=14M root=ubi0:rootfs ubi.mtd=4 rw rootfstype=ubifs
新しいサイト作ると・・・
ページランクの低さにがっくり。
PVの低さにさらにがっくり。
ちょろっとSEO対策して、後はエントリ続けて頑張るしか無いかぁ。
まー、まだまだgoネタだけでトラフィック稼ぐのも難しいと言うことで。