{"id":11736,"date":"2025-10-19T14:54:16","date_gmt":"2025-10-19T14:54:16","guid":{"rendered":"https:\/\/putridparrot.com\/blog\/?p=11736"},"modified":"2025-10-19T14:54:16","modified_gmt":"2025-10-19T14:54:16","slug":"using-garnet","status":"publish","type":"post","link":"https:\/\/putridparrot.com\/blog\/using-garnet\/","title":{"rendered":"Using Garnet"},"content":{"rendered":"<p><a href=\"https:\/\/github.com\/microsoft\/garnet\" target=\"_blank\">Garnet<\/a> is a Redis (<a href=\"https:\/\/redis.io\/docs\/latest\/develop\/reference\/protocol-spec\/\" target=\"_blank\">RESP<\/a>) compatible cache from Microsoft Research, it&#8217;s used internally within Microsoft but as it&#8217;s a research project it&#8217;s possible the design etc. will change\/evolve.<\/p>\n<p>Not only is is Redis compatible, it&#8217;s written in C#, so ideal for .NET native environments. Check out the <a href=\"https:\/\/microsoft.github.io\/garnet\/\" target=\"_blank\">Garnet website<\/a> for more information<\/p>\n<p>I&#8217;ve shown code to interact from C#\/.NET to Redis in the past, the same code will work with Garnet.<\/p>\n<p>Here&#8217;s a Dockerfile to create an instance of Garnet<\/p>\n<pre class=\"brush: plain; title: ; notranslate\" title=\"\">\r\nservices:\r\n  garnet:\r\n    image: &#039;ghcr.io\/microsoft\/garnet&#039;\r\n    ulimits:\r\n      memlock: -1\r\n    container_name: garnet\r\n    ports:\r\n      - &quot;6379:6379&quot;\r\n<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Garnet is a Redis (RESP) compatible cache from Microsoft Research, it&#8217;s used internally within Microsoft but as it&#8217;s a research project it&#8217;s possible the design etc. will change\/evolve. Not only is is Redis compatible, it&#8217;s written in C#, so ideal for .NET native environments. Check out the Garnet website for more information I&#8217;ve shown code [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[3,79],"tags":[],"class_list":["post-11736","post","type-post","status-publish","format-standard","hentry","category-c","category-caching"],"jetpack_sharing_enabled":true,"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/putridparrot.com\/blog\/wp-json\/wp\/v2\/posts\/11736","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/putridparrot.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/putridparrot.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/putridparrot.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/putridparrot.com\/blog\/wp-json\/wp\/v2\/comments?post=11736"}],"version-history":[{"count":4,"href":"https:\/\/putridparrot.com\/blog\/wp-json\/wp\/v2\/posts\/11736\/revisions"}],"predecessor-version":[{"id":11959,"href":"https:\/\/putridparrot.com\/blog\/wp-json\/wp\/v2\/posts\/11736\/revisions\/11959"}],"wp:attachment":[{"href":"https:\/\/putridparrot.com\/blog\/wp-json\/wp\/v2\/media?parent=11736"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/putridparrot.com\/blog\/wp-json\/wp\/v2\/categories?post=11736"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/putridparrot.com\/blog\/wp-json\/wp\/v2\/tags?post=11736"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}