Image by David Bruyland from Pixabay
先日閉じてしまったサービスに毎日 ALISの記事を確認してコメント数の多い順に行うランキグンを行うものがあった。
ALISも閑散としてアクセスも悪くいいねもつかなくなってきたのでコストを鑑み一旦終了しました。ALISの評価システムをみているといいねをつかない記事を連出させるとだんだん厳しくなってくるのがわかりました。
システムはレガシーなLinuxのサーバーで動いていていました。特にコメントランキングに関してはコメントの全言葉を統計処理を行いアイキャッチを毎回生成しているため、まあまあのマシンパワーを必要とします。
残念ながら誰も注目しないものへの努力ほど悲しいものはありません。
そのサービスを止めALISを見ていたのですがどうも閑散としていながらどこにブーミングがきているのかわかりにくくなってきました。もちろんトップ記事にはあがってくるのですが、短期に変更されるんであまり把握できなくなっていました。
やはり自分でいうのもなんですが、コメントランキングは良かったと。自分用だけでも再開してみようかなと思いたちました。
実は閉鎖の少し前には移植完了していたのですが、レガシーなLinuxのシステムからサーバーレスの Google Functionsに移植を完了していたので、マシンの性能をよくしながらコストダウンを図ることができました。
おおよそ以前のLinuxサーバーだと月1000円くらいはらって安定して動くスペックのものが借りられます。
Cloud Functionsであれば月10円くらいでこの週間コメントランキングは運用することができそうです。
Cloud Functionsはプログラムが動いているときのみ課金されます。1週間に5分間だけまあまあのマシンを動かすことをします。つまり、0.05%の時間だけ動作させていることにになります。ということで動作時間が極端に小さいのでお安くあがるわけです。コストは1%にとどまるのでこの差額はGoogle様にお渡ししているわけですね。
もともとこのプログラムはPythonで書いていたのですが、Cloud Functinsのスケジュール機能がPythonに対応をしておらず、ずっと放置していたのですが、今回のために少し確認したところ問題なく動くことがわかり、移植した次第。
Pythonのコード移植ならではの、工夫があるのでもし興味がある方がいればどこかで執筆しようとおもっています。ネットではnodeの例は多いですが、Pythonの例は少ないので多少なりともお役に立てるかもしれません。
毎週月曜日の朝に更新をしていきます。復活第一弾の記事のリンクです。どの記事で議論が活発かわかりやすくこれは自分でも活用できてよかったなと思っています
毎週リリースしてきますのでぜひぜひみてくださいね。
では。