{"id":627,"date":"2008-02-27T10:22:31","date_gmt":"2008-02-27T15:22:31","guid":{"rendered":"http:\/\/blogs.law.harvard.edu\/hoanga\/2008\/02\/27\/where-everyone-goes-explains-their-out"},"modified":"2008-02-27T10:22:31","modified_gmt":"2008-02-27T15:22:31","slug":"where-everyone-goes-explains-their-outage","status":"publish","type":"post","link":"https:\/\/archive.blogs.harvard.edu\/hoanga\/2008\/02\/27\/where-everyone-goes-explains-their-outage\/","title":{"rendered":"&#8216;Where everyone goes&#8217; explains their outage"},"content":{"rendered":"<p>Software Maniacs has <a href=\"http:\/\/softwaremaniacs.org\/blog\/2008\/02\/24\/why-offline-crashed-en\/\">a great blog post<\/a> explaining what went wrong with one of their Django deployments.  In the end it wasn&#8217;t exactly Django but a mix of how a particular table for the backend database (MySQL) was being abused by the web application (the sessions table.  Here&#8217;s a snippet:<\/p>\n<blockquote><p>\nIn general Django\u2019s sessions are made smart enough \u2014 while stored in a DB they don\u2019t touch it at all if your application doesn\u2019t write anything in them. Unfortunately we used them in an interesting manner.\n<\/p><\/blockquote>\n<ul>\n<li><a href=\"http:\/\/softwaremaniacs.org\/blog\/2008\/02\/24\/why-offline-crashed-en\/\">Read it yourself<\/a><\/li>\n<li><a href=\"http:\/\/www.highscalability.com\/yandex-architecture\">Kudos to High Scalability<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Software Maniacs has a great blog post explaining what went wrong with one of their Django deployments. In the end it wasn&#8217;t exactly Django but a mix of how a particular table for the backend database (MySQL) was being abused by the web application (the sessions table. Here&#8217;s a snippet: In general Django\u2019s sessions are [&hellip;]<\/p>\n","protected":false},"author":703,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1101,260],"tags":[],"class_list":["post-627","post","type-post","status-publish","format-standard","hentry","category-geek","category-tech"],"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/archive.blogs.harvard.edu\/hoanga\/wp-json\/wp\/v2\/posts\/627","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/archive.blogs.harvard.edu\/hoanga\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/archive.blogs.harvard.edu\/hoanga\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/archive.blogs.harvard.edu\/hoanga\/wp-json\/wp\/v2\/users\/703"}],"replies":[{"embeddable":true,"href":"https:\/\/archive.blogs.harvard.edu\/hoanga\/wp-json\/wp\/v2\/comments?post=627"}],"version-history":[{"count":0,"href":"https:\/\/archive.blogs.harvard.edu\/hoanga\/wp-json\/wp\/v2\/posts\/627\/revisions"}],"wp:attachment":[{"href":"https:\/\/archive.blogs.harvard.edu\/hoanga\/wp-json\/wp\/v2\/media?parent=627"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/archive.blogs.harvard.edu\/hoanga\/wp-json\/wp\/v2\/categories?post=627"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/archive.blogs.harvard.edu\/hoanga\/wp-json\/wp\/v2\/tags?post=627"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}