Cách tiếp cận chung là tách riêng việc thu thập thông tin và tải xuống các chủ đề riêng biệt, với số lượng Chủ đề tối đa, tùy thuộc vào yêu cầu bộ nhớ của bạn (nghĩa là RAM tối đa bạn muốn sử dụng để lưu trữ tất cả thông tin này).
Tuy nhiên, crawler4j đã cung cấp cho bạn chức năng này. Bằng cách chia nhỏ tải xuống và thu thập thông tin vào các Chủ đề riêng biệt, bạn cố gắng tối đa hóa việc sử dụng kết nối của mình, kéo xuống càng nhiều dữ liệu vì cả kết nối của bạn đều có thể xử lý và máy chủ cung cấp thông tin có thể gửi cho bạn. Giới hạn tự nhiên cho điều này là, ngay cả khi bạn sinh ra 1.000 Chủ đề, nếu các máy chủ chỉ được cung cấp cho bạn nội dung ở 0,3k mỗi giây, thì vẫn chỉ có 300 KB mỗi giây mà bạn sẽ tải xuống. Nhưng bạn không thể kiểm soát được khía cạnh đó, tôi sợ. Một cách khác để tăng tốc độ là chạy trình thu thập thông tin trên hệ thống có đường ống tải lên internet, vì tốc độ tải xuống tối đa của bạn là, tôi đoán, yếu tố hạn chế về tốc độ bạn có thể nhận dữ liệu hiện tại là bao nhiêu . Ví dụ: nếu bạn đang chạy thu thập dữ liệu trên một phiên bản AWS (hoặc bất kỳ nền tảng ứng dụng đám mây nào), bạn sẽ được hưởng lợi từ kết nối tốc độ cực cao của chúng tới xương sống và rút ngắn thời gian thu thập thông tin có hiệu quả mở rộng băng thông của bạn vượt xa những gì bạn sẽ nhận được tại một kết nối nhà hoặc văn phòng (trừ khi bạn làm việc tại một ISP, đó là). Về mặt lý thuyết, trong trường hợp ống của bạn cực kỳ lớn, giới hạn bắt đầu trở thành tốc độ ghi tối đa của đĩa, cho bất kỳ dữ liệu nào bạn đang lưu vào bộ nhớ đĩa cục bộ (hoặc mạng).
Điều đó hoàn hảo, cảm ơn bạn! – seinecle