c10k

Is there any modern review of solutions to the 10000 client/sec problem

删除回忆录丶 提交于 2019-12-17 21:46:40
问题 (Commonly called the C10K problem) Is there a more contemporary review of solutions to the c10k problem (Last updated: 2 Sept 2006), specifically focused on Linux (epoll, signalfd, eventfd, timerfd..) and libraries like libev or libevent? Something that discusses all the solved and still unsolved issues on a modern Linux server? 回答1: The C10K problem generally assumes you're trying to optimize a single server, but as your referenced article points out "hardware is no longer the bottleneck".

TCP/IP - Solving the C10K with the thread per client approach

早过忘川 提交于 2019-12-17 17:24:43
问题 After reading the famous C10k article and searching on the web about how things have evolved since it was written, I would like to know if it would be possible for a today's standard server to handle >10000 concurrent connections using a thread per connection (possibly with the help of a pool of threads to avoid the creation/killing process). Some details that may affect the approach to the problem: Input, intermediate processing and output. Length of each connection. Technical specifications

What about the C10k in practice?

自古美人都是妖i 提交于 2019-12-07 09:36:41
问题 I just tested a small application made using Tornado , and i'm far from the 10k simultanuous connections ! To make the test, i've used Siege, under OpenSuse 12.2 64 bit , the machine is i7 with 8GB Here is the result: siege -c 4000 localhost:8000 I got this error: Transactions: 2164 hits Availability: 39.90 % Elapsed time: 6.85 secs Data transferred: 2.52 MB Response time: 1.04 secs Transaction rate: 315.91 trans/sec Throughput: 0.37 MB/sec Concurrency: 329.74 Successful transactions: 2164

Java Socket Programming does not work for 10,000 clients

∥☆過路亽.° 提交于 2019-12-03 06:02:44
问题 I can create multiple threads for supporting multi-client feature in socket programming; that's working fine. But if 10,000 clients want to be connected, my server cannot create so many threads. How can I manage the threads so that I can listen to all these clients simultaneously? Also, if in this case the server wants to send something to a particular client, then how is it possible? 回答1: You should investigate Java's NIO ("New I/O") library for non-blocking network programming. NIO was

Java Socket Programming does not work for 10,000 clients

折月煮酒 提交于 2019-12-02 18:36:08
I can create multiple threads for supporting multi-client feature in socket programming; that's working fine. But if 10,000 clients want to be connected, my server cannot create so many threads. How can I manage the threads so that I can listen to all these clients simultaneously? Also, if in this case the server wants to send something to a particular client, then how is it possible? You should investigate Java's NIO ("New I/O") library for non-blocking network programming. NIO was designed to solve precisely the server scalability problem you are facing! Introductory article about NIO:

Is there any modern review of solutions to the 10000 client/sec problem

北慕城南 提交于 2019-11-28 16:31:48
(Commonly called the C10K problem) Is there a more contemporary review of solutions to the c10k problem (Last updated: 2 Sept 2006), specifically focused on Linux (epoll, signalfd, eventfd, timerfd..) and libraries like libev or libevent? Something that discusses all the solved and still unsolved issues on a modern Linux server? The C10K problem generally assumes you're trying to optimize a single server, but as your referenced article points out "hardware is no longer the bottleneck". Therefore, the first step to take is to make sure it isn't easiest and cheapest to just throw more hardware

TCP/IP - Solving the C10K with the thread per client approach

让人想犯罪 __ 提交于 2019-11-28 03:02:30
After reading the famous C10k article and searching on the web about how things have evolved since it was written, I would like to know if it would be possible for a today's standard server to handle >10000 concurrent connections using a thread per connection (possibly with the help of a pool of threads to avoid the creation/killing process). Some details that may affect the approach to the problem: Input, intermediate processing and output. Length of each connection. Technical specifications of the server (cores, processors, RAM, etc...) Combining this system with alternative techniques like