{"id":105117,"date":"2022-09-16T15:36:39","date_gmt":"2022-09-16T13:36:40","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/cloudflare-pereshyol-s-nginx-na-sobstvennyj-prokci-pingora-napisannyj-na-yazyke-rust"},"modified":"2022-09-16T15:36:39","modified_gmt":"2022-09-16T13:36:40","slug":"cloudflare-pereshyol-s-nginx-na-sobstvennyj-prokci-pingora-napisannyj-na-yazyke-rust","status":"publish","type":"post","link":"https:\/\/prohoster.info\/fr\/blog\/news\/cloudflare-pereshyol-s-nginx-na-sobstvennyj-prokci-pingora-napisannyj-na-yazyke-rust","title":{"rendered":"Cloudflare est pass\u00e9 de NGINX \u00e0 son propre proxy Pingora, \u00e9crit en langage Rust","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>La soci\u00e9t\u00e9 Cloudflare a annonc\u00e9 le passage de son r\u00e9seau de distribution de contenu \u00e0 l'utilisation du proxy Pingora, d\u00e9velopp\u00e9 en Rust. Ce nouveau proxy remplace la configuration bas\u00e9e sur le serveur NGINX avec des scripts Lua et traite plus d'un trillion de requ\u00eates par jour. Il est not\u00e9 que la transition vers un proxy sp\u00e9cialis\u00e9 a non seulement permis de mettre en \u0153uvre de nouvelles fonctionnalit\u00e9s et d'am\u00e9liorer la s\u00e9curit\u00e9 gr\u00e2ce \u00e0 une gestion m\u00e9moire s\u00e9curis\u00e9e, mais a \u00e9galement conduit \u00e0 une augmentation significative des performances et \u00e0 des \u00e9conomies de ressources \u2014 la solution bas\u00e9e sur Pingora ne n\u00e9cessite pas l'utilisation de Lua, ce qui r\u00e9duit la consommation de 70 % des ressources CPU et de 67 % de la m\u00e9moire pour le m\u00eame volume de trafic.     <\/p>\n<p>Pendant longtemps, le syst\u00e8me de proxy pour le trafic entre les utilisateurs et les destinataires <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/fr\/server\/dts-dusseldorf\/\"   title=\"serveurs tr\u00e8s charg\u00e9s\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"3455\">serveurs tr\u00e8s charg\u00e9s<\/a> bas\u00e9 sur NGINX et des scripts Lua a satisfait les besoins de Cloudflare, mais avec la croissance du r\u00e9seau et l'augmentation de sa complexit\u00e9, la solution universelle s'est r\u00e9v\u00e9l\u00e9e insuffisante tant en termes de performance qu'en raison de limitations en mati\u00e8re d'\u00e9volutivit\u00e9 et de mise en \u0153uvre de nouvelles fonctionnalit\u00e9s pour les clients. En particulier, des difficult\u00e9s sont apparues pour ajouter des fonctionnalit\u00e9s d\u00e9passant le simple r\u00f4le de passerelle et d'\u00e9quilibreur de charge. Par exemple, il est devenu n\u00e9cessaire, en cas d'\u00e9chec de traitement de la requ\u00eate, <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/fr\/server\/dts-prohoster\/\"   title=\"serveur\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"3061\">serveur<\/a> de rediriger la requ\u00eate vers un autre serveur en lui fournissant un autre ensemble d'en-t\u00eates HTTP.          <\/p>\n<p>Au lieu d'une architecture divisant les requ\u00eates entre diff\u00e9rents processus de traitement (worker), Pingora utilise un mod\u00e8le multithread qui, dans les sc\u00e9narios d'utilisation de Cloudflare (haute concentration de trafic provenant de diff\u00e9rents sites avec un important d\u00e9calage statistique), a montr\u00e9 une distribution des ressources plus efficace entre les c\u0153urs CPU. En particulier, l'affectation de requ\u00eates d\u00e9s\u00e9quilibr\u00e9es aux processus dans nginx entra\u00eenait une charge d\u00e9s\u00e9quilibr\u00e9e sur les c\u0153urs CPU, ce qui ralentissait le traitement d'autres requ\u00eates en raison de requ\u00eates gourmandes en ressources et d'entr\u00e9es\/sorties bloquantes. De plus, l'affectation de pools de connexions aux processus de traitement emp\u00eachait la r\u00e9utilisation des connexions d\u00e9j\u00e0 \u00e9tablies par d'autres processus de traitement, ce qui diminuaient l'efficacit\u00e9 du travail avec un grand nombre de processus de traitement.         <\/p>\n<p>NGINX :  <center><img decoding=\"async\" alt=\"Cloudflare est pass\u00e9 de NGINX \u00e0 son propre proxy Pingora, \u00e9crit en langage Rust\" src=\"\/wp-content\/uploads\/2022\/09\/a8253ce07419bc21d135e1b63bc1756a.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/center>  <\/p>\n<p>Pingora :  <center><img decoding=\"async\" alt=\"Cloudflare est pass\u00e9 de NGINX \u00e0 son propre proxy Pingora, \u00e9crit en langage Rust\" src=\"\/wp-content\/uploads\/2022\/09\/62cc18ce7d7dec60b2b72befc37dd79e.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/center>    <\/p>\n<p>L'impl\u00e9mentation de Pingora a permis de r\u00e9duire de 160 fois le nombre d'op\u00e9rations d'\u00e9tablissement de nouvelles connexions et d'augmenter la part des requ\u00eates r\u00e9utilis\u00e9es de 87,1 % \u00e0 99,92 %. En plus de r\u00e9duire les connexions r\u00e9p\u00e9t\u00e9es et d'utiliser plus efficacement les c\u0153urs CPU, l'am\u00e9lioration des performances du nouveau proxy a principalement \u00e9t\u00e9 favoris\u00e9e par l'\u00e9limination des gestionnaires lents en Lua utilis\u00e9s avec nginx.     <\/p>\n<p>Le langage Rust a \u00e9t\u00e9 choisi pour sa capacit\u00e9 \u00e0 offrir de hautes performances tout en fournissant des outils pour assurer une gestion s\u00e9curis\u00e9e de la m\u00e9moire. Il est mentionn\u00e9 que malgr\u00e9 le haut niveau de comp\u00e9tence des ing\u00e9nieurs de Cloudflare et la r\u00e9vision du code \u00e9crit en C, il n\u2019a pas \u00e9t\u00e9 possible d'\u00e9viter les erreurs entra\u00eenant des probl\u00e8mes de m\u00e9moire (par exemple, une vuln\u00e9rabilit\u00e9 dans le parseur HTML). En ce qui concerne le nouveau code, des cas d'\u00e9chec dans Pingora ont \u00e9t\u00e9 rapport\u00e9s comme \u00e9tant caus\u00e9s non par des probl\u00e8mes dans l'application, mais par une erreur dans le noyau Linux et des pannes mat\u00e9rielles.      <\/p>\n<p>On peut \u00e9galement noter le commentaire de Linus Torvalds sur l'inclusion du support du langage Rust dans le noyau Linux, exprim\u00e9 lors de la conf\u00e9rence Open-Source Summit Europe. Dans le noyau 6.0, les patchs pour le d\u00e9veloppement de pilotes en Rust n'ont pas \u00e9t\u00e9 inclus, mais selon Linus, ils devraient probablement \u00eatre accept\u00e9s dans le noyau 6.1, car il ne souhaite pas retarder l'int\u00e9gration. Comme motivation pour ajouter le support de Rust, en plus de l'impact positif sur la s\u00e9curit\u00e9, Linus mentionne \u00e9galement la possibilit\u00e9 d'accro\u00eetre l'int\u00e9r\u00eat pour le travail sur le noyau de nouveaux participants, ce qui est pertinent dans le contexte du vieillissement des v\u00e9t\u00e9rans.<br \/>\n<br \/>Source : <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=57793\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Cloudflare \u0441\u043e\u043e\u0431\u0449\u0438\u043b\u0430 \u043e \u043f\u0435\u0440\u0435\u0432\u043e\u0434\u0435 \u0441\u0432\u043e\u0435\u0439 \u0441\u0435\u0442\u0438 \u0434\u043e\u0441\u0442\u0430\u0432\u043a\u0438 \u043a\u043e\u043d\u0442\u0435\u043d\u0442\u0430 \u043d\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u043f\u0440\u043e\u043a\u0441\u0438 Pingora, \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u043e\u0433\u043e \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Rust. \u041d\u043e\u0432\u044b\u0439 \u043f\u0440\u043e\u043a\u0441\u0438 \u0437\u0430\u043c\u0435\u043d\u0438\u043b \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044e \u043d\u0430 \u0431\u0430\u0437\u0435 \u0441\u0435\u0440\u0432\u0435\u0440\u0430 NGINX \u0441 Lua-\u0441\u043a\u0440\u0438\u043f\u0442\u0430\u043c\u0438, \u0438 \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u0442 \u0431\u043e\u043b\u0435\u0435 \u0442\u0440\u0438\u043b\u043b\u0438\u043e\u043d\u0430 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 \u0432 \u0434\u0435\u043d\u044c. \u041e\u0442\u043c\u0435\u0447\u0430\u0435\u0442\u0441\u044f, \u0447\u0442\u043e \u043f\u0435\u0440\u0435\u0445\u043e\u0434 \u043d\u0430 \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 \u043f\u0440\u043e\u043a\u0441\u0438 \u043f\u043e\u0437\u0432\u043e\u043b\u0438\u043b \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u043d\u043e\u0432\u044b\u0435 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u0438 \u0443\u0432\u0435\u043b\u0438\u0447\u0438\u0442\u044c \u0437\u0430\u0449\u0438\u0449\u0451\u043d\u043d\u043e\u0441\u0442\u044c \u0437\u0430 \u0441\u0447\u0451\u0442 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0439 \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u043f\u0430\u043c\u044f\u0442\u044c\u044e, [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":105118,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-105117","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Cloudflare \u0441\u043e\u043e\u0431\u0449\u0438\u043b\u0430 \u043e \u043f\u0435\u0440\u0435\u0432\u043e\u0434\u0435 \u0441\u0432\u043e\u0435\u0439 \u0441\u0435\u0442\u0438 \u0434\u043e\u0441\u0442\u0430\u0432\u043a\u0438 \u043a\u043e\u043d\u0442\u0435\u043d\u0442\u0430 \u043d\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u043f\u0440\u043e\u043a\u0441\u0438 Pingora, \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u043e\u0433\u043e \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Rust.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/fr\/blog\/news\/cloudflare-pereshyol-s-nginx-na-sobstvennyj-prokci-pingora-napisannyj-na-yazyke-rust\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2\" \/>\n\t\t<meta property=\"og:locale\" content=\"fr_FR\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47Cloudflare \u043f\u0435\u0440\u0435\u0448\u0451\u043b \u0441 NGINX \u043d\u0430 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0439 \u043f\u0440\u043e\u043ac\u0438 Pingora, \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u0439 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Rust | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Cloudflare \u0441\u043e\u043e\u0431\u0449\u0438\u043b\u0430 \u043e \u043f\u0435\u0440\u0435\u0432\u043e\u0434\u0435 \u0441\u0432\u043e\u0435\u0439 \u0441\u0435\u0442\u0438 \u0434\u043e\u0441\u0442\u0430\u0432\u043a\u0438 \u043a\u043e\u043d\u0442\u0435\u043d\u0442\u0430 \u043d\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u043f\u0440\u043e\u043a\u0441\u0438 Pingora, \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u043e\u0433\u043e \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Rust.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/fr\/blog\/news\/cloudflare-pereshyol-s-nginx-na-sobstvennyj-prokci-pingora-napisannyj-na-yazyke-rust\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2022-09-16T13:36:40+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2022-09-16T13:36:40+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Cloudflare a abandonn\u00e9 NGINX au profit de son propre proxy Pingora, \u00e9crit en langage Rust | ProHoster","description":"La soci\u00e9t\u00e9 Cloudflare a annonc\u00e9 la migration de son r\u00e9seau de distribution de contenu vers l'utilisation du proxy Pingora, d\u00e9velopp\u00e9 en langage Rust.","canonical_url":"https:\/\/prohoster.info\/fr\/blog\/news\/cloudflare-pereshyol-s-nginx-na-sobstvennyj-prokci-pingora-napisannyj-na-yazyke-rust","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"fr_FR","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47Cloudflare \u043f\u0435\u0440\u0435\u0448\u0451\u043b \u0441 NGINX \u043d\u0430 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0439 \u043f\u0440\u043e\u043ac\u0438 Pingora, \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u0439 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Rust | ProHoster","og:description":"\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Cloudflare \u0441\u043e\u043e\u0431\u0449\u0438\u043b\u0430 \u043e \u043f\u0435\u0440\u0435\u0432\u043e\u0434\u0435 \u0441\u0432\u043e\u0435\u0439 \u0441\u0435\u0442\u0438 \u0434\u043e\u0441\u0442\u0430\u0432\u043a\u0438 \u043a\u043e\u043d\u0442\u0435\u043d\u0442\u0430 \u043d\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u043f\u0440\u043e\u043a\u0441\u0438 Pingora, \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u043e\u0433\u043e \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Rust.","og:url":"https:\/\/prohoster.info\/fr\/blog\/news\/cloudflare-pereshyol-s-nginx-na-sobstvennyj-prokci-pingora-napisannyj-na-yazyke-rust","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2022-09-16T13:36:40+00:00","article:modified_time":"2022-09-16T13:36:40+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"105117","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2026-02-09 21:46:50","updated":"2026-02-19 09:14:05","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts\/105117","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/comments?post=105117"}],"version-history":[{"count":2,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts\/105117\/revisions"}],"predecessor-version":[{"id":161830,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts\/105117\/revisions\/161830"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/media\/105118"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/media?parent=105117"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/categories?post=105117"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/tags?post=105117"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}