ちゃんと動いているでしょうか!
#声日記
サマリー
今回のエピソードでは、フランケンPHPを使用してWebサーバーの高速化に挑戦し、Docker化の利点についても言及しています。従来のApacheからフランケンPHPに切り替えることで、性能向上を期待しながらサーバーの構成を見直しています。
フランケンPHPの導入
こんにちは、kondoです。今日は2月の17日、月曜日ですね。 もう午後になりました。
京都はまずまず、今のところいい天気です。 今日はね、ちょっと昨日ぐらいから、なんか風邪気味なのか、ゲホゲホと咳が出るので、
ちょっと家でね、作業をやってます。 はい、そしてこの録音は、ブラウザーから
マイクをさせてやっていますけれども、 ちょっとね、
リッスンのWebサーバーを、 完全に新しいサーバー、サーバーというか、Webサーバー
HTTPD、なんて言えばいいかな、Webサーバーのアプリが動く、 その下にあるサーバーのソフトですね、を入れ替えたので、ちょっと色々検証をしていまして、
本番環境のサーバーを入れ替えたので、本番環境の各種機能を使おうと思って、 録音をしています。
最近、ずっとね、インフラの強化、色々な部分をちょっと見直したりとか、
増強したりとか、よりモダンな新しいシステムに変えたりとか、
高速なものに変えたりとか、拡張したりとかですね、 ずっと本当にやっていて、そろそろ区切りかなって言いながら、結局までやってるんですけれども、
最近ですね、ちょっと専門的な話になりますけど、 Docker化の作業を結構進めています。
Dockerっていうのは何かと言いますと、今まではですね、普通にサーバーって言ってもLinuxっていうOSが動いていて、
普通のパソコンだったらMacとかWindowsとか、そういうOSが動いていると思いますけど、
その上にChromeを入れたりとか、Excelを入れたりとか、 Photoshopを入れたりとか、アプリをいろいろ入れるみたいな感じで、
サーバーもWebサーバーを入れたりとか、データベースを入れたりとか、色んなソフトウェアを入れて、それを組み合わせて動かしていくんですけれども、
これをどんどん手で順番に入れていると、なかなか再現のできない状態になっていく。
1つのサーバーを手でいろいろ入れてこしらえたとしても、それと同じサーバーをもう1個作ろうと思うと、
あれどうやって設定したっけなとか、何を入れたっけとか、あれ入れるの忘れてたみたいな感じで、
どんどんサーバーの状態っていうのが手で設定をしていくと、再現がしにくくなっていくっていうのは想像できると思います。
普通のパソコンでもそうですよね。
これを再現可能な、そして簡単に例えばもう1個サーバー作ろうと思ったら、すぐに立ち上げられたりとか増やしたりとかできるようにするっていうために、
最近よくDockerっていうのが使われていまして、
Dockerっていうのは何ていうか、OSの中にもう1個小さいOSを動かすみたいな感じで、
たまにMacの中でWindows動かしてる人とかいますけれども、
ああいうイメージで、そのLinuxの中にもう1個小さいLinuxを立ち上げて、
ただしその小さい方は単機能、例えばWebサーバーだったらWebサーバーだけとか、
データベースだったらデータベースだけとか、そういう単機能のものだけを動かして、
その設定は中をごちゃごちゃいじるんじゃなくて、立ち上げのときに使う設定ファイルにだけ書いておくみたいな、そういうものです。
合ってるかな。
これの何がいいかっていうと、一切中をいじれないんで、すべてやりたいことができるように、
外部の設定ファイルをいじっては立ち上げてみて、書いたいことがあったらもう1回落としてもう1回立ち上げ直してみたいな感じで、
満足のいく動きをするようにこしらえて立ち上げるまでは大変なんですけど、
1回それで安定して動くようになると、今度は簡単に同じサーバーの中に2個立ち上げるとかもできますし、
Apacheからの移行と検証
別のホスト、別のサーバーの中で立ち上げたりとか、引っ越しをしたりとか、数を増やしたりとか、
そういうことが簡単にできるということで、最近のWebの開発というか本番環境ではよく使われているものです。
ずっと手でサーバーに入っては1個1個インストールしてみたいなことを今までやってきたんで、
割と再現が難しい状態になっているものが結構多かったんで、
今後そちらもサービスの成長とかに耐えられるように1個1個の5種類のサービスをドッカーに入れて、
それがきちんと動くようにしていこうというのをやっています。
これだけだと今まで動いていたものがドッカーに入って動くというだけなので、
外から見ても何も変わらない、特に別に使っていただいている方には変化はないんですけど、
その流れの中でちょっとWebサーバーで今までよりももうちょっと早いものがないのかなというところで色々試していまして、
今まではApacheと言われる一番歴史があるかな、
昔の1990年代頃からありましたけど、そういうWebサーバーを使ってPHPのリッスンのコードを動かしていたんですけど、
最近のちょっとモダンなWebサーバーの実行環境というのがあって、それが早いというベンチマークとかを見つけたので、
ちょっとそれを使ってみようということで、今日はかなりそれのねったりこねたりして、
どうにかちゃんと速度が出ながらも安定して動くようなセッティングを探そうということで、
あれこれとやってようやく動いてきたという感じです。
現状ではもうApacheの部分がほぼなくて、このフランケンで今リッスンが動いていて、
さっきはねちょっと一部のリクエストだけをそちらに転送して、個人的にちょっと色々使ってみて検証してたんですけど、
ある程度動いていそうだなということで、今全面展開をちょうどしたところです。
どうでしょうね。個人的には結構速くなった。体感的にも速くなったかなと思うんですけど、いかがでしょうか。
速くて動作が全く同じならもちろんそういうのがいいんですけど、完全にそのWebサーバーのソフト自体が変わっているので、
もしかしたらちょっと何か今までと違う部分が出るかもしれないんで、できれば早めにそれを見つけて、もしあれば対応したいなと思います。
ということで、ちょっと録音したり公開したり、色々やってみてますけど、もし何か見つけられた方がいらっしゃったら教えてください。
早くなったなって感じていただいている方がもしいたら嬉しいです。
ちょっともう集中してやりすぎて席まで出始めて、若干寝不足で頑張りすぎたかなと思ってるんで、一区切りついたらもうちょっとゆっくりしようと思っています。
ではまずこの音声がきっちりとアップできるか試してみようと思います。
それにしてもフランケン面白いですよね。何でその名前を持ってきたかっていうね。
この公式サイトのフランケンPHPのサイトに行くとフランケンシュタインみたいな顔の像が立っていて、何かくるくるっと動いたりしているっていう非常にユーモアのある感じのプロジェクトページになっていて、
何でこっちの方向に行くかなっていうね。このテイスト面白いですよね。
オープンソースのプロジェクト、色々そういう癖のあるというか色のあるプロジェクトが多くて、なかなか作っている人たちがどんな人なんだろうなと思いながら、
何でこんなテイストしたのかなみたいなこともちょっと考えながら使うのも楽しいところです。
どうか安定して動いてくれますように。それでは収録終わります。さようなら。
09:01
このエピソードに言及しているエピソード
コメント
日々カイゼン、ありがとうございます!たしかにもっさり感がなくなった気がします! 前はApacheだったんですねぇ。最近はnginxとかWEBサーバーも新しいのが出てきているみたいですねぇ。しかも今回のは今流行りのGO言語ですかね?すごーい😄😄
さすがお詳しい! フロントはnginxを使っていますが、バックエンドのアプリサーバーはApache2を使っていました フランケン、めっちゃ速くて、好きになってしまいそうです😍
なるほど、PHPに特化したWebサーバーなんですねえ 確かにDockerを使ってコンテナ化するなら、それでいいんですもんねえ☺️ 先ほど、iPhoneでPodcastを聞いていて、下のプレイヤー部分から★をつけたんですが、これまでは★のボタンを押してから実際にその番組に★がつくまで少し時間がかかっていたのがなめらかに★がつくようになって、「おお、処理が速くなってる!」と実感しました🙌
かなり最近できたみたいで、少し前にようやく本番環境にも使えるレベルになってきたのかな、という感じでしたが、攻めてみました😄
スクロール