Content deleted Content added
m added the word "a" |
|||
Line 1:
The '''C10k problem''' is the problem of optimising [[network socket]]s to handle a large number of clients at the same time.<ref name=C10K>{{cite web|url=http://www.kegel.com/c10k.html |title=The C10K problem |archivedate=2013-07-18 |archiveurl=https://www.webcitation.org/6ICibHuyd?url=http://www.kegel.com/c10k.html |url-status=live }}</ref> The name C10k is a [[numeronym]] for [[Concurrent computing|concurrently]] handling ten thousand connections.<ref name=Liu-Deters>{{Cite book | last1 = Liu | first1 = D. | last2 = Deters | first2 = R. | chapter = The Reverse C10K Problem for Server-Side Mashups | doi = 10.1007/978-3-642-01247-1_16 | title = Service-Oriented Computing – ICSOC 2008 Workshops | series = Lecture Notes in Computer Science | volume = 5472 | pages = 166 | year = 2009 | isbn = 978-3-642-01246-4 | pmid = | pmc = }}</ref> Note that concurrent connections are not the same as [[requests per second]], though they are similar: handling many requests per second requires high throughput (processing them quickly), while a high number of concurrent connections requires efficient scheduling of connections. In other words, handling many requests per second is concerned with the speed of handling requests, whereas a system capable of handling a high number of concurrent connections does not necessarily have to be a fast system, only one where each request will deterministically return a response within a (not necessarily fixed) finite amount of time.
The problem of socket server optimisation has been studied because a number of factors must be considered to allow a web server to support many clients. This can involve a combination of operating system constraints and web server software limitations. According to the scope of services to be made available and the capabilities of the operating system as well as hardware considerations such as multi-processing capabilities, a multi-threading model or a [[single threading]] model can be preferred. Concurrently with this aspect, which involves considerations regarding memory management (usually operating system related), strategies implied relate to the very diverse aspects of the I/O management.<ref name=Liu-Deters />
|