11.Renderじゃダメだ…
追記:KeyValueStoreでもよさそう
RedisはKeyValueStoreの1種です
Redisはデータ永続化ができて、KeyValueStoreはできないものもあります
永続化するとデータがディスクに保存されますが、できないとサービスが終了した瞬間にDBのデータが消えます
バックグラウンド処理ができない
Youtubeの動画をyt_dlpでダウンロードするDjangoのサイトをつくったので、Renderにデプロイしてみました
【https://django-render-1qvh.onrender.com】
動きません…
動画のダウンロードのようなバックグラウンド処理は非常に長い時間がかかるので、途中でWORK TIMEOUTとなり、強制的に処理が中断されてしまうようです
(これはRenderに限らず大抵のサーバーで起こるようです)
これを回避するためにPythonではCeleryとRedisというオープンソースを使うのですが、Renderはたいおうしていません
正確に言うと2024年になってRedisがなくなり、KeyValueというやつにかわってしまいました(KeyValueはRedisの代わりにはならないそうです)
HerokuもしくはAWSならできるようです(By ChatGPT)
ストレージがない
Renderには安いストレージがないので、VercelみたいにSupabaseのような外部ストレージを必要とします
どんなサイトがRender向きなのか
バックグラウンド処理がなく、ストレージも特に必要としないちんけなサイト
参考
Djangoで非同期処理を実装する方法(Celery、Redis)
BACK