Tôi gặp sự cố yêu cầu tôi phân tích cú pháp nhiều tệp nhật ký từ máy từ xa. Có một vài biến chứng: 1) Các tập tin có thể được sử dụng 2) Các tập tin có thể khá lớn (100MB +) 3) Mỗi mục có thể đa dòngCách tốt nhất để đọc và phân tích cú pháp tệp văn bản lớn qua mạng là gì?
Để giải quyết vấn đề trong sử dụng, Tôi cần phải sao chép nó trước. Tôi hiện đang sao chép trực tiếp từ máy từ xa sang máy cục bộ và phân tích nó ở đó. Điều đó dẫn đến vấn đề 2. Vì các tập tin sao chép khá lớn nên nó có thể mất khá nhiều thời gian.
Để tăng thời gian phân tích cú pháp, tôi muốn làm cho trình phân tích cú pháp đa luồng, nhưng điều đó làm cho việc xử lý các mục nhiều hàng một chút phức tạp hơn.
Hai vấn đề chính là: 1) Làm cách nào để tăng tốc độ truyền tệp (Nén ?, Chuyển cục bộ ngay cả cần thiết ?, Tôi có thể đọc tệp đang sử dụng theo cách khác không?) 2) Làm thế nào để tôi đối phó với các mục nhiều dòng khi chia nhỏ các dòng giữa các luồng?
CẬP NHẬT: Lý do tôi không thực hiện phân tích cú pháp rõ ràng trên lý do máy chủ là tôi muốn có ít tác động nhất đến cpu nhất có thể. Tôi không muốn ảnh hưởng đến hiệu suất của hệ thống kiểm tra im.
Nếu sao chép tệp văn bản 100MB trực tiếp qua mạng mất x giây và có ứng dụng khách từ xa nén và gửi tệp và sau đó giảm phát/đọc mất x/4 giây, điều đó không đáng giá? (Lưu ý, tôi không thực sự biết phải mất bao lâu để nén/gửi/giải nén/đọc) – midas06
Bởi tất cả các phương tiện bạn có thể (và nên) sử dụng một số nén qua mạng. Như tôi đã nói, hãy xem xét các tùy chọn phát trực tuyến IO của bạn - một số người đã đề xuất một số thư viện zip. OTOH nếu bạn có thể đặt chương trình ở đầu từ xa, hãy xử lý ở đó! –