Tôi có thể tạo nhiều luồng để hỗ trợ tính năng đa khách hàng trong lập trình socket; đó là làm việc tốt. Nhưng nếu 10.000 khách hàng muốn được kết nối, máy chủ của tôi không thể tạo quá nhiều luồng.Lập trình Socket Java không hoạt động với 10.000 khách hàng
Tôi làm cách nào để quản lý các chuỗi để tôi có thể nghe tất cả các ứng dụng này cùng một lúc?
Ngoài ra, nếu trong trường hợp này máy chủ muốn gửi thứ gì đó cho một khách hàng cụ thể, thì làm cách nào có thể?
Điều này đã được trả lời: http://stackoverflow.com/questions/592303/asynchronous-io-in-java – mparaz
Có một số đề xuất không chặn tuyệt vời của NIO bên dưới nhưng vì mục đích tóm tắt, hãy để tôi nêu rõ : Khi bạn mong đợi một vài khách hàng, bạn có thể đi một luồng trên mỗi socket. Nhưng khi bạn mong đợi 10K khách hàng, và tôi sẽ tranh luận (tùy thuộc vào I/O và CPU tải) rằng nếu bạn mong đợi bất cứ điều gì hơn 100 khách hàng bạn CẦN ĐI ĐẾN NIO WAY (không chặn IO). Ngay cả khi hệ điều hành của bạn thử 1.000 lần mỗi giây, bạn có thể tưởng tượng nhiệm vụ xử lý các ứng dụng khách 10K không? Nó không có ý nghĩa để đi với chặn ổ cắm với nhiều khách hàng! – Jeach