Na verdade, estou aprendendo redes de computadores e, enquanto estou nisso, estou confuso em como um servidor da web mantém várias conexões?
Simplesmente, eu aprendi através de uma pesquisa no Google que os soquetes lidam com uma solicitação de cada cliente.
Digamos que exista um servidor Web e digamos 2 clientes com IPs
Client A: 5.5.5.5
Client B: 10.10.10.10
Ambos tentam se conectar ao servidor na porta 80.
Agora, ao pesquisar no Google, o servidor escuta na porta 80 os pedidos recebidos. Digamos que um cliente A tente se conectar ao servidor (faça a conexão TCP / IP). Durante o qual um soquete é criado entre esses dois. Em seguida, ele é executado como um encadeamento separado para sua comunicação adicional, fazendo com que o servidor escute novamente outras solicitações de clientes nessa porta específica. E o cliente B se conecta da mesma maneira.
Agora minha primeira pergunta é:
1. How does server communicate with these two clients simultaneously
after the connection has been established?
Agora praticamente não apenas 2 clientes, mas milhares e milhões de usuários podem se conectar a um servidor.
Então minha próxima pergunta é:
2. Now, how do those thousands of clients get connected to a single server?
If we assume every client is connected to the server through wire, it is not
practically possible to maintain that many sockets on a hardware for
connection. How those thousands connections are made and handled?
Por fim, minha terceira pergunta é:
3. Above I said (actually heard) how **client A** connected to the the server
and similarly the client B.
But I didn't get the part stating "after a TCP/IP connection is made they
continue separately in a separate socket and making server to listen for
other client requests." What does that mean? If one client is communicating
to the server, how come other can communicate at the same time to same server.
Isn't it like while a student is asking question to a teacher, other can't
ask at the same time since that particular student is busy or occupying the
teacher at the moment so others should wait, which we compare than client B
should wait when client A is communicating.
Estas são minhas perguntas básicas que não estou recebendo. Por favor, corrija-me se estou entendendo tudo errado. Você pode me sugerir alguns livros / pdfs para ler se as respostas são detalhadas ou não focadas em partes específicas. obrigado