একাধিক সার্ভারের মাধ্যমে ভিডিও স্ট্রিম


0

আমি একটি অস্বাভাবিক সমস্যা আছে।

সার্ভার 1A উইচ ব্যবহারকারীদের সাথে যোগাযোগ একটি সার্ভার। সার্ভার 2B , 2C এবং 2D ভিডিও কন্টেন্ট সংরক্ষণ করুন।

একটি ওয়েবসাইটে, একটি এইচটিএমএল ভিডিও ট্যাগ স্থাপন করা হয়

<video src="server1adomain.com/videos?video=Gy12C899">

enter image description here

যখনই এই সামগ্রীটি আনা হয়, সার্ভার 1A এ একটি ব্যাকএন্ড স্ক্রিপ্ট কোন সার্ভারটি (2 বি, 2C বা 2D) সংরক্ষণ করা হয় এবং এটি সংগ্রহ করে তা নির্ধারণ করে। এটা 2 বি হয় বলে দিন। আমি পুরো ভিডিওটি 2 বি থেকে সংগ্রহ করা এবং 1A সার্ভারে সংরক্ষণ করার জন্য অপেক্ষা করতে চাই না, এবং শুধুমাত্র সেই সময়ই ব্যবহারকারীকে পাঠাতে হবে। পরিবর্তে, আমি 2 বি থেকে 1A এবং একই সাথে ব্যবহারকারীতে প্রবাহিত একটি ধারাবাহিক প্রবাহ চাই। এইভাবে ব্যবহারকারীটি সর্বনিম্ন বিলম্বের সাথে ভিডিওটির প্রথম ফ্রেম পায়।

এই সমস্যার জন্য আদর্শ সমাধান কি? আমি ইউটিউবে ভিডিওগুলির উত্স দেখেছি, এবং তারা সবাই একই ডোমেন থেকে আনা হচ্ছে বলে মনে হচ্ছে, তাই এই পদ্ধতিটি অবশ্যই সম্ভব।

উত্তর:


2

অনেক বা কম শিল্প মান যে একাধিক সমাধান আছে। আমি আপনার সমস্যা অন্যান্য hacky সমাধান devising বিরুদ্ধে সুপারিশ করবে।

প্রথম, বড় স্ট্রিমিং সাইট ব্যবহার করুন বিষয়বস্তু বিতরণ নেটওয়ার্ক (সিডিএন), যেখানে প্রকৃত সামগ্রী হোস্ট করা হয়। এই সার্ভারগুলি ওয়েব সার্ভারগুলির থেকে ভিন্ন (যা ওয়েব পৃষ্ঠা বা স্ক্রিপ্টগুলিকে হোস্ট করে) এবং স্বাধীনভাবে কাজ করে; তাদের প্রধান উদ্দেশ্য ভিডিও কন্টেন্ট হোস্ট এবং ব্যবহারকারীর অবস্থানের কাছাকাছি এটি সংরক্ষণ করা হয়। আপনার ওয়েব অ্যাপ্লিকেশন এর কাজটি ভিডিও উৎস লিঙ্কটি প্রতিস্থাপন করবে যা সার্ভার A কে নির্দেশ করে সরাসরি কনটেন্ট সার্ভারের সাথে লিঙ্ক- ব্যবহারকারীর কাছে যেকোনো কাছাকাছি, বা যেকোন দ্রুত সাড়া দিচ্ছে (একটি সাধারণ লোড-ভারসাম্য ক্ষেত্রে)। আপনার দ্বিতীয়-স্তর সার্ভারগুলির ক্ষেত্রে, আপনাকে তাদের উপর একটি ওয়েব সার্ভার সেট করা উচিত (Nginx এর মতো) এবং সরাসরি ভিডিওগুলিতে লিঙ্ক করুন।

মনে রাখবেন যে যখন আপনি আপনার ব্রাউজারের নেটওয়ার্ক অনুরোধগুলি YouTube এ যাচ্ছেন তা পরিদর্শন করেন, তখন তারা বিভিন্ন ডোমেন ব্যবহার করে। ভিডিও সামগ্রী প্রকৃত ওয়েবসাইটের তুলনায় সম্পূর্ণ ভিন্ন উৎস থেকে আসে-এটি সম্ভবত আপনার কাছাকাছি একটি সার্ভার যার সাথে আপনার আইএসপি সরাসরি পিয়ারিং সংযোগ রয়েছে।

