B2C · Xtream · Reseller





पुरालेख संग्रहण स्तर
500+ समवर्ती ग्राहकों के लिए त्रि-स्तरीय संग्रह प्रणाली।
एनकोडर
बफ़र लिखें
2h हॉट विंडो (NVMe या tmpfs)
→ दर्पण (निरंतर)
एचडीडी RAID 5
50 टीबी, 14 दिन प्रतिधारण
→ मांग पर प्रीफ़ेच करें
प्लेबैक कैश
1 टीबी वार्म कैश, 500+ क्लाइंट
ग्राहकों
मिरर_मिन_एज_मिनट से पुराने सेगमेंट को लगातार RAID में कॉपी किया जाता है।
टीयर
उद्देश्य
सेटिंग्स
बफ़र लिखें
24/7 सेगमेंट प्राप्त करता है, तेजी से हालिया-रिवाइंड प्लेबैक के लिए 2 घंटे की हॉट विंडो रखता है, RAID को यादृच्छिक IO से बचाता है।
डिवाइस_पाथ (ब्लॉक डिवाइस या 'tmpfs'), tmpfs_size_pct (tmpfs होने पर 10-50% मेम उपलब्ध), मिरर_मिन_एज_मिनट्स, evict_age_मिनट्स, फ्लश_थ्रेसहोल्ड_परसेंट (फोर्स फ्लश ट्रिगर)
एचडीडी RAID पुरालेख
पूर्ण प्रतिधारण के लिए लंबी-पूंछ भंडारण (डिफ़ॉल्ट 14 दिन)।
अवधारण_दिन, RAID_डिवाइस, nginx_स्थान, न्यूनतम_मुक्त_प्रतिशत
प्लेबैक कैश (वैकल्पिक)
2 घंटे से अधिक पुरानी लोकप्रिय फ़ाइलों के लिए रीड-साइड कैश (जैसे ईपीजी कैच-अप)।
प्रीफ़ेच_घंटे, अधिकतम_सत्र, निष्कासन_नीति (सत्र/एलआरयू/फीफो)
लाइव राइट्स × 2h = राइट_बफर हॉट विंडो साइज।
Stream.dvr_file_path/2 जांच क्रम में write_buffer → playback_cache → संग्रह करती है।
प्रत्येक स्तर भौतिक ब्लॉक डिवाइस के बजाय RAM-समर्थित tmpfs वर्चुअल डिस्क का उपयोग कर सकता है।
आवंटन को मेमअवेलेबल (/proc/meminfo से) के प्रतिशत के रूप में निर्दिष्ट किया गया है - चरण 10, वैध मान 10/20/30/40/50।
यदि परिकलित लक्ष्य वर्तमान मेमउपलब्ध के 60% से अधिक होगा, तो माउंट अस्वीकार कर दिया जाता है और स्तर ऑफ़लाइन रहता है (Stream.archive_path अगले स्वस्थ स्तर पर आ जाता है)।
tmpfs RAM में रहता है - होस्ट रीबूट होने पर कोई भी इन-फ़्लाइट बफ़र सामग्री खो जाती है।
राइट_बफ़र के लिए tmpfs का उपयोग करें जब: (ए) डेव/टेस्ट बॉक्स में कोई अतिरिक्त एनवीएमई नहीं है लेकिन आप अभी भी एकीकरण परीक्षण के लिए पूर्ण डीवीआर पाइपलाइन चलाना चाहते हैं, (बी) ऑपरेटर एनवीएमई को पहले से खरीदे बिना मिरर + आर्काइव व्यवहार को मान्य करना चाहता है, (सी) अल्पकालिक परीक्षण जहां रिबूट पर नुकसान स्वीकार्य है।
जब लेखन स्तर tmpfs होता है, तो स्टोरेजटियरफ्लश सख्त डिफ़ॉल्ट का उपयोग करता है - मिरर_मिन_एज 2 मिनट, इविक्ट_एज 15 मिनट (भौतिक एनवीएमई के लिए 5 मिनट / 120 मिनट)।
टियर को कॉन्फिग> स्टोरेज> स्टोरेज टियर के माध्यम से एक बार कॉन्फ़िगर किया जाता है और स्वचालित रूप से प्रावधान किया जाता है - होस्ट पर कोई मैन्युअल mkfs/माउंट/fstab संपादन नहीं होता है।
पहले बूट पर (डीबी में कोई राइट टियर नहीं), सिस्टम 30% मेमअवेलेबल एलोकेशन, माउंट पॉइंट /mnt/nvme_write के साथ एक tmpfs-समर्थित राइट टियर बनाता है।
Stream.archive_path/1 पहला 'स्वस्थ' स्तर लौटाता है - यदि सुरक्षा तल के ऊपर + लिखने योग्य + free_pct माउंट किया गया है तो write_buffer, अन्यथा संग्रह (अपमानित मोड) पर वापस आ जाता है।
यूआई में tmpfs_size_pct बदलने से सेव पर नए आकार के साथ umount + remount ट्रिगर होता है।
बेस यूआरएल - ओएसटीवी प्लेयर
पैकेज फ़ील्ड
पैकेज एपीआई
पासवर्ड नीति
पुनर्विक्रेता एपीआई
सेटिंग्स
उपयोगकर्ता फ़ील्ड
प्रयोक्ता प्रबंधन
बेस यूआरएल - ओएसटीवी प्लेयर
ओएसटीवी प्लेयर एप्लिकेशन उपयोगकर्ताओं को सर्वर बेस यूआरएल (एपीआई पता) बदलने की अनुमति देता है।
कारण: आधार यूआरएल बदलना केवल प्रशासकों/रूट उपयोगकर्ताओं के लिए है ताकि वे सर्वर के बीच स्विच कर सकें (उदाहरण के लिए उत्पादन बनाम परीक्षण)।
उपयोगकर्ता फ़ील्ड
पैकेज एपीआई
कीमतों और बिलिंग अवधि के साथ सभी सक्रिय पैकेजों की सूची लौटाता है।
प्रबंधन उपयोगकर्ताओं (पुनर्विक्रेता/प्रदाता) की सूची।
किसी विशिष्ट प्रबंधन उपयोगकर्ता के लिए क्रेडिट शेष लौटाता है।
पैकेज फ़ील्ड
पुनर्विक्रेता एपीआई
पुनर्विक्रेताओं/प्रदाताओं के लिए एपीआई।
पासवर्ड नीति
सब्सक्राइबर बनाते समय पासवर्ड की आवश्यकता होती है।
न्यूनतम 8 अक्षर
कम से कम 1 बड़ा अक्षर (A-Z)
कम से कम 1 विशेष वर्ण (!@#$%^&* आदि)
यूआई और एपीआई पर लागू होता है।
सेटिंग्स
टियर ऑटो-प्रावधान एवं सुरक्षा
क्षमता + फाइल सिस्टम ऑटो-डिटेक्शन: जब ड्रॉपडाउन से एक मुफ्त एनवीएमई का चयन किया जाता है, तो क्षमता (जीबी) को lsblk -bn -o SIZE से पढ़ा जाता है और वर्तमान एफएस को blkid (संपूर्ण-डिस्क फ़ॉलबैक के साथ) से पढ़ा जाता है।
टियर फ्लश तंत्र - सतत दर्पण
स्टोरेजटियरफ्लश जेनसर्वर हर 60 के दशक में चलता है।
निरंतर दर्पण क्यों धड़कता है "60 मिनट प्रतीक्षा करें, बैच-मूव": (1) RAID लोड सम है - घंटे की सीमा पर 5GB नहीं फटता, केवल 7MB सेगमेंट का ट्रिकल;
प्रगति खंड सुरक्षा: मिरर केवल खोज -mmin +5 के माध्यम से MIRROR_MIN_AGE_MINUTES से पुरानी फ़ाइलों को चुनता है।
प्रति-परिनियोजन ट्यूनिंग (.env)
500-1000
आकार देने का नियम:
डीवीआर पूर्वावलोकन कैलेंडर
डीवीआर पूर्वावलोकन टैब एक सर्वर-रेंडर कैलेंडर दिखाता है जो केवल उन दिनों को हाइलाइट करता है जिनके लिए रिकॉर्डिंग डिस्क पर मौजूद है।
रिकॉर्डिंग वाले दिन क्लिक करने योग्य हैं (नीला) - क्लिक करने से उस दिन 00:00 बजे डेटाटाइम इनपुट पहले से भर जाता है;
प्रत्येक टियर माउंट पर find -mindepth 4 -maxdepth 4 -type d के माध्यम से Stream.available_dvr_days/1 में कार्यान्वित किया गया;
सिंहावलोकन
बी2सी (बिजनेस-टू-कंज्यूमर) एपीआई एंड-यूज़र प्लेयर एप्लिकेशन के लिए प्रमाणीकरण और स्ट्रीम एक्सेस प्रदान करता है।
किसी उपयोगकर्ता को प्रमाणित करें और बाद की एपीआई कॉल के लिए auth_token प्राप्त करें।
तरीका
endpoint
अनुरोध निकाय
पैरामीटर
प्रकार
आवश्यक
विवरण
हाँ
उपयोगकर्ता लॉगिन नाम
उपयोगकर्ता पासवर्ड
उदाहरण अनुरोध
प्रतिक्रिया फ़ील्ड
सफलता प्रतिक्रिया (200)
बाद की एपीआई कॉल के लिए एन्क्रिप्टेड प्रमाणीकरण टोकन
आईएसओ 8601 प्रारूप में टोकन समाप्ति तिथि/समय
उदाहरण सफलता प्रतिक्रिया
त्रुटि प्रतिक्रिया (403)
त्रुटि विवरण संदेश
HTTP स्थिति कोड
उदाहरण त्रुटि प्रतिक्रिया
ऑथ टोकन का उपयोग करके प्रमाणित उपयोगकर्ता के बारे में जानकारी प्राप्त करें।
प्रतिक्रिया फ़ील्ड
प्रमाणित उपयोगकर्ता का उपयोगकर्ता नाम
सर्वर संदेश (यदि कोई नहीं है तो खाली)
प्रमाणीकरण स्थिति (1 = प्रमाणित)
खाता स्थिति: सक्रिय, प्रतिबंधित, अक्षम, परीक्षण
खाता समाप्ति तिथि (असीमित होने पर शून्य)
वर्तमान सक्रिय कनेक्शनों की संख्या
आईएसओ 8601 प्रारूप में खाता निर्माण तिथि
एक साथ कनेक्शन की अधिकतम अनुमति
अनुमत आउटपुट स्ट्रीम प्रारूपों की सूची
उपयोगकर्ता के स्वामी/पुनर्विक्रेता का प्रदाता नाम (यदि कोई नहीं है तो शून्य)
प्रदाता लोगो छवि का URL (यदि कोई नहीं है तो शून्य)
प्रदाता का URL संक्षिप्त लोगो छवि 208x208 (यदि कोई नहीं तो शून्य)
आईएसओ 8601 प्रारूप में वर्तमान सर्वर समय
उदाहरण अनुरोध
प्रकार के अनुसार फ़िल्टर की गई श्रेणियाँ पुनः प्राप्त करें।
श्रेणी प्रकार: लाइव, वोड, या श्रृंखला
स्ट्रिंग के रूप में श्रेणी आईडी
श्रेणी प्रदर्शन नाम
मूल श्रेणी आईडी (0 यदि रूट है)
कैश अमान्यकरण के लिए सामग्री का MD5 हैश
उदाहरण अनुरोध
मेटाडेटा और स्ट्रीम लिंक सहित किसी विशिष्ट वीओडी आइटम के लिए विस्तृत जानकारी प्राप्त करें।
वीओडी स्ट्रीम आईडी (यूयूआईडी)
कवर छवि यूआरएल
टीएमडीबी पहचानकर्ता
पृष्ठभूमि छवि यूआरएल
शैली स्ट्रिंग
कथानक/विवरण
कास्ट सदस्य
रेटिंग मान (0-10)
निदेशक का नाम
रिलीज़ की तारीख
अवधि सेकंड में
स्वरूपित स्ट्रिंग के रूप में अवधि
श्रेणी आईडी की श्रृंखला
यदि वयस्क सामग्री है तो 1, अन्यथा 0
वीओडी स्ट्रीम आईडी
वीओडी शीर्षक
जोड़ी गई तिथि (आईएसओ 8601)
स्ट्रीम लिंक यूआरएल
वीडियो/ऑडियो कोडेक मेटाडेटा
सीज़न नंबर के आधार पर समूहीकृत, पूरे सीज़न और एपिसोड लिस्टिंग के साथ श्रृंखला की जानकारी प्राप्त करें।
सीरीज आईडी (यूयूआईडी)
सीज़न नंबर
सीज़न प्रदर्शन नाम
सीज़न में एपिसोड की संख्या
सीज़न की प्रसारण तिथि
सीज़न सिंहावलोकन/विवरण
सीज़न कवर छवि यूआरएल
सीज़न नंबर स्ट्रिंग द्वारा कुंजीबद्ध मानचित्र।
एपिसोड ऑब्जेक्ट फ़ील्ड
एपिसोड आईडी
टीएमडीबी एपिसोड आईडी
सीज़न के भीतर एपिसोड नंबर
जोड़ी गई तिथि (आईएसओ 8601)
सीज़न नंबर
एपिसोड जानकारी ऑब्जेक्ट (वीओडी जानकारी के समान संरचना)
स्ट्रीम लिंक यूआरएल
वीडियो/ऑडियो कोडेक मेटाडेटा
टोकन समाप्ति उपयोगकर्ता की भूमिका पर निर्भर करती है: व्यवस्थापक = 365 दिन, अन्य = 30 दिन |
सफलता प्रतिक्रिया (200)
/auth समापन बिंदु से प्रामाणिक टोकन प्राप्त किया गया