سؤال

أنا جديدة إلى حد ما على حد سواء القضبان Heroku ولكن أنا أفكر بجدية في استخدامه كمنصة لنشر بلدي روبي/القضبان التطبيقات.

أريد أن استخدام كل قوة Heroku لذا يفضلون "جزءا لا يتجزأ" كيو تدار من قبل Heroku بدلا من الملحق Amazon RDS ل MySQL, لكنني لست واثقا من دون إمكانية الوصول إلى البيانات في SQL العميل...

وأنا أعلم أن في جعل التطبيق لديك لا تحتاج إلى الوصول إلى DB, ولكن هناك بعض الحالات (إضافة الصفوف إلى التكوين الجدول ، انظر البيانات لم يتم تعيينها في طريقة عرض أو تحديث بعض الأعمدة من أجل التصحيح القضايا رصد الأداء تشغيل الاستعلامات لإعداد التقارير ، الخ.) عندما يمكن أن تكون جيدة...

كيف يمكن حل هذه المشكلة ؟ ما لك تجربة في الحياة الحقيقية التطبيق مدعوم من Heroku?

وذلك بفضل!

هل كانت مفيدة؟

المحلول

ولقد تم استخدامه لمدة عام تقريبا. أنا أحب العمل التي توفرها ولكن أجد عدم وجود الوصول إلى البيانات عناء الحقيقي. الخيارات المتاحة أمامك للعمل مع قاعدة بيانات هي:

وصنابير: من الناحية النظرية إنشاء قاعدة البيانات الخاصة بك ولكن تريد محليا والصنابير استخدام لنسخ كل من المخطط والبيانات إلى Heroku. في الواقع، معظم وقته كبيرة بشكل مثير للدهشة. ومع ذلك أتعامل حاليا مع تنظيف بعد ترجمتها الصنابير بعض الأعمدة بلدي سيئة وتلف البيانات الخاصة بي.

وحدة Heroku: تماما غرامة لجميع الاشياء أكتيفيريكورد المعتاد، ولكن الأقرب يمكنك الحصول على قاعدة البيانات هو أكتيفيريكورد :: Base.connection.execute "بعض SQL". عندما تجد نفسك متسائلا عن القيام أوامر الجدول تغيير من هذا القبيل سوف تعرف أنك في ورطة.

وكما أنها توفر "حزمة" كوسيلة من أجل النسخ الاحتياطي التطبيق الخاص بك. هذا يتيح لك تحميل كافة التعليمات البرمجية الخاصة بك بالإضافة إلى تفريغ مزود قاعدة البيانات. وتكمن الصعوبة في أن أنه ليس هناك أي الوصول إلى قاعدة البيانات مباشرة هناك أي وسيلة لتحميل نفس مزود تفريغ مرة أخرى إلى قاعدة البيانات بحيث يمكنك التعافي من dataloss، الذي، بالنسبة لي، هي الفائدة من وجود هذه الملفات تفريغ لتبدأ. كل ما يمكن استخدام حزمة لهو خلق طلب جديد (heroku حزم: الأرواح)، وليس استعادة التطبيق الحالي.

وأنا أحب أن أكون مخطئا عن أي / كل من هذه. هذا يبدو وكأنه نقطة شائكة غريبة في أفضل مدروسة الخدمة التي أعرف. الوصول إلى قاعدة البيانات عادة لا يشعر يشبه إلى حد كبير للتخلي عند معظم ما عليك القيام به هو جعل من السهل جدا.

للي الوصول إلى قاعدة البيانات مثل طفاية حريق. عادة ليست كبيرة، ولكن عندما يهم ذلك، فإنه مسائل كثيرة.

نصائح أخرى

admin_data لتعطيني بعض الضوء على ما يجري. لقد استعملت بنجاح على Heroku، فضلا عن غيرها من مقدمي خدمات استضافة.

أولا اسمحوا لي أن ابدأ بالقول أن heroku رائع.لقد كانت تجربة رائعة نشر طلبي و تكامل مع خدمات أخرى مثل websolr.

وقال مع ذلك, على أسئلتك:

الحصول على البيانات الخاصة بك

إذا كنت تريد أن تكون قادرة على الحصول على البيانات الخاصة بك يمكنك استخدام الصنابير سحب جهاز التحكم عن بعد قاعدة البيانات محليا.هذا يمكن أن يكون مفيدا من أجل التصحيح.

رصد الأداء

استخدام بقايا دورة في الدقيقة.هذا يأتي كجزء من heroku ، يمكنك تمكين ذلك من قائمة الإضافات.

Add-hoc استعلامات قاعدة البيانات

يمكن أن تكتب تحكم والذي يسمح لك لتنفيذ التعسفي sql و عرض النتائج, ولكن هذا ليس شيئا أود أن أوصى.كما تشير إلى admin_data هو حل جيد لإدارة البيانات الخاصة بك, ولكن إذا كنت تريد أن تفعل أي شيء أكثر تعقيدا سوف تضطر إلى اللجوء إلى كتابة رمز نفسك.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top