私は、約 5GB の RAM を必要とする Python プロセスを実行しています。これは、ラップトップで毎日約 5 分かかります。しかし、今はプロセスを自動化してサーバーで実行したいと考えています (より信頼性を高めるため)。調べてみると、この作業を実行できる VPS があることがわかりました。リソースが必要なのは毎日 5 分だけなので、VPS 全体をサブスクライブする必要があるかどうかはよくわかりません。タスクを実行する他の方法はありますか? AWS Lambda などでしょうか? (確認したところ、Lambda で使用できる RAM は約 1GB のみでした)
答え1
利用率が低い場合、VPSは間違いなく過剰です。サーバーオペレーターと交渉できるかもしれません。ローエンドトークまたは次のようなものを使用するAWS EC2のスポットインスタンスまたはオンデマンドインスタンス(具体的な要件に応じて)またはマイクロソフトアジュールEC2とAzureは時間/分単位で支払います。Microsoftが私の会社に大量の無料クレジットを提供しているため(スポンサーの宣伝は必須です!)、EC2インスタンスを起動していないので、どれほど簡単かはわかりません(ただし、使い方は簡単です。使用済み以前は EC2 インスタンスを使用していました。VirtualBox のプロビジョニング システムに慣れていた私にとって、Azure のプロビジョニング システムは少し複雑でしたが、それほど難しくはありませんでした。
5GB の RAM を搭載した標準的な Azure VM の料金は 1 時間あたり 28 セントです (分単位で課金されます)。つまり、1 日あたり 5 分の使用で年間約 30 ドル、さらにストレージ (永続ストレージが必要と想定) と初期設定に少し追加費用がかかります。つまり、年間 40 ドルくらいです。必要な場合は、Windows ライセンスが付属します。
EC2 のあらゆる問題に精通しているわけではありませんが、Windows が必要ない場合、8 GB の RAM と 2 つのコアのオンデマンド料金は 9 セント/時間です (Windows が必要な場合は、1 時間あたり数セント高くなります)。ストレージをあまり必要としない場合は、このほうがずっと安いと思います。また、1 日 5 分で消費する帯域幅はそれほど多くないと思われます。したがって、ジョブを 1 日 5 分で実行する必要がある場合、これはおそらく年間約 120 ドルになります (Azure の時間単位の課金から切り上げ) (または、タイミングに柔軟性がある場合は、スポット インスタンス料金を使用するとその半分以下になります)。
答え2
古くて安い PC を買ってみたらどうですか? 私は 10 ドルで古い PC を購入し、10 TB 相当のストレージを詰め込んで、ファイル サーバーとして Linux をインストールしました。実行するのが Python コマンドだけなら、大金を費やす必要はありません。