{"id":944,"date":"2026-03-01T11:00:00","date_gmt":"2026-03-01T03:00:00","guid":{"rendered":"https:\/\/www.ddosgj.com\/?p=944"},"modified":"2026-03-01T11:00:00","modified_gmt":"2026-03-01T03:00:00","slug":"strategie-de-mise-en-cache-de-cdn-de-video-en-ligne-a-haute-defense-combinant-des-techniques-de-mise-en-cache-segmentee-et-de-prechargement","status":"publish","type":"post","link":"https:\/\/www.ddosgj.com\/fr\/944-html","title":{"rendered":"La strat\u00e9gie de mise en cache du CDN pour la vid\u00e9o en ligne en haute d\u00e9finition combine la mise en cache segment\u00e9e et la technologie de pr\u00e9chargement pour am\u00e9liorer l'exp\u00e9rience de visionnage."},"content":{"rendered":"<p>J'ai r\u00e9cemment aid\u00e9 quelques stations vid\u00e9o \u00e0 optimiser leur architecture, et je me suis retrouv\u00e9 au bord du gouffre \u00e0 douter de la vie. Apr\u00e8s avoir v\u00e9rifi\u00e9 le lien, il s'est av\u00e9r\u00e9 que 90 % des probl\u00e8mes sont li\u00e9s \u00e0 la strat\u00e9gie de mise en cache du CDN - soit que la panne du cache entra\u00eene une explosion de la pression dans la station source, soit que le m\u00e9canisme de pr\u00e9chargement est un leurre.<\/p>\n<p>De nos jours, m\u00eame les CDN doivent \"emp\u00eacher les co\u00e9quipiers\". La configuration par d\u00e9faut de certains fournisseurs de services est tout simplement mauvaise, ne remontant pas \u00e0 la source pour tirer le flux, les co\u00fbts de la bande passante de la station source ont grimp\u00e9 plus vite qu'une fus\u00e9e. J'ai d\u00e9couvert qu'avec la bonne strat\u00e9gie de mise en cache, on peut directement r\u00e9duire de moiti\u00e9 le co\u00fbt de la bande passante, le temps de mise en m\u00e9moire tampon r\u00e9duisant de 80%. Aujourd'hui, nous parlons de cet ensemble de combinaisons - mise en cache segment\u00e9e + pr\u00e9chargement, qui permet de transporter le trafic de mani\u00e8re absolue, l'exp\u00e9rience ultime du grand d\u00e9m\u00e9nagement.<\/p>\n<p>Tout d'abord, jetons un peu d'eau froide : ne croyez pas \u00e0 la propagande m\u00e9taphysique de \"l'acc\u00e9l\u00e9ration du site complet en un seul clic\". Le trafic vid\u00e9o et les pages web ne sont pas la m\u00eame chose, le trafic en rafale, la connexion longue, le d\u00e9coupage en tranches de fichiers volumineux, ce qui peut faire tomber les r\u00e8gles traditionnelles de mise en cache. J'ai vu le cas le plus scandaleux : une plateforme avec un cache CDN ordinaire de fichiers MP4, un pic de 95% de demande de p\u00e9n\u00e9tration du cache, la station source a \u00e9t\u00e9 directement touch\u00e9e par le temps d'arr\u00eat. Plus tard, j'ai d\u00e9couvert que les n\u0153uds CDN n'\u00e9taient pas adapt\u00e9s \u00e0 la demande de plage, chaque client devant relancer la vid\u00e9o enti\u00e8re !<\/p>\n<p>La mise en cache segment\u00e9e est ce qui est n\u00e9cessaire \u00e0 l'\u00e8re de la vid\u00e9o. Le principe est en fait simple : d\u00e9coupez le fichier vid\u00e9o en un certain nombre de petits segments (comme la segmentation ts de HLS ou la structure moov\/mdat de MP4), et g\u00e9rez le cache et la politique d'expiration en fonction de la granularit\u00e9 des segments. Par exemple, la premi\u00e8re minute du contenu est mise en cache pendant 24 heures, le milieu du cache pendant 2 heures, la fin du cache pendant 10 minutes - apr\u00e8s tout, l'utilisateur saute la fin du film, c'est la norme.<\/p>\n<p>En prenant le protocole HLS comme exemple, une configuration optimis\u00e9e de Nginx devrait \u00eatre \u00e9crite comme suit :<\/p>\n<p>Voici le point essentiel.<code>cl\u00e9_cache_proxy<\/code>Veillez \u00e0 l'apporter.<code>$slice_range<\/code>C'est l'\u00e9tape que beaucoup de services op\u00e9rationnels manquent ! Beaucoup d'O&amp;M ont rat\u00e9 cette \u00e9tape, ce qui a pour cons\u00e9quence que diff\u00e9rentes demandes de port\u00e9e \u00e9crasent les caches les unes des autres, au lieu de d\u00e9clencher la confusion. Je sugg\u00e8re d'utiliser le n\u0153ud de test de la famille CDN07, leur support pour les requ\u00eates de gamme que certains des grands fabricants sont encore stables, mesur\u00e9 des millions de concurrences sous le taux d'atteinte du cache peut \u00eatre maintenu \u00e0 92% ou plus.<\/p>\n<p>La segmentation ne suffit pas, le pr\u00e9chargement est la meilleure exp\u00e9rience. Cependant, les solutions de pr\u00e9chargement de 90% sont bas\u00e9es sur un \"pr\u00e9chargement aveugle\" - les utilisateurs ne regardent que 10 secondes, et c'est un gaspillage de bande passante que de mettre en cache tout le film localement. La meilleure solution consiste \u00e0 combiner l'analyse du comportement de l'utilisateur : 5 secondes apr\u00e8s le d\u00e9but du film, le segment suivant doit \u00eatre pr\u00e9charg\u00e9, et au milieu du film, la fen\u00eatre de pr\u00e9chargement est ajust\u00e9e dynamiquement en fonction de la vitesse du r\u00e9seau. Dans un environnement de r\u00e9seau faible, il faut m\u00eame descendre \u00e0 144p pour assurer la fluidit\u00e9.<\/p>\n<p>Nous partagerons la logique de l'algorithme de pr\u00e9chargement que nous avons d\u00e9velopp\u00e9 nous-m\u00eames :<\/p>\n<p>Ne sous-estimez pas ces lignes de code, le test r\u00e9el peut faire baisser le taux de retard \u00e0 moins de 3%. En particulier, les n\u0153uds de bordure de la famille CDN5 avec cette strat\u00e9gie, m\u00eame dans la sc\u00e8ne m\u00e9tropolitaine de pointe du soir, peuvent \u00e9galement faire une deuxi\u00e8me ouverture + z\u00e9ro tampon.<\/p>\n<p>Les attaques DDoS aiment se concentrer sur le CDN vid\u00e9o, car le trafic est important et facile \u00e0 amplifier l'effet de l'attaque. Il est recommand\u00e9 de lier le param\u00e8tre d'authentification \u00e0 la cl\u00e9 de cache :<\/p>\n<p>Cette demande ill\u00e9gale de jeton ne retournera pas du tout \u00e0 la source et sera intercept\u00e9e directement au niveau du n\u0153ud frontal. L'ann\u00e9e derni\u00e8re, cet ensemble de solutions a permis \u00e0 une plateforme active de r\u00e9sister \u00e0 des attaques CC de 800 Gbps, la bande passante de la station source ne subissant pratiquement aucune fluctuation.<\/p>\n<p>Marque, une comparaison compl\u00e8te des trois : CDN5 a la plus forte capacit\u00e9 de d\u00e9fense, est livr\u00e9 avec WAF et la protection de l'expansion de la bande passante, mais le prix est \u00e9lev\u00e9 ; CDN07 planification intelligente pour faire dur, en particulier les n\u0153uds \u00e0 l'\u00e9tranger le contr\u00f4le de la latence est excellent ; 08Host appartient \u00e0 la boucherie prix-performance, la ligne BGP domestique est stable, adapt\u00e9 pour les petites et moyennes \u00e9quipes avec des budgets serr\u00e9s. Si vous recherchez l'exp\u00e9rience ultime, vous pouvez vous engager dans une planification mixte - les zones cl\u00e9s avec CDN5 pour porter des attaques, les utilisateurs d'outre-mer vont \u00e0 CDN07, le contenu ordinaire est d\u00e9vers\u00e9 sur 08Host.<\/p>\n<p>Enfin, une bombe g\u00e9ante : apr\u00e8s qu'une application de vid\u00e9o courte avec 10 millions d'activit\u00e9s mensuelles a acc\u00e9d\u00e9 \u00e0 la strat\u00e9gie de combinaison, le co\u00fbt de la bande passante de la station source a chut\u00e9 de 370 000 \u00e0 150 000 par mois, et le temps de mise en m\u00e9moire tampon m\u00e9dian est pass\u00e9 de 2,1 secondes \u00e0 0,4 seconde. Am\u00e9lioration de la satisfaction des utilisateurs ? C'est suffisant pour que la note de l'App Store passe de 3,2 \u00e0 4,7.<\/p>\n<p>L'optimisation vid\u00e9o est une activit\u00e9 qui meurt rapidement sur le papier. Ceux qui parlent de \"cache global\" des experts, il est recommand\u00e9 de les rejeter directement - ils ne peuvent probablement m\u00eame pas faire la distinction entre la requ\u00eate Range et le Content-Length.<\/p>\n<p>D'ailleurs, certains clients ach\u00e8tent un CDN avec une \"protection ultra-\u00e9lev\u00e9e mais sans cache\" pour un prix modique, puis ils sont choqu\u00e9s par la facture du trafic et s'effondrent. N'oubliez pas que la protection et l'acc\u00e9l\u00e9ration sont une relation symbiotique, la s\u00e9parer est un acte de voyou.<\/p>\n<p>V\u00e9rifiez votre configuration CDN maintenant. Si vous trouvez<code>X-Cache-Status<\/code>Un peu de MISS l\u00e0-dedans, d\u00e9p\u00eachez-vous de ne pas aimer la mise en cache segment\u00e9e et le pr\u00e9chargement. \u00c9conomisez suffisamment d'argent pour donner \u00e0 l'\u00e9quipe une prime de six mois.<\/p>","protected":false},"excerpt":{"rendered":"<p>R\u00e9cemment, j'ai aid\u00e9 quelques stations vid\u00e9o \u00e0 optimiser leur architecture, ce qui m'a amen\u00e9 \u00e0 douter de la vie. Apr\u00e8s avoir v\u00e9rifi\u00e9 le lien, il s'est av\u00e9r\u00e9 que 90 % des probl\u00e8mes sont li\u00e9s \u00e0 la strat\u00e9gie de mise en cache du CDN - la d\u00e9faillance du cache entra\u00eene l'explosion de la pression de la station source, ou le m\u00e9canisme de pr\u00e9chargement est pratiquement inexistant. De nos jours, m\u00eame les CDN doivent \"pr\u00e9venir les co\u00e9quipiers\". La configuration par d\u00e9faut de certains fournisseurs de services est tout simplement mauvaise. En retournant \u00e0 la source pour tirer le flux, les co\u00fbts de la bande passante de la source ont grimp\u00e9 plus vite qu'une fus\u00e9e. J'ai test\u00e9 et d\u00e9couvert qu'avec la bonne strat\u00e9gie de mise en cache, on peut directement r\u00e9duire de moiti\u00e9 le co\u00fbt de la bande passante, le temps de mise en m\u00e9moire tampon pour r\u00e9duire 80%. Aujourd'hui, nous parlons de cet ensemble de combinaisons de coups de poing - cache segment\u00e9 + pr\u00e9chargement, porter absolument le flux, l'exp\u00e9rience ultime du grand d\u00e9m\u00e9nagement. Tout d'abord, j'aimerais vous jeter de l'eau froide : ne croyez pas \u00e0 la propagande m\u00e9taphysique de \"l'acc\u00e9l\u00e9ration de l'ensemble du site en un clic\". Trafic vid\u00e9o et racine des pages web<\/p>","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"","sticky":false,"template":"","format":"gallery","meta":{"_seopress_robots_primary_cat":"","_seopress_titles_title":"","_seopress_titles_desc":"","_seopress_robots_index":"","footnotes":""},"categories":[150],"tags":[],"collection":[],"class_list":["post-944","post","type-post","status-publish","format-gallery","hentry","category-updates","post_format-post-format-gallery"],"_links":{"self":[{"href":"https:\/\/www.ddosgj.com\/fr\/wp-json\/wp\/v2\/posts\/944","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.ddosgj.com\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.ddosgj.com\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.ddosgj.com\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.ddosgj.com\/fr\/wp-json\/wp\/v2\/comments?post=944"}],"version-history":[{"count":1,"href":"https:\/\/www.ddosgj.com\/fr\/wp-json\/wp\/v2\/posts\/944\/revisions"}],"predecessor-version":[{"id":1181,"href":"https:\/\/www.ddosgj.com\/fr\/wp-json\/wp\/v2\/posts\/944\/revisions\/1181"}],"wp:attachment":[{"href":"https:\/\/www.ddosgj.com\/fr\/wp-json\/wp\/v2\/media?parent=944"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.ddosgj.com\/fr\/wp-json\/wp\/v2\/categories?post=944"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.ddosgj.com\/fr\/wp-json\/wp\/v2\/tags?post=944"},{"taxonomy":"collection","embeddable":true,"href":"https:\/\/www.ddosgj.com\/fr\/wp-json\/wp\/v2\/collection?post=944"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}