Content deleted Content added
Citation bot (talk | contribs) Alter: url. URLs might have been anonymized. | Use this bot. Report bugs. | Suggested by AManWithNoPlan | #UCB_CommandLine |
No edit summary |
||
Line 1:
{{Short description|Problem of optimising network sockets to handle a large number of clients at the same time}}
The '''C10k problem''' is the problem of optimizing [[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 |archive-date=2013-07-22 |archive-url=https://web.archive.org/web/20130722134723/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 }}</ref> Handling many concurrent connections is a different problem
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
== History ==
The term ''C10k'' was coined in 1999 by software engineer Dan Kegel,{{r|aosa2:nginx}}<ref name = "Dan Kegel, kegel.com, 1999" /> citing the [[Simtel]] FTP host, [[cdrom.com]], serving 10,000 clients at once over 1 [[gigabit per second]] [[Ethernet]] in that year.<ref name="C10K" /> The term has since been used for the general issue of large number of clients, with similar numeronyms for larger number of connections, most recently "C10M" in the 2010s to refer to 10 million concurrent connection.<ref name="C10M">{{Cite web|url=https://migratorydata.com/blog/migratorydata-solved-the-c10m-problem/|title=How MigratoryData solved the C10M problem: 10 Million Concurrent Connections on a Single Commodity Server|website=migratorydata.com|language=en|date=2015-05-20|access-date=2021-10-15|author=Mihai Rotaru}}</ref>
By the early 2010s millions of connections on a single commodity 1U rackmount server became possible: over 2 million connections ([[WhatsApp]], 24 cores, using [[Erlang (programming language)|Erlang]] on [[FreeBSD]])
Common applications of very high
== See also ==
|