{"id":262,"date":"2003-10-20T00:00:00","date_gmt":"2003-10-19T22:00:00","guid":{"rendered":"https:\/\/wwwneu.strehle.de\/tim\/weblog\/archives\/2003\/10\/20\/195\/"},"modified":"2003-10-20T00:00:00","modified_gmt":"2003-10-19T22:00:00","slug":"195","status":"publish","type":"post","link":"https:\/\/www.strehle.de\/tim\/weblog\/archives\/2003\/10\/20\/195\/","title":{"rendered":"Caching at the SQL-Client Layer"},"content":{"rendered":"<p><a href=\"http:\/\/www.oreillynet.com\/pub\/wlg\/3896\" title=\"O'Reilly Network: Caching at the SQL-Client Layer [Oct. 17, 2003]\">Chris DiBona<\/a> has a nice idea on SQL result caching: &#8222;First thing, before any actual real queries happen, the page construction logic should query the tracking table to get a list of tables that have become dirty since the last time a page was constructed, this can commonly become the only query that a page might see. In the event that a list of &#8222;dirtied&#8220; tables has been returned, the routine should remove the cached tables from whatever storage you&#8217;re using.&#8220;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Chris DiBona has a nice idea on SQL result caching: &#8222;First thing, before any actual real queries happen, the page construction logic should query the tracking table to get a list of tables that have become dirty since the last time a page was constructed, this can commonly become the only query that a page [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_share_on_mastodon":"0"},"categories":[1],"tags":[],"class_list":["post-262","post","type-post","status-publish","format-standard","hentry","category-weblog"],"share_on_mastodon":{"url":"","error":""},"_links":{"self":[{"href":"https:\/\/www.strehle.de\/tim\/wp-json\/wp\/v2\/posts\/262","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.strehle.de\/tim\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.strehle.de\/tim\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.strehle.de\/tim\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.strehle.de\/tim\/wp-json\/wp\/v2\/comments?post=262"}],"version-history":[{"count":0,"href":"https:\/\/www.strehle.de\/tim\/wp-json\/wp\/v2\/posts\/262\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.strehle.de\/tim\/wp-json\/wp\/v2\/media?parent=262"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.strehle.de\/tim\/wp-json\/wp\/v2\/categories?post=262"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.strehle.de\/tim\/wp-json\/wp\/v2\/tags?post=262"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}