HeadlinesBriefing HeadlinesBriefing 12 languages

Fog-Bank: Archiving the oldest webcam feed

Hacker News ·

🇬🇧 English

Fog Cam publishes one picture at a time and throws it away when the next one lands. Fog-Bank keeps every one of them, and when something goes wrong (on my side or Fog Cam's), the record shows exactly when, for how long and whose fault it was. Four catchers on three networks ask Fog Cam for its picture: a poller on my own server every 7 seconds, fogline on Cloudflare every 15 seconds (it keeps a 30-day buffer), a Cloudflare worker every 20 seconds that writes straight to permanent storage, and a machine at my house every 15 seconds.

Each one pushes every frame it gets into the archive, and sweeps every 5 minutes and every night pull back anything a push dropped. Every request asks for the real file (a unique query string plus no-cache headers), because in August I found Fog Cam's web server cache handing out copies minutes old. Each frame is named by Fog Cam's own upload time, fingerprinted with sha-256, stamped without re-compressing, stored as lossless JPEG XL and copied to Cloudflare R2 the same minute.

A status board checks every stage from the camera to YouTube every few minutes and pages me on Telegram when one stops. The page lists every outage so far, in order, marked as mine or Fog Cam's: Fog Cam's server outage on Aug 13, its 64-hour freeze on Sep 8 to 10, my server's 40-hour outage inside that freeze (a full disk), and the rest.

View original article →


🇸🇦 العربية

كيف يتم التقاط كل إطار من FogCam

Fog Cam ينشر صورة واحدة في كل مرة ويتخلص منها عندما تصل الصورة التالية. Fog-Bank يحتفظ بكل واحدة منها، وعندما يحدث خطأ ما (من جانبي أو من جانب Fog Cam)، يُظهر السجل بالضبط متى وكم من الوقت ومن كان الخطأ. أربعة صائدين على ثلاث شبكات يطلبون من Fog Cam صورته: مستقصٍ على خادمي الخاص كل 7 ثوانٍ، وfogline على Cloudflare كل 15 ثانية (يحتفظ بمخزن مؤقت لمدة 30 يومًا)، وعامل Cloudflare كل 20 ثانية يكتب مباشرة إلى تخزين دائم، وآلة في منزلي كل 15 ثانية. كل واحد يدفع كل إطار يحصل عليه إلى الأرشيف، ويقوم بمسح كل 5 دقائق وكل ليلة لسحب أي شيء أسقطه الدفع. كل طلب يطلب الملف الحقيقي (سلسلة استعلام فريدة بالإضافة إلى رؤوس عدم التخزين المؤقت)، لأنني في أغسطس وجدت أن ذاكرة التخزين المؤقت لخادم الويب الخاص بـ Fog Cam كانت توزع نسخًا قديمة بدقائق. يتم تسمية كل إطار بوقت تحميل Fog Cam الخاص، ويتم بصمته بـ sha-256، وختمه دون إعادة ضغط، وتخزينه كـ JPEG XL بدون فقدان، ونسخه إلى Cloudflare R2 في نفس الدقيقة. لوحة حالة تفحص كل مرحلة من الكاميرا إلى YouTube كل بضع دقائق وتنبهني على Telegram عندما تتوقف إحداها. الصفحة تسرد جميع حالات الانقطاع حتى الآن، بالترتيب، مميزة بأنها مني أو من Fog Cam: انقطاع خادم Fog Cam في 13 أغسطس، وتجمده لمدة 64 ساعة في 8 إلى 10 سبتمبر، وانقطاع خادمي لمدة 40 ساعة داخل ذلك التجميد (قرص ممتلئ)، والباقي.

كيف يضمن Fog-Bank عدم فقدان أي إطارات؟

يستخدم Fog-Bank أربعة صائدين مستقلين على ثلاث شبكات يستقصون على فترات مختلفة، مع مسح كل 5 دقائق وليلي لاستعادة الإطارات المفقودة، بالإضافة إلى رؤوس عدم التخزين المؤقت لتجنب النسخ القديمة.

العربية version →


🇧🇩 বাংলা

কিভাবে প্রতিটি FogCam ফ্রেম ধরা হয়

Fog Cam একবারে একটি ছবি প্রকাশ করে এবং পরবর্তী ছবি আসলে তা ফেলে দেয়। Fog-Bank প্রতিটি ছবি রাখে, এবং যখন কিছু ভুল হয় (আমার পক্ষে বা Fog Cam-এর পক্ষে), রেকর্ড দেখায় ঠিক কখন, কতক্ষণ এবং কার দোষ ছিল। তিনটি নেটওয়ার্কে চারটি ক্যাচার Fog Cam-এর কাছে তার ছবি চায়: আমার নিজের সার্ভারে একটি পোলার প্রতি 7 সেকেন্ডে, Cloudflare-এ fogline প্রতি 15 সেকেন্ডে (এটি 30-দিনের বাফার রাখে), একটি Cloudflare ওয়ার্কার প্রতি 20 সেকেন্ডে যা সরাসরি স্থায়ী স্টোরেজে লেখে, এবং আমার বাড়িতে একটি মেশিন প্রতি 15 সেকেন্ডে। প্রতিটি তার পাওয়া প্রতিটি ফ্রেম আর্কাইভে ঠেলে দেয়, এবং প্রতি 5 মিনিটে এবং প্রতি রাতে কোনো ঠেলা দ্বারা ফেলে দেওয়া জিনিস ফিরিয়ে আনার জন্য ঝাড়ু দেয়। প্রতিটি অনুরোধ আসল ফাইল চায় (একটি অনন্য কুয়েরি স্ট্রিং এবং নো-ক্যাশ হেডার), কারণ আগস্টে আমি দেখতে পেলাম Fog Cam-এর ওয়েব সার্ভার ক্যাশ মিনিট পুরনো কপি বিতরণ করছে। প্রতিটি ফ্রেমের নাম Fog Cam-এর নিজস্ব আপলোড সময় দ্বারা রাখা হয়, sha-256 দিয়ে ফিঙ্গারপ্রিন্ট করা হয়, পুনরায় কম্প্রেশন ছাড়াই স্ট্যাম্প করা হয়, লসলেস JPEG XL হিসাবে সংরক্ষণ করা হয় এবং একই মিনিটে Cloudflare R2-তে কপি করা হয়। একটি স্ট্যাটাস বোর্ড ক্যামেরা থেকে YouTube পর্যন্ত প্রতিটি ধাপ প্রতি কয়েক মিনিটে পরীক্ষা করে এবং যখন একটি বন্ধ হয় তখন আমাকে Telegram-এ পেজ করে। পৃষ্ঠাটি এখন পর্যন্ত সমস্ত আউটেজ ক্রমে তালিকাভুক্ত করে, আমার বা Fog Cam-এর হিসাবে চিহ্নিত: Fog Cam-এর সার্ভার আউটেজ 13 আগস্টে, এর 64-ঘণ্টার ফ্রিজ 8 থেকে 10 সেপ্টেম্বরে, সেই ফ্রিজের ভিতরে আমার সার্ভারের 40-ঘণ্টার আউটেজ (একটি পূর্ণ ডিস্ক), এবং বাকি।

Fog-Bank কিভাবে নিশ্চিত করে যে কোনো ফ্রেম হারিয়ে না যায়?

Fog-Bank তিনটি নেটওয়ার্কে চারটি স্বাধীন ক্যাচার ব্যবহার করে বিভিন্ন ব্যবধানে পোলিং করে, প্রতি 5 মিনিটে এবং রাতে ঝাড়ু দিয়ে হারানো ফ্রেম উদ্ধার করে, এবং পুরনো কপি এড়াতে নো-ক্যাশ হেডার ব্যবহার করে।

বাংলা version →


🇩🇪 Deutsch

Wie jeder FogCam-Frame eingefangen wird

Fog Cam veröffentlicht jeweils ein Bild und verwirft es, wenn das nächste eintrifft. Fog-Bank behält jedes einzelne, und wenn etwas schiefgeht (auf meiner Seite oder auf der von Fog Cam), zeigt die Aufzeichnung genau, wann, wie lange und wessen Schuld es war. Vier Fänger in drei Netzwerken fragen Fog Cam nach seinem Bild: ein Poller auf meinem eigenen Server alle 7 Sekunden, fogline auf Cloudflare alle 15 Sekunden (es hält einen 30-Tage-Puffer), ein Cloudflare-Worker alle 20 Sekunden, der direkt in den permanenten Speicher schreibt, und eine Maschine bei mir zu Hause alle 15 Sekunden.

Jeder schiebt jeden erhaltenen Frame ins Archiv und führt alle 5 Minuten und jede Nacht einen Sweep durch, um alles zurückzuholen, was ein Push fallen gelassen hat. Jede Anfrage fragt nach der echten Datei (eine eindeutige Query-String plus No-Cache-Header), weil ich im August festgestellt habe, dass der Webserver-Cache von Fog Cam Minuten alte Kopien ausgab. Jeder Frame wird nach Fog Cams eigener Upload-Zeit benannt, mit sha-256 gefingerprintet, ohne Neukomprimierung gestempelt, als verlustfreies JPEG XL gespeichert und in derselben Minute auf Cloudflare R2 kopiert.

Ein Statusboard überprüft jede Stufe von der Kamera bis YouTube alle paar Minuten und benachrichtigt mich per Telegram, wenn eine stoppt. Die Seite listet alle bisherigen Ausfälle in der Reihenfolge auf, markiert als meine oder die von Fog Cam: Fog Cams Serverausfall am 13. August, sein 64-stündiger Freeze vom **8. bis 10.

September**, mein 40-stündiger Serverausfall innerhalb dieses Freezes (eine volle Festplatte) und der Rest.

Wie stellt Fog-Bank sicher, dass keine Frames verloren gehen?

Fog-Bank verwendet vier unabhängige Fänger in drei Netzwerken, die in unterschiedlichen Intervallen abfragen, mit Sweeps alle 5 Minuten und nachts, um verlorene Frames wiederherzustellen, plus No-Cache-Header, um veraltete Kopien zu vermeiden.

Deutsch version →


🇪🇸 Español

Cómo se captura cada fotograma de FogCam

Fog Cam publica una imagen a la vez y la descarta cuando llega la siguiente. Fog-Bank conserva cada una de ellas, y cuando algo sale mal (por mi parte o por parte de Fog Cam), el registro muestra exactamente cuándo, durante cuánto tiempo y de quién fue la culpa. Cuatro capturadores en tres redes le piden su imagen a Fog Cam: un sondeador en mi propio servidor cada 7 segundos, fogline en Cloudflare cada 15 segundos (mantiene un búfer de 30 días), un worker de Cloudflare cada 20 segundos que escribe directamente en almacenamiento permanente, y una máquina en mi casa cada 15 segundos.

Cada uno empuja cada fotograma que obtiene al archivo, y barre cada 5 minutos y cada noche para recuperar cualquier cosa que un empuje haya dejado caer. Cada solicitud pide el archivo real (una cadena de consulta única más cabeceras sin caché), porque en agosto descubrí que la caché del servidor web de Fog Cam estaba distribuyendo copias de minutos de antigüedad. Cada fotograma se nombra por la hora de subida de Fog Cam, se toma la huella digital con sha-256, se sella sin re-comprimir, se almacena como JPEG XL sin pérdida y se copia a Cloudflare R2 en el mismo minuto.

Un tablero de estado comprueba cada etapa desde la cámara hasta YouTube cada pocos minutos y me avisa por Telegram cuando una se detiene. La página enumera todas las interrupciones hasta ahora, en orden, marcadas como mías o de Fog Cam: la interrupción del servidor de Fog Cam el 13 de agosto, su congelación de 64 horas del 8 al 10 de septiembre, la interrupción de 40 horas de mi servidor dentro de esa congelación (un disco lleno), y el resto.

¿Cómo garantiza Fog-Bank que no se pierdan fotogramas?

Fog-Bank utiliza cuatro capturadores independientes en tres redes que sondean a diferentes intervalos, con barridos cada 5 minutos y nocturnos para recuperar fotogramas perdidos, además de cabeceras sin caché para evitar copias obsoletas.

Español version →


🇫🇷 Français

Comment chaque image FogCam est capturée

Fog Cam publie une image à la fois et la jette quand la suivante arrive. Fog-Bank garde chacune d'elles, et quand quelque chose tourne mal (de mon côté ou du côté de Fog Cam), l'enregistrement montre exactement quand, combien de temps et de qui était la faute. Quatre captureurs sur trois réseaux demandent son image à Fog Cam : un sondeur sur mon propre serveur toutes les 7 secondes, fogline sur Cloudflare toutes les 15 secondes (il garde un tampon de 30 jours), un worker Cloudflare toutes les 20 secondes qui écrit directement dans le stockage permanent, et une machine chez moi toutes les 15 secondes.

Chacun pousse chaque image qu'il obtient dans l'archive, et balaie toutes les 5 minutes et chaque nuit pour récupérer tout ce qu'une poussée a laissé tomber. Chaque demande demande le fichier réel (une chaîne de requête unique plus des en-têtes sans cache), car en août j'ai découvert que le cache du serveur web de Fog Cam distribuait des copies vieilles de plusieurs minutes. Chaque image est nommée par l'heure de téléchargement de Fog Cam, empreinte avec sha-256, horodatée sans recompression, stockée en JPEG XL sans perte et copiée vers Cloudflare R2 dans la même minute.

Un tableau de bord vérifie chaque étape de la caméra à YouTube toutes les quelques minutes et me page sur Telegram quand l'une s'arrête. La page liste toutes les pannes jusqu'à présent, dans l'ordre, marquées comme miennes ou de Fog Cam : la panne du serveur de Fog Cam le 13 août, son gel de 64 heures du 8 au 10 septembre, la panne de 40 heures de mon serveur à l'intérieur de ce gel (un disque plein), et le reste.

Comment Fog-Bank garantit-il qu'aucune image n'est perdue ?

Fog-Bank utilise quatre captureurs indépendants sur trois réseaux sondant à différents intervalles, avec des balayages toutes les 5 minutes et nocturnes pour récupérer les images perdues, plus des en-têtes sans cache pour éviter les copies obsolètes.

Français version →


🇮🇳 हिन्दी

हर FogCam फ्रेम कैसे पकड़ा जाता है

Fog Cam एक बार में एक तस्वीर प्रकाशित करता है और अगली तस्वीर आने पर उसे फेंक देता है। Fog-Bank उनमें से प्रत्येक को रखता है, और जब कुछ गलत होता है (मेरी तरफ या Fog Cam की तरफ), रिकॉर्ड दिखाता है कि वास्तव में कब, कितनी देर और किसकी गलती थी। तीन नेटवर्कों पर चार कैचर Fog Cam से इसकी तस्वीर मांगते हैं: मेरे अपने सर्वर पर एक पोलर हर 7 सेकंड में, Cloudflare पर fogline हर 15 सेकंड में (यह 30-दिन का बफर रखता है), एक Cloudflare वर्कर हर 20 सेकंड में जो सीधे स्थायी भंडारण में लिखता है, और मेरे घर पर एक मशीन हर 15 सेकंड में। प्रत्येक अपने द्वारा प्राप्त हर फ्रेम को संग्रह में धकेलता है, और हर 5 मिनट और हर रात किसी भी धक्का द्वारा गिराई गई चीज़ को वापस खींचने के लिए सफाई करता है। हर अनुरोध वास्तविक फ़ाइल मांगता है (एक अद्वितीय क्वेरी स्ट्रिंग और नो-कैश हेडर), क्योंकि अगस्त में मैंने पाया कि Fog Cam का वेब सर्वर कैश मिनटों पुरानी प्रतियां बांट रहा था। प्रत्येक फ्रेम का नाम Fog Cam के अपने अपलोड समय से रखा जाता है, sha-256 से फिंगरप्रिंट किया जाता है, बिना पुनः संपीड़न के स्टैम्प किया जाता है, लॉसलेस JPEG XL के रूप में संग्रहीत किया जाता है और उसी मिनट में Cloudflare R2 पर कॉपी किया जाता है। एक स्टेटस बोर्ड हर कुछ मिनटों में कैमरा से YouTube तक हर चरण की जांच करता है और जब कोई रुकता है तो मुझे Telegram पर पेज करता है। पृष्ठ अब तक के सभी आउटेज को क्रम में सूचीबद्ध करता है, मेरे या Fog Cam के रूप में चिह्नित: Fog Cam का सर्वर आउटेज 13 अगस्त को, इसका 64-घंटे का फ्रीज 8 से 10 सितंबर को, उस फ्रीज के अंदर मेरे सर्वर का 40-घंटे का आउटेज (एक पूर्ण डिस्क), और बाकी।

Fog-Bank यह कैसे सुनिश्चित करता है कि कोई फ्रेम खो न जाए?

Fog-Bank तीन नेटवर्कों पर चार स्वतंत्र कैचर का उपयोग करता है जो अलग-अलग अंतराल पर पोल करते हैं, हर 5 मिनट और रात में गिराए गए फ्रेम को पुनर्प्राप्त करने के लिए सफाई करते हैं, साथ ही पुरानी प्रतियों से बचने के लिए नो-कैश हेडर का उपयोग करते हैं।

हिन्दी version →


🇮🇩 Bahasa Indonesia

Bagaimana setiap bingkai FogCam ditangkap

Fog Cam menerbitkan satu gambar pada satu waktu dan membuangnya ketika gambar berikutnya tiba. Fog-Bank menyimpan setiap gambar tersebut, dan ketika sesuatu salah (di pihak saya atau pihak Fog Cam), catatan menunjukkan persis kapan, berapa lama, dan siapa yang salah. Empat penangkap di tiga jaringan meminta gambar dari Fog Cam: poller di server saya sendiri setiap 7 detik, fogline di Cloudflare setiap 15 detik (menyimpan buffer 30 hari), worker Cloudflare setiap 20 detik yang menulis langsung ke penyimpanan permanen, dan mesin di rumah saya setiap 15 detik.

Masing-masing mendorong setiap bingkai yang didapat ke arsip, dan menyapu setiap 5 menit dan setiap malam untuk menarik kembali apa pun yang dijatuhkan oleh push. Setiap permintaan meminta file asli (string kueri unik ditambah header no-cache), karena pada bulan Agustus saya menemukan cache server web Fog Cam membagikan salinan yang berusia beberapa menit. Setiap bingkai dinamai berdasarkan waktu unggahan Fog Cam sendiri, sidik jari dengan sha-256, dicap tanpa mengompresi ulang, disimpan sebagai JPEG XL lossless dan disalin ke Cloudflare R2 pada menit yang sama.

Papan status memeriksa setiap tahap dari kamera ke YouTube setiap beberapa menit dan memberi tahu saya di Telegram ketika salah satu berhenti. Halaman tersebut mencantumkan semua pemadaman sejauh ini, secara berurutan, ditandai sebagai milik saya atau Fog Cam: pemadaman server Fog Cam pada 13 Agustus, pembekuan 64 jam pada 8 hingga 10 September, pemadaman 40 jam server saya di dalam pembekuan itu (disk penuh), dan sisanya.

Bagaimana Fog-Bank memastikan tidak ada bingkai yang hilang?

Fog-Bank menggunakan empat penangkap independen di tiga jaringan yang melakukan polling pada interval berbeda, dengan sapuan setiap 5 menit dan malam hari untuk memulihkan bingkai yang jatuh, plus header no-cache untuk menghindari salinan basi.

Bahasa Indonesia version →


🇯🇵 日本語

すべてのFogCamフレームがどのようにキャッチされるか

Fog Camは一度に1枚の画像を公開し、次の画像が来るとそれを破棄します。Fog-Bankはすべての画像を保持し、何か問題が発生した場合(私側またはFog Cam側)、記録は正確にいつ、どのくらいの期間、誰の責任かを示します。3つのネットワーク上の4つのキャッチャーがFog Camに画像を要求します:私自身のサーバー上のポーラーは7秒ごと、Cloudflare上のfoglineは15秒ごと(30日間のバッファを保持)、Cloudflareワーカーは20秒ごとで永続ストレージに直接書き込み、私の家のマシンは15秒ごとです。各キャッチャーは取得したすべてのフレームをアーカイブにプッシュし、5分ごとおよび毎晩スイープしてプッシュで落ちたものを引き戻します。各リクエストは実際のファイルを要求します(一意のクエリ文字列とno-cacheヘッダー)。8月にFog CamのWebサーバーキャッシュが数分前のコピーを配布しているのを発見したからです。各フレームはFog Cam自身のアップロード時間で命名され、sha-256でフィンガープリントされ、再圧縮せずにスタンプされ、ロスレスJPEG XLとして保存され、同じ分にCloudflare R2にコピーされます。ステータスボードはカメラからYouTubeまでの各段階を数分ごとにチェックし、いずれかが停止するとTelegramで私にページ通知します。ページはこれまでのすべての障害を順番にリストし、私またはFog Camのものとしてマークします:Fog Camのサーバー障害は8月13日、その64時間のフリーズは9月8日から10日、そのフリーズ中の私のサーバーの40時間の障害(ディスク満杯)、および残りです。

Fog-Bankはどのようにフレームの損失を防ぎますか?

Fog-Bankは3つのネットワーク上の4つの独立したキャッチャーを異なる間隔でポーリングし、5分ごとおよび夜間にスイープして落ちたフレームを回復し、古いコピーを避けるためにno-cacheヘッダーを使用します。

日本語 version →


🇧🇷 Português

Como cada quadro do FogCam é capturado

Fog Cam publica uma imagem de cada vez e a descarta quando a próxima chega. Fog-Bank mantém cada uma delas, e quando algo dá errado (do meu lado ou do lado do Fog Cam), o registro mostra exatamente quando, por quanto tempo e de quem foi a culpa. Quatro catadores em três redes pedem sua imagem ao Fog Cam: um poller no meu próprio servidor a cada 7 segundos, fogline no Cloudflare a cada 15 segundos (mantém um buffer de 30 dias), um worker do Cloudflare a cada 20 segundos que escreve diretamente no armazenamento permanente, e uma máquina na minha casa a cada 15 segundos.

Cada um empurra cada quadro que obtém para o arquivo, e varre a cada 5 minutos e toda noite para puxar de volta qualquer coisa que um push deixou cair. Cada solicitação pede o arquivo real (uma string de consulta única mais cabeçalhos no-cache), porque em agosto descobri que o cache do servidor web do Fog Cam estava distribuindo cópias com minutos de idade. Cada quadro é nomeado pelo próprio tempo de upload do Fog Cam, impressão digital com sha-256, carimbado sem recompressão, armazenado como JPEG XL sem perdas e copiado para o Cloudflare R2 no mesmo minuto.

Um painel de status verifica cada estágio da câmera ao YouTube a cada poucos minutos e me notifica no Telegram quando um para. A página lista todas as interrupções até agora, em ordem, marcadas como minhas ou do Fog Cam: a interrupção do servidor do Fog Cam em 13 de agosto, seu congelamento de 64 horas de 8 a 10 de setembro, a interrupção de 40 horas do meu servidor dentro desse congelamento (um disco cheio), e o resto.

Como o Fog-Bank garante que nenhum quadro seja perdido?

Fog-Bank usa quatro catadores independentes em três redes fazendo polling em intervalos diferentes, com varreduras a cada 5 minutos e noturnas para recuperar quadros perdidos, além de cabeçalhos no-cache para evitar cópias obsoletas.

Português version →


🇷🇺 Русский

Как захватывается каждый кадр FogCam

Fog Cam публикует одно изображение за раз и отбрасывает его, когда появляется следующее. Fog-Bank сохраняет каждое из них, и когда что-то идет не так (с моей стороны или со стороны Fog Cam), запись показывает точно когда, как долго и чья была вина. Четыре ловца на трех сетях запрашивают у Fog Cam его изображение: опросчик на моем собственном сервере каждые 7 секунд, fogline на Cloudflare каждые 15 секунд (он хранит 30-дневный буфер), worker Cloudflare каждые 20 секунд, который пишет прямо в постоянное хранилище, и машина у меня дома каждые 15 секунд. Каждый отправляет каждый полученный кадр в архив и проводит очистку каждые 5 минут и каждую ночь, чтобы вернуть все, что было утеряно при отправке. Каждый запрос требует реальный файл (уникальная строка запроса плюс заголовки без кэширования), потому что в августе я обнаружил, что кэш веб-сервера Fog Cam раздавал копии возрастом в несколько минут. Каждый кадр назван по времени загрузки Fog Cam, имеет отпечаток sha-256, штампуется без повторного сжатия, хранится как JPEG XL без потерь и копируется в Cloudflare R2 в ту же минуту. Панель состояния проверяет каждый этап от камеры до YouTube каждые несколько минут и оповещает меня в Telegram, когда один из них останавливается. Страница перечисляет все сбои на данный момент по порядку, помеченные как мои или Fog Cam: сбой сервера Fog Cam 13 августа, его 64-часовое зависание с 8 по 10 сентября, 40-часовой сбой моего сервера внутри этого зависания (полный диск), и остальные.

Как Fog-Bank гарантирует, что кадры не теряются?

Fog-Bank использует четыре независимых ловца на трех сетях, опрашивающих с разными интервалами, с очистками каждые 5 минут и ночью для восстановления потерянных кадров, а также заголовки без кэширования для избежания устаревших копий.

Русский version →


🇨🇳 简体中文

每个FogCam帧是如何被捕获的

Fog Cam每次发布一张图片,并在下一张图片出现时丢弃它。Fog-Bank保留每一张图片,当出现问题时(在我方或Fog Cam方),记录会准确显示何时、持续多久以及是谁的错。三个网络上的四个捕捉器向Fog Cam请求其图片:我自己的服务器上的轮询器每7秒一次,Cloudflare上的fogline每15秒一次(它保留30天的缓冲区),一个Cloudflare worker每20秒一次,直接将数据写入永久存储,以及我家里的一台机器每15秒一次。每个捕捉器将其获取的每一帧推入存档,并每5分钟和每晚进行扫描,以拉回任何推送丢失的内容。每个请求都要求真实文件(唯一的查询字符串加上无缓存头),因为八月份我发现Fog Cam的Web服务器缓存分发了几分钟前的副本。每个帧由Fog Cam自己的上传时间命名,使用sha-256进行指纹识别,不重新压缩就加盖时间戳,存储为无损JPEG XL,并在同一分钟内复制到Cloudflare R2。一个状态板每几分钟检查从摄像头到YouTube的每个阶段,并在某个阶段停止时通过Telegram通知我。该页面按顺序列出了迄今为止的所有故障,标记为我的或Fog Cam的:Fog Cam的服务器故障在8月13日,其64小时冻结在9月8日至10日,我的服务器在该冻结期间的40小时故障(磁盘已满),以及其余故障。

Fog-Bank如何确保没有帧丢失?

Fog-Bank使用三个网络上的四个独立捕捉器,以不同的间隔进行轮询,每5分钟和每晚进行扫描以恢复丢失的帧,并加上无缓存头以避免使用过时的副本。

简体中文 version →