بمجرد تثبيت المتطلبات: ./dev/setup.sh
./dev/startup.sh
لبدء كل شيء في وضع التطوير:
في المرة الأولى التي تقوم فيها بتشغيل ./dev/startup.sh
، سيقوم المنتج بنشر القنوات ضمن ./packages/producer/src/producer.ts
لملء قاعدة البيانات
افتراضيًا، في وضع التطوير، يتم تشغيل video-worker
باستخدام Pm2 بثلاث حالات. إنه يتجنب إرسال رسائل غير مرغوب فيها إلى سجلات التطوير مع جميع الخدمات الأخرى.
لتشغيل سجلات video-worker
pm2 monit
، ستتمكن من فحص كل مثيل.
يمكن العثور على كل خدمة ضمن ./packages
.
كل واحد له دور محدد.
يتم تشغيل قائد ElasticSearch وKibana وRedis وRedis باستخدام docker-compose
، راجع ./docker/dev.yaml
سيرسل المنتج قناة جديدة إلى قائمة انتظار قناة Redis .
lerna run --scope @findmytube/producer dev --stream
سيأخذ عامل القناة القناة من قائمة انتظار قناة Redis ثم سيجلب فيديو القناة لإرساله إلى قائمة انتظار Video Redus .
lerna run --scope @findmytube/channel-worker dev --stream
سيقوم عامل الفيديو بأخذ الفيديو من قائمة انتظار Video Redis ثم سيقوم بإلغاء كل نص لكل فيديو وحفظه في ElasticSearch.
lerna run --scope @findmytube/video-worker dev --stream
استبدل dev
start
في الحصول على مثيل واحد video-worker
والحصول على السجلات مباشرة من جهازك الطرفي بدون Pm2
إنها وظيفة cronjob (للإنتاج) لإجبار الخدمات الأخرى على حذف مقطع فيديو جديد لكل قناة محفوظة بالفعل.
lerna run --scope @findmytube/cron-channel-producer dev --stream