whileD'iary

日記とか

Goでnet/httpを使わずに雰囲気でechoしてみる

本記事について

このアドベントカレンダーの2日目の記事です。

adventar.org

まだ寝てないので、寝るまでが今日理論でいくとセーフです。

概要

当日まで何も決まっておらず、「あああああヤバイ!!」みたいな感じだったのですが、寿司を食べて元気を出したところでなんとなーくやってみるかって感じでプロセス間通信をやってみました。

それで実装にあたって下記の記事を参考にとりあえず調べてました。プロセス間通信と聞いて、自分が思ってたのはマップドメモリーだったのですが、めちゃめちゃ種類があってビビりました。

qiita.com

で、見てるとソケット通信ってのがあってめっちゃwebサーバーっぽかったのでそれをやってみました。

実装

他ブログやQiitaの記事などいろいろ参考にさせていただき、雰囲気で書きました。

f:id:whileD:20171203043955g:plain

やってることはポート指定してそこで待機し続けて、入力が来たらその入力を返すしかやってないので、多分説明することもないです。

所感

なんとなーくwebフレームワークとかの実装ってこうなってんのかな、とか思いました。フレームワークの読んだこと無いので雰囲気でですが。

あとはチラっとserver.goとかのソース読んだりしたり、普段書かないようなコードやライブラリとか使ってやる部分を見ると全然知識足りてないことを認識できるので、やる気が上がっていい感じでした。

次は誰がアドベントカレンダーの記事を書くかわかりませんが楽しみにしておきます。(適当な記事書いてすいません)

参考にした記事

net - The Go Programming Language

【Golang】Socket通信するプログラムを書いてみた - くどはむと猫の窓

ソケット通信 - はじめてのGo言語

Socketプログラミング · Build web application with Golang