個人開発日記01(カナダ ワーホリ情報全部集めてみた) / 使う技術->Flask デプロイ先->Heroku
個人開発仮タイトル
"カナダ ワーホリ情報全部集めてみた"
なぜこれを作る?
"カナダ ワーホリ"について調べるときに、Note, Twitter, IG, Youtube色々なサイトへ行かず、一箇所に全部まとめてみたサイトを作ったら、楽そうだと思った。そして、一度ユーザーがこのサイトを認知すれば、情報収集のために何回も訪れてくれそう。
自分がカナダへワーホリに行くので、作るモチベーションがあった。
*個人開発で一円でもいいから稼いでみたい(収益は今のところ広告)
- もしエンジニアに就職するとなったら、ポートフォリオになるから。
使う技術
これから長い間運用して行くつもりなので、スクレイピング以外にも、他のデータ解析がやりたいと思うことがあるかもしれない。そんなときになんでもできるPythonだったら、スケールできそう。
あと他の言語に比べて情報量が多い。。 ってことは、情報量的にFlaskかDjango。 Django/フルスタックフレームワーク 大規模開発に向いている。なんでも揃ってる Flask/マイクロフレームワーク シンプル、軽量、覚えやすい
↓Flaskでいこう。
デプロイ
heroku。(というか無料でやりたいから、選択肢がそれしかない。) VueとかでSPAしてNetlifyだと速いんだろうけど、構成が複雑になったりして、途中で挫折しそうだからFlaskのみでHerokuデプロイ。
Heroku速くする方法(キーワード: キャッシュ, Fastly, CloudFlare)
こういうように、キャッシュを入れると半分くらい早くなる。
Heroku US リージョンは遅いが Fastly を入れるとキャッシュしなくても少し速くなる | Basicinc Enjoy Hacking!
しかし、最近はすべてのリクエストをCDNサービス経由でキャッシュするケースが増えてきたため状況が変わってきた。CDNは全世界にキャッシュサーバーを配置し、アクセスされた場所に一番近いサーバーが応答してコンテンツを返す。これにより、「光遅すぎ問題」が解決され、高速に通信ができる。
実際、爆速だと話題になった dev.to も動的コンテンツのキャッシュにCDNサービスのFastlyを採用し、オリジンはHerokuを使っている。Herokuでも充分に爆速になっているわけである。
ただ、更新系のアプリはどうなんだろうか。。。キャッシュとか関係なさそうじゃん。
私が実施する Heroku x Rails の高速化をまとめてみた - ボクココ
続く