{"id":40,"date":"2007-09-12T21:17:13","date_gmt":"2007-09-12T20:17:13","guid":{"rendered":"http:\/\/tmachine1.dh.bytemark.co.uk\/blog\/index.php\/2007\/09\/12\/thousands-of-clients-per-server-game-programming-gems-4\/"},"modified":"2007-09-12T21:21:14","modified_gmt":"2007-09-12T20:21:14","slug":"thousands-of-clients-per-server-game-programming-gems-4","status":"publish","type":"post","link":"http:\/\/new.t-machine.org\/index.php\/2007\/09\/12\/thousands-of-clients-per-server-game-programming-gems-4\/","title":{"rendered":"Thousands of Clients per Server (Game Programming Gems 4)"},"content":{"rendered":"<p>&#8230;was my section in the fourth GPG book from Charles River Media. And, sadly, although I tried to put some resources up on the web, a series of unfortunate events led to that all disappearing.<\/p>\n<p>But now &#8230; they&#8217;re back! (and I&#8217;ll be adding more followup stuff in the coming weeks\/months)<br \/>\n<!--more--><\/p>\n<p>If you&#8217;re interested in the article itself, there&#8217;s a <a href=\"http:\/\/www.pegasoft.ca\/minutes\/march_2006.html\">pretty good writeup here<\/a> (scroll halfway down to find it) that covers the main core points (although understandably leaves out several sections, and doesn&#8217;t include any of the diagrams from the book &#8211; if it were much longer they might get into trouble over copyright issues ;)).<\/p>\n<p>These are the most useful IMHO links from the references in my chapter. If you want the full text, you&#8217;ll have to buy the book (you can get it fairly cheaply these days &#8211; and you get more than 60 other gems as well, so it&#8217;s probably well worth it), but these refs themselves are pretty good reading.<\/p>\n<table>\n<tr>\n<th>GPG4 ref<\/th>\n<th>Title<\/th>\n<\/tr>\n<tr>\n<td>\n[Bansil01]<\/td>\n<td><a href=\"http:\/\/www.cs.cmu.edu\/~nikhil\/papers\/starvation\/srpt.starvation.ps\">&#8220;Analysis of SRPT Scheduling: Investigating Unfairness&#8221;<\/a>\n<\/td>\n<\/tr>\n<tr>\n<td>\n[EiffelSoftware03]<\/td>\n<td><a href=\"http:\/\/archive.eiffel.com\/doc\/manuals\/technology\/contract\/\">&#8220;An introduction to Design by Contract&#8221;<\/a>\n<\/td>\n<\/tr>\n<tr>\n<td>\n[FCF02]<\/td>\n<td><a href=\"http:\/\/www2002.org\/CDROM\/poster\/110\/\">&#8220;Fastest Connection First: A New Scheduling Policy for Web Servers&#8221;<\/a>\n<\/td>\n<\/tr>\n<tr>\n<td>\n[Gooch02]<\/td>\n<td><a href=\"http:\/\/www.cs.ucsb.edu\/labs\/oocsb\/papers\/TRCS98-31.pdf\">&#8220;I\/O Event Handling under linux&#8221;<\/a>\n<\/td>\n<\/tr>\n<tr>\n<td>\n[Josephs03]<\/td>\n<td><a href=\"http:\/\/www.scism.sbu.ac.uk\/ccsv\/josephmb\/CS-L2-OS\/oss\/week9.html#Scheduling%20Algorithms\">&#8220;Scheduling Algorithms&#8221;<\/a>\n<\/td>\n<\/tr>\n<tr>\n<td>\n[Kegel03]<\/td>\n<td><a href=\"http:\/\/www.kegel.com\/c10k.html\">&#8220;The C10K Problem&#8221;<\/a>\n<\/td>\n<\/tr>\n<tr>\n<td>\n[Mellon03]<\/td>\n<td><a href=\"http:\/\/www.gdconf.com\/archives\/2003\/Mellon_Larry-AutomatedTesting.ppt\">&#8220;Automated Testing of Massively Multiplayer Games&#8221;<\/a>\n<\/td>\n<\/tr>\n<tr>\n<td>\n[Welsh03]<\/td>\n<td><a href=\"http:\/\/www.eecs.harvard.edu\/~mdw\/proj\/seda\/\">&#8220;SEDA: An Architecture for Highly Concurrent Server Applications&#8221;\t<\/a>\n<\/td>\n<\/tr>\n<\/table>\n","protected":false},"excerpt":{"rendered":"<p>&#8230;was my section in the fourth GPG book from Charles River Media. And, sadly, although I tried to put some resources up on the web, a series of unfortunate events led to that all disappearing. But now &#8230; they&#8217;re back! (and I&#8217;ll be adding more followup stuff in the coming weeks\/months)<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[13,19,15,17],"tags":[],"_links":{"self":[{"href":"http:\/\/new.t-machine.org\/index.php\/wp-json\/wp\/v2\/posts\/40"}],"collection":[{"href":"http:\/\/new.t-machine.org\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/new.t-machine.org\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/new.t-machine.org\/index.php\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"http:\/\/new.t-machine.org\/index.php\/wp-json\/wp\/v2\/comments?post=40"}],"version-history":[{"count":0,"href":"http:\/\/new.t-machine.org\/index.php\/wp-json\/wp\/v2\/posts\/40\/revisions"}],"wp:attachment":[{"href":"http:\/\/new.t-machine.org\/index.php\/wp-json\/wp\/v2\/media?parent=40"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/new.t-machine.org\/index.php\/wp-json\/wp\/v2\/categories?post=40"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/new.t-machine.org\/index.php\/wp-json\/wp\/v2\/tags?post=40"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}