Trên thực tế tôi đang học Mạng máy tính và trong khi ở đó, tôi bối rối về cách một máy chủ web duy trì nhiều kết nối?
Nói một cách đơn giản, tôi đã học được một số điều khó hiểu là các socket xử lý từng yêu cầu của khách hàng.
Vì vậy, giả sử có một máy chủ web và cho phép nói 2 khách hàng có IP
Client A: 5.5.5.5
Client B: 10.10.10.10
Cả hai đều cố gắng kết nối với máy chủ tại cổng 80.
Bây giờ, từ việc tìm hiểu những gì tôi nhận được, máy chủ lắng nghe ở cổng 80 cho các yêu cầu đến. Sau đó, giả sử khách hàng A cố gắng kết nối với máy chủ (tạo kết nối TCP / IP). Trong đó một ổ cắm được tạo ra giữa hai. Sau đó, nó được thực thi như một luồng riêng cho giao tiếp tiếp theo của nó làm cho máy chủ nghe lại các yêu cầu máy khách khác tại cổng cụ thể đó. Và khách hàng B kết nối theo cùng một cách.
Bây giờ câu hỏi đầu tiên của tôi là:
1. How does server communicate with these two clients simultaneously
after the connection has been established?
Bây giờ thực tế không chỉ có 2 khách hàng mà hàng ngàn và hàng triệu người dùng có thể kết nối với một máy chủ.
Sau đó, câu hỏi tiếp theo của tôi là:
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?
Cuối cùng, câu hỏi thứ 3 của tôi là:
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.
Đây là những câu hỏi cơ bản của tôi mà tôi không nhận được. Xin hãy sửa tôi nếu tôi hiểu sai tất cả. Bạn có thể gợi ý cho tôi một số sách / pdf để đọc nếu câu trả lời chi tiết hoặc không tập trung vào một phần cụ thể. Cảm ơn