net/httpパッケージを使ったWebサーバー

f:id:daihase:20190809022658p:plain

こんにちは、daihaseです。

今日はGoを使った最も簡単なWebサーバーの構築を説明したいと思います。PHP, Java, Ruby... サーバーサイドを実装する言語は多くありますが、このGoを使ったWebサーバーの実装はその中でも最も簡単と言えるくらいです。

Goは非常に強力な言語で、標準パッケージだけでも十分Webサービスを作れてしまいます。今回はWebサーバーとして動かすためにその中の1つ、net/httpについて紹介したいと思います。

続きを読む

曜日や日付を簡単に取得するExtension

f:id:daihase:20190809100049p:plain

こんばんは、daihaseです。

1ヶ月ぶりくらいのブログです。今日は大好きなSwiftネタを久々に。 Dateを使った日付表示とかはツール系のアプリでもよく出てきますね。 その度に毎回 let dateFormatter = DateFormatter() なんて書いてたら微妙なんで、ここはDateクラスをExtensionで拡張してどこからでも曜日や日付を取得出来るようにしてみましょう。

続きを読む

Cannot allocate memory for the buffer pool でMySQLが落ちる

f:id:daihase:20190809100556p:plain

こんにちは、daihaseです。 先日、実は当ブログが一時的に接続出来ない状態となっていました。

直ぐに復旧はしましたが、原因はタイトルにもある「バッファプールへのメモリ割り当てが足りていない」というものでした。

当初このブログもAWSのt1.microで動かしており、その際swap領域も割り当てたのですが以前より今はアクセスも多くなってそれだと厳しかったようです。

実際MySQLのログを見てみると以下のようにエラーが出ていました。

続きを読む

docker: Error response from daemon: driver failed programming external connectivity on endpoint xxx (xxx):x Error starting userland proxy: Bind for 0.0.0.0:80: unexpected error (Failure EADDRINUSE). が出たら...

f:id:daihase:20190809101937p:plain

こんばんは、daihaseです。

はい、異様に長いタイトルですね。Dockerのエラーなんですが、最初にMacでコンテナを走らせようとすると1度くらいは遭遇するコレ。その解決方法をメモ。

続きを読む