{"id":21412,"date":"2016-08-24T16:22:56","date_gmt":"2016-08-24T16:22:56","guid":{"rendered":"http:\/\/cloudinary_adds_support_for_http_2"},"modified":"2016-08-24T16:22:56","modified_gmt":"2016-08-24T16:22:56","slug":"cloudinary_adds_support_for_http_2","status":"publish","type":"post","link":"https:\/\/cloudinary.com\/blog\/cloudinary_adds_support_for_http_2","title":{"rendered":"Cloudinary now delivers images and videos over HTTP\/2"},"content":{"rendered":"<div class=\"wp-block-cloudinary-markdown \"><p>Even though websites have changed dramatically over the years \u2013 from simple text-based pages to advanced in-browser apps full of images and videos \u2013 the underlying HTTP protocol really hasn\u2019t changed &#8211; until recently, with the <a href=\"https:\/\/www.ietf.org\/blog\/2015\/02\/http2-approved\/\">approval of the HTTP\/2 protocol by the IETF<\/a>.  Today Cloudinary is proud to announce, as part of a CDN infrastructure upgrade, general availability of HTTP\/2 support in our image and video management solution. This will help you optimize the user experience on your app or website even more.<\/p>\n<p>The benefits of delivering your site images and videos over HTTP\/2 are: improving website performance; reducing the amount of bandwidth required by supporting header compression; improving latency and making it easier for developers to use optimized connections, by eliminating the need for domain sharding and other subtle performance tricks.<\/p>\n<p>As <a href=\"http:\/\/isthewebhttp2yet.com\/measurements\/adoption.html\">more and more sites begin to adopt the technology<\/a>, HTTP\/2 is generating a lot of buzz in the industry. Most browsers already support HTTP\/2 (though some only do so through over HTTPS) and it is designed to be backwards compatible with older versions.<\/p>\n<p>While the adoption of HTTP\/2 was slow initially, since January 2016 more sites have announced plans to move to HTTP\/2 or are offering true support of the protocol.  For example, at the beginning of May 2016 both Wikipedia and Blogspot announced that their sites were now supporting HTTP\/2.<\/p>\n<p><a href=\"http:\/\/isthewebhttp2yet.com\/measurements\/adoption.html\"><img decoding=\"async\" src=\"https:\/\/res.cloudinary.com\/cloudinary\/image\/upload\/q_auto,w_500,dpr_auto\/http2_chart.png\" alt=\"HTTP\/2 adoption over time\" loading=\"lazy\" class=\"c-transformed-asset\"  width=\"1000\" height=\"667\"\/><\/a>\n<a href=\"http:\/\/isthewebhttp2yet.com\/measurements\/adoption.html\">Source: http:\/\/isthewebhttp2yet.com\/measurements\/adoption.html<\/a><\/p>\n<p>The highest gains in performance for those moving to HTTP\/2 will be those with image heavy pages.  And the more images on a single page, the more improvement that will be seen. The reason: With HTTP\/2, instead of requesting images sequentially or creating many parallel connections, the browser makes a single connection to the server and optimizes the requests to all images over a single connection. A great (although extreme) example of the performance differences between HTTP\/2 and its predecessor HTTP\/1.1 can be found in this <a href=\"https:\/\/http2.akamai.com\/demo\">demo on the Akamai website<\/a>.<\/p>\n<p><a href=\"https:\/\/kinsta.com\/learn\/what-is-http2\/\"><img decoding=\"async\" src=\"https:\/\/res.cloudinary.com\/rancloud2\/image\/fetch\/w_500,dpr_auto,q_auto,fl_lossy\/https:\/\/kinsta.com\/wp-content\/themes\/kinsta\/images\/learn\/what-is-http2\/http1_vs_http2_2_both.png\" alt=\"HTTP2 vs HTTP1\" loading=\"lazy\" class=\"c-transformed-asset\"  width=\"500\" height=\"238\"\/><\/a>\n<a href=\"https:\/\/kinsta.com\/learn\/what-is-http2\/\">Source: https:\/\/kinsta.com\/learn\/what-is-http2\/<\/a><\/p>\n<p>We began beta testing HTTP\/2 about six months ago, and the results are impressive. Based on our measurements, the average improvement in page load time is close to 10%.<\/p>\n<h2>Ok, I want it &#8211; how do I get it?<\/h2>\n<p>For current Cloudinary users, there\u2019s nothing you need to do to benefit from our HTTP\/2 enhancements. As of today, we\u2019ve upgraded our CDN integrations, so that every url delivered from Cloudinary\u2019s standard CDN layer (using hostnames res.cloudinary.com or cloudname-res.cloudinary.com), in the HTTPS protocol, offers HTTP\/2 as a default connection method to the browser that calls it.<\/p>\n<p>Even if your website\u2019s HTML itself is not delivered via HTTP\/2, you will still gain a performance boost, as all the images on your site that are delivered via Cloudinary will be now pipelined through a single optimized connection.<\/p>\n<p>To check whether your images are delivered via HTTP\/2 install this <a href=\"https:\/\/chrome.google.com\/webstore\/detail\/mpbpobfflnpcgagjijhmgnchggcjblin\">Chrome extension<\/a>, which indicates the newest protocols.<\/p>\n<p>If you have a specialized or private CDN setup, contact your account manager or <a href=\"mailto:support@cloudinary.com\">support@cloudinary.com<\/a> to discuss your options.<\/p>\n<h2>Obsolete optimizations<\/h2>\n<p>There are two optimizations that Cloudinary supports that HTTP\/2 makes obsolete: domain sharding and sprites.<\/p>\n<p>If your site is delivered via HTTPS and you are using one of our client libraries, consider turning off CDN subdomains in your Cloudinary configuration (stop setting <code>secure_cdn_subdomain<\/code> to <code>true<\/code>).<\/p>\n<p>If you use sprites for performance reasons, you may see a benefit in using separate images, as multiple images will re-use the connection to load faster (but not as fast) as a sprite, but caching can improve as replacing a single image doesn\u2019t require generating a new sprite.<\/p>\n<h2>To sum it up<\/h2>\n<p>Content delivery is an important part of Cloudinary\u2019s end-to-end image and video management solution. We constantly upgrade and monitor the CDN-based delivery of assets, and HTTP\/2 is the latest feature we\u2019ve added. Keep watching this blog for further announcements regarding the CDN layer in the future.<\/p>\n<\/div>","protected":false},"excerpt":{"rendered":"","protected":false},"author":41,"featured_media":21413,"comment_status":"","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_cloudinary_featured_overwrite":false,"footnotes":""},"categories":[1],"tags":[264],"class_list":["post-21412","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-uncategorized","tag-security"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v25.6 (Yoast SEO v26.9) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Cloudinary now delivers images and videos over HTTP\/2<\/title>\n<meta name=\"description\" content=\"Every image delivered from Cloudinary&#039;s standard CDN layer, in the HTTPS protocol, offers HTTP\/2 as a default connection method to the browser that calls it.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/cloudinary.com\/blog\/cloudinary_adds_support_for_http_2\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Cloudinary now delivers images and videos over HTTP\/2\" \/>\n<meta property=\"og:description\" content=\"Every image delivered from Cloudinary&#039;s standard CDN layer, in the HTTPS protocol, offers HTTP\/2 as a default connection method to the browser that calls it.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/cloudinary.com\/blog\/cloudinary_adds_support_for_http_2\" \/>\n<meta property=\"og:site_name\" content=\"Cloudinary Blog\" \/>\n<meta property=\"article:published_time\" content=\"2016-08-24T16:22:56+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1645220641\/website-2021\/blog\/http2\/http2.jpg?_i=AA\" \/>\n\t<meta property=\"og:image:width\" content=\"500\" \/>\n\t<meta property=\"og:image:height\" content=\"334\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"NewsArticle\",\"@id\":\"https:\/\/cloudinary.com\/blog\/cloudinary_adds_support_for_http_2#article\",\"isPartOf\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/cloudinary_adds_support_for_http_2\"},\"author\":{\"name\":\"\",\"@id\":\"\"},\"headline\":\"Cloudinary now delivers images and videos over HTTP\/2\",\"datePublished\":\"2016-08-24T16:22:56+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/cloudinary_adds_support_for_http_2\"},\"wordCount\":8,\"publisher\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/cloudinary_adds_support_for_http_2#primaryimage\"},\"thumbnailUrl\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1645220641\/website-2021\/blog\/http2\/http2.jpg?_i=AA\",\"keywords\":[\"Security\"],\"inLanguage\":\"en-US\",\"copyrightYear\":\"2016\",\"copyrightHolder\":{\"@id\":\"https:\/\/cloudinary.com\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/cloudinary.com\/blog\/cloudinary_adds_support_for_http_2\",\"url\":\"https:\/\/cloudinary.com\/blog\/cloudinary_adds_support_for_http_2\",\"name\":\"Cloudinary now delivers images and videos over HTTP\/2\",\"isPartOf\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/cloudinary_adds_support_for_http_2#primaryimage\"},\"image\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/cloudinary_adds_support_for_http_2#primaryimage\"},\"thumbnailUrl\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1645220641\/website-2021\/blog\/http2\/http2.jpg?_i=AA\",\"datePublished\":\"2016-08-24T16:22:56+00:00\",\"description\":\"Every image delivered from Cloudinary's standard CDN layer, in the HTTPS protocol, offers HTTP\/2 as a default connection method to the browser that calls it.\",\"breadcrumb\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/cloudinary_adds_support_for_http_2#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/cloudinary.com\/blog\/cloudinary_adds_support_for_http_2\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/cloudinary.com\/blog\/cloudinary_adds_support_for_http_2#primaryimage\",\"url\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1645220641\/website-2021\/blog\/http2\/http2.jpg?_i=AA\",\"contentUrl\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1645220641\/website-2021\/blog\/http2\/http2.jpg?_i=AA\",\"width\":500,\"height\":334},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/cloudinary.com\/blog\/cloudinary_adds_support_for_http_2#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/cloudinary.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Cloudinary now delivers images and videos over HTTP\/2\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/cloudinary.com\/blog\/#website\",\"url\":\"https:\/\/cloudinary.com\/blog\/\",\"name\":\"Cloudinary Blog\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/cloudinary.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/cloudinary.com\/blog\/#organization\",\"name\":\"Cloudinary Blog\",\"url\":\"https:\/\/cloudinary.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/cloudinary.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1649718331\/Web_Assets\/blog\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877.png?_i=AA\",\"contentUrl\":\"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1649718331\/Web_Assets\/blog\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877.png?_i=AA\",\"width\":312,\"height\":60,\"caption\":\"Cloudinary Blog\"},\"image\":{\"@id\":\"https:\/\/cloudinary.com\/blog\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Cloudinary now delivers images and videos over HTTP\/2","description":"Every image delivered from Cloudinary's standard CDN layer, in the HTTPS protocol, offers HTTP\/2 as a default connection method to the browser that calls it.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/cloudinary.com\/blog\/cloudinary_adds_support_for_http_2","og_locale":"en_US","og_type":"article","og_title":"Cloudinary now delivers images and videos over HTTP\/2","og_description":"Every image delivered from Cloudinary's standard CDN layer, in the HTTPS protocol, offers HTTP\/2 as a default connection method to the browser that calls it.","og_url":"https:\/\/cloudinary.com\/blog\/cloudinary_adds_support_for_http_2","og_site_name":"Cloudinary Blog","article_published_time":"2016-08-24T16:22:56+00:00","og_image":[{"width":500,"height":334,"url":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1645220641\/website-2021\/blog\/http2\/http2.jpg?_i=AA","type":"image\/jpeg"}],"twitter_card":"summary_large_image","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"NewsArticle","@id":"https:\/\/cloudinary.com\/blog\/cloudinary_adds_support_for_http_2#article","isPartOf":{"@id":"https:\/\/cloudinary.com\/blog\/cloudinary_adds_support_for_http_2"},"author":{"name":"","@id":""},"headline":"Cloudinary now delivers images and videos over HTTP\/2","datePublished":"2016-08-24T16:22:56+00:00","mainEntityOfPage":{"@id":"https:\/\/cloudinary.com\/blog\/cloudinary_adds_support_for_http_2"},"wordCount":8,"publisher":{"@id":"https:\/\/cloudinary.com\/blog\/#organization"},"image":{"@id":"https:\/\/cloudinary.com\/blog\/cloudinary_adds_support_for_http_2#primaryimage"},"thumbnailUrl":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1645220641\/website-2021\/blog\/http2\/http2.jpg?_i=AA","keywords":["Security"],"inLanguage":"en-US","copyrightYear":"2016","copyrightHolder":{"@id":"https:\/\/cloudinary.com\/#organization"}},{"@type":"WebPage","@id":"https:\/\/cloudinary.com\/blog\/cloudinary_adds_support_for_http_2","url":"https:\/\/cloudinary.com\/blog\/cloudinary_adds_support_for_http_2","name":"Cloudinary now delivers images and videos over HTTP\/2","isPartOf":{"@id":"https:\/\/cloudinary.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/cloudinary.com\/blog\/cloudinary_adds_support_for_http_2#primaryimage"},"image":{"@id":"https:\/\/cloudinary.com\/blog\/cloudinary_adds_support_for_http_2#primaryimage"},"thumbnailUrl":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1645220641\/website-2021\/blog\/http2\/http2.jpg?_i=AA","datePublished":"2016-08-24T16:22:56+00:00","description":"Every image delivered from Cloudinary's standard CDN layer, in the HTTPS protocol, offers HTTP\/2 as a default connection method to the browser that calls it.","breadcrumb":{"@id":"https:\/\/cloudinary.com\/blog\/cloudinary_adds_support_for_http_2#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/cloudinary.com\/blog\/cloudinary_adds_support_for_http_2"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/cloudinary.com\/blog\/cloudinary_adds_support_for_http_2#primaryimage","url":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1645220641\/website-2021\/blog\/http2\/http2.jpg?_i=AA","contentUrl":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1645220641\/website-2021\/blog\/http2\/http2.jpg?_i=AA","width":500,"height":334},{"@type":"BreadcrumbList","@id":"https:\/\/cloudinary.com\/blog\/cloudinary_adds_support_for_http_2#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/cloudinary.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Cloudinary now delivers images and videos over HTTP\/2"}]},{"@type":"WebSite","@id":"https:\/\/cloudinary.com\/blog\/#website","url":"https:\/\/cloudinary.com\/blog\/","name":"Cloudinary Blog","description":"","publisher":{"@id":"https:\/\/cloudinary.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/cloudinary.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/cloudinary.com\/blog\/#organization","name":"Cloudinary Blog","url":"https:\/\/cloudinary.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/cloudinary.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1649718331\/Web_Assets\/blog\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877.png?_i=AA","contentUrl":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1649718331\/Web_Assets\/blog\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877\/cloudinary_logo_for_white_bg_1937437aa7_19374666c7_193742f877.png?_i=AA","width":312,"height":60,"caption":"Cloudinary Blog"},"image":{"@id":"https:\/\/cloudinary.com\/blog\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":""}]}},"jetpack_featured_media_url":"https:\/\/res.cloudinary.com\/cloudinary-marketing\/images\/f_auto,q_auto\/v1645220641\/website-2021\/blog\/http2\/http2.jpg?_i=AA","_links":{"self":[{"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/posts\/21412","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/users\/41"}],"replies":[{"embeddable":true,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/comments?post=21412"}],"version-history":[{"count":0,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/posts\/21412\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/media\/21413"}],"wp:attachment":[{"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/media?parent=21412"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/categories?post=21412"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/cloudinary.com\/blog\/wp-json\/wp\/v2\/tags?post=21412"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}