আপনার ভিডিওগুলি যদি এমপি 4 ফাইল থাকে তবে নিশ্চিত করুন যে ফাইলটির শুরুতে তাদের MOOV পরমাণু রয়েছে। এটি স্টার্টআপ বিলম্ব হ্রাস করে, কারণ সমগ্র ফাইলটি এখনও প্রেরিত না হলেও ক্লায়েন্টটি বাজানো শুরু করতে পারে। Ffmpeg দিয়ে, আপনি যোগ করে এটি করতে পারেন -movflags +faststart এনকোডিং যখন বিকল্প (ব্যবহার ffmpeg -i input.mp4 -c copy -movflags +faststart output.mp4 শুধু একটি বিদ্যমান ফাইল ঠিক করতে)। অথবা ব্যবহার করুন qt-faststart প্রোগ্রাম (বা কিছু বাস্তবায়ন এটি একটি বিদ্যমান ফাইল)।

সর্বোত্তম বিকল্প ব্যবহার সঙ্গে সিডিএন পদ্ধতি যোগ করা হবে HTTP অভিযোজিত স্ট্রিমিং (DASH বা HLS)। এখানে, একটি সহজ HTML5 ভিডিও উত্সের পরিবর্তে এটি সম্ভবত একটি বড় ফাইল, আপনি ভিডিওর পৃথক অংশগুলি প্রবাহ করবেন। এই দ্রুত প্রারম্ভকালীন সময় এবং বিভিন্ন ক্লায়েন্ট ব্যান্ডউইথ এর ভাল পরিচালনার দিকে বাড়ে। তবে, এটি স্ক্র্যাচ থেকে সেট আপ করা আরো জটিল। অবশ্যই, বিক্রেতা, যা ড্যাশ-টাইপ স্ট্রীমিং সমাধানগুলি সরবরাহ করে যেখানে আপনাকে কেবল তাদের উৎস ভিডিও দিতে হবে এবং আপনি তাদের ওয়েবসাইটে আপনার প্লেয়ারটি বাস্তবায়ন করতে পারেন। তারা এনকোডিং এবং সিডিএন স্টাফ যত্ন নিতে হবে। কিছু উদাহরণ বিটমোভিন, এনকোডিং.কম, বা ওয়াওজা।


একটি পুঙ্খানুপুঙ্খ উত্তর জন্য ধন্যবাদ। সিডিএন বেশিরভাগ ক্ষেত্রেই যেতে পারে বলে মনে হচ্ছে। কেন আমি একটি অন্তর্বর্তী সার্ভারের মাধ্যমে স্ট্রিম করতে চাই সেটি হল স্টোরেজ সার্ভারগুলির অবস্থানগুলি লুকানো। আমি একটি প্রশ্ন & একটি পাওয়া যায় যে একটি সমাধান প্রস্তাব stackoverflow.com/questions/38417350/... , কিন্তু আমি সরাসরি ভিডিও ফাইল ডাউনলোড করতে সক্ষম ছিলাম। আমি সেটিং করার চেষ্টা করার সময় src পিএইচপি স্ক্রিপ্টে এইচটিএমএল ভিডিও ট্যাগের বৈশিষ্ট্য, আমি 400 টি ত্রুটি পেয়েছি। আপনি এই সমস্যার কোনো সমাধান সচেতন?
sanjihan

আহ, 400 ভুল আমার খারাপ ছিল। এটি এখন কাজ করে, কিন্তু আইডি ফাইল ডাউনলোড করার জন্য অপেক্ষা করে। Moov পরমাণু সঙ্গে এটি করতে হবে কিনা আমি পরিদর্শন করব
sanjihan

হ্যাঁ, q এবং একটি কোডটি আমার স্থানীয় কম্পিউটারগুলিতে সূক্ষ্ম কাজ বলে মনে হচ্ছে।
sanjihan

Moov পারমাণবিক হতে পারে, হ্যাঁ। আপনি যদি সত্যিই অবস্থানটি লুকাতে চান তবে পিএইচপি এর মাধ্যমে প্রক্সি করার বিকল্পটি কাজ করতে পারে, তবে আপনি একটি সার্ভারের মাধ্যমে সবকিছু ফেনা করছেন যা আদর্শ নয়, কর্মক্ষমতা অনুসারে।
slhck
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.