نحن نحاول حاليًا تثبيت Discourse عبر مخططات Helm على Kubernetes في GCP، انظر هنا.
الآن، بما أنه يجب أن يغطي بيئة الإنتاج الخاصة بنا أيضًا، يجب ألا نفقد أي محتوى تم إحضاره إلى Discourse. بالطبع، سنستخدم قاعدة بيانات Postgresql مستضافة على GCP، لكننا لم نكن متأكدين مما إذا كنا بحاجة أيضًا إلى Redis مستضاف هنا.
في حال، لم يكن فقدان جميع البيانات في Redis يعني أن وظيفة Discourse تتأثر، على سبيل المثال، بفقدان البيانات المخزنة مؤقتًا فقط، فيمكننا حينئذٍ استخدام Redis في K8s. ومع ذلك، إذا كان لفقدان Redis آثار أثقل، فسنحتاج إلى Redis مستضاف.
سأختار خدمة مستضافة في GCP إذا كنت مكانك، بشرط أن توفر إصدارًا حديثًا بما فيه الكفاية من Redis ولا تتأخر كثيرًا. تقدم AWS أداءً رائعًا في مواكبة الإصدارات الجديدة، بينما يمكن أن تتأخر GCP / Azure أحيانًا.
فقدان قاعدة بيانات Redis (ما يعادل redis-cli flushall) هو شيء يمكن لتطبيق Discourse التعافي منه دون مشاكل كبيرة، ولكنك ستفقد بعض الأشياء، مثل رسائل البريد الإلكتروني التي كانت في قائمة انتظار، وما إلى ذلك. لذا، في حين أنه ليس شيئًا كارثيًا، إذا كان بإمكانك تجنبه دون الكثير من المتاعب، فسأوصي بذلك.