サーバー/インフラについて

ASP.NET Core がクロスプラットフォーム対応なので、今年(2016年)の3月下旬から、Ubuntu サーバーを使い始めました。現在は、Ubuntu サーバーを使うのに慣れてきて、Linux も好きになりました。

デスクトップ PC として使うのであれば、Windows の方がいいと思っていますが、サーバーとして使うのであれば、Linux サーバーが Windows よりも軽いところが気に入りました。ASP.NET Core を動かしてもメモリーの使用量は 100MB で済みます。Windows サーバーだと、400MB ぐらいは直ぐに消費します。また、再起動もずっと早いです。

それで、このサイトのサーバーに関する部分の構成を以下のように変更しました。なお、Windows PC をサーバーにしてしまうというのも手軽な方法なので今後も残す予定で、記事の方も更新していきます。

自宅サーバーの将来について

さくらのVPSだと、メモリー 1GBytes、SSD 30GBytes、CPU 2Coreのプランで月額972円です。普通の Web サーバーであれば、これで十分な場合が多いと思います。自宅サーバーの場合には、電気代でそれぐらいは必要になりそうです。それだったら、もう自宅サーバーなんか必要はないという意見が出そうです。

今後、自宅サーバーの方がコスト的に有利なケースとしては、CPUに高負荷かがかかる計算を継続的にしたい場合が該当すると思います。AWS の m4.xlarge は、メモリー16GB、CPU 4vCPU、13ECU で、年一括払で $1599 です。それぐらいの値段でその程度のサーバーは買えてしまうと思うし、少なくとも2年分あれば買えてしまいます。

自分の自宅サーバーは、現在は、コンソールアプリケーションを動かすバッチ専用機のようになっています。今後は、機械学習のソフトを動かせようと思っています。

自宅サーバーの使い方としては、以下のページが参考になると思います。クラウドでは割高になってしまうハイスペックサーバーを自宅側に任せるという考え方には賛成です。そのページでは、autossh を使っていますが、Nginx + ダイナミック DNS でリバースプロキシさせても問題ないです。

自宅サーバーか、クラウドか ― 開発/テスト機の採用基準と最適なミックス