まあ、前から考えていたことではあったのだけど、webサーバの構築を一から勉強しようと思った。のでブログに書いておく。
いやー、何か食べた系以外でブログ書くのいつ以来だろ。2010年のワールドカップの時以来かな(笑)
レンタルサーバを借りて作成・運営しているサイトがいい加減重い(このブログも動いてる)し、書いてあるプログラムも5年物でいい加減メンテするのイヤになるくらいクソコードだから、一から作り直そう。ついでにレンサバみたいな吊るしの環境じゃなくて自分で構築しようかって思ったのが去年の暮れくらい。
その時にさくらVPS(512MBプラン)を1個借りていろいろ弄ってみてたけど、なかなかうまくいかないしモチベーションも上がらないうちに半年くらい経ってしまった。もったいない。その間にさくらVPSのプランが変更になって(中略)な事態になってるけど、1年分一括払いしたから(キャッシュバックあったとはいえ)切り替えるのにも躊躇したりして。
そんなこんなでダラダラやるんだかやらないんだかってなってるのも本当もったいないし、ケツに火を点けてしまおうってことでこうやって宣言するわけですね。
今のところ考えている構成は以下の通り。
- CentOS6.2 on さくらVPS(とりあえず今借りてるVPS)
- Nginx+Unicorn(最近の王道パターンらしいw現在はフロントPHPバックPerl+Rubyという構成を全部Rubyで書き直す気)
- Ruby on Rails(生Rackでもいいけど折角なので勉強する)
- MySQL(ここは今も使ってる)
- memcached or Redis(レンサバだと使えないキャッシュを使うw)
- groonga(全文検索とか位置情報検索とか使い込む)
- mongoDB(可変サイズになるユーザー情報(サイト内行動履歴とか)を保存するのにいいかなー(よくわかってない))
- fluentd(アクセスログを手軽に集約しておきたいじゃん?(よくわかってない))
- RSpec+Cucumber(テストも書くよ)
以上。サーバ構築の先の部分も書いちゃってるような気がしますが(Rubyなのは個人的な趣味の問題)それはおいといて、普通にRails使う王道or最近の流行な構成から大外ししてないと思います。多分(あんまりマイナーなのを選ぶと資料が見つからなくて困る)。もっとここはコレ使ったほうが良くね?のがありましたらご意見ください。多分僕が知らないだけなので助かります。
そんなわけで、今まで既に環境が用意されてるところでしかwebのプログラムを書いてこなかった故、サーバ構築についてサッパリわかってないので、今後学習シリーズということで調べたことやったことをメモしていったり、こんな風にしてみたけどどうよ?って感じで書いていこうと思います。
本当にこのシリーズは一からやろうと思うので、最初はさくらインターネットの社長ブログにリンク貼ったり、そういうところからやります。ネットに散らばるナレッジを自分なりに再構成して、自分の学習が進めばいいと思います。自分のところにあると忘れたときにも思い出しやすいしw
まあなるべく早く学習してRamenBuzzリニューアル版をリリースしたいところ。やりたいけどサーバが重くて諦めてたことはいっぱいあるのですよ。