Hướng dẫn dùng z.lib trong PHP
Tôi có một lượng lớn dữ liệu cần di chuyển bằng cách sử dụng hai tập lệnh PHP: một ở phía máy khách sử dụng tập lệnh PHP dòng lệnh và một phía sau Apache. Tôi ĐĂNG dữ liệu lên phía máy chủ và sử dụng luồng đầu vào php: // để lưu dữ liệu đó ở đầu máy chủ web. Để tránh đạt đến bất kỳ giới hạn bộ nhớ nào, dữ liệu được tách thành các phần 500kB cho mỗi yêu cầu POST. Tất cả điều này hoạt động tốt. Bây giờ, để tiết kiệm băng thông và tăng tốc độ, tôi muốn nén dữ liệu trước khi gửi và giải nén khi nhận được ở đầu bên kia. Tôi đã tìm thấy 3 cặp hàm có thể thực hiện công việc, nhưng tôi không thể quyết định sử dụng cặp nào:
Bạn muốn giới thiệu cặp hàm nào và tại sao? CẬP NHẬT: Tôi vừa đọc Câu hỏi thường gặp về zlib: Định dạng gzip (
72 hữu ích 2 bình luận 30k xem chia sẻ answer 96 Tất cả những thứ này đều có thể được sử dụng. Có sự khác biệt nhỏ giữa ba:
Cả ba đều sử dụng cùng một thuật toán, vì vậy chúng sẽ không khác nhau về tốc độ hoặc hiệu quả. Khi nén các chuỗi rất ngắn, chi phí chung của mỗi phương pháp trở nên có liên quan vì đối với đầu vào rất ngắn, chi phí chung có thể bao gồm một phần đáng kể của đầu ra. Chi phí cho mỗi phương pháp, được đo bằng cách nén một chuỗi rỗng, là:
96 hữu ích 2 bình luận chia sẻ answer 48 Tôi không phải là chuyên gia PHP và không thể trả lời câu hỏi được đặt ra, nhưng có vẻ như có rất nhiều phỏng đoán đang diễn ra ở đây và thông tin mờ nhạt đang được cung cấp. DEFLATE là tên của thuật toán nén được sử dụng bởi ZLIB, GZIP và các thuật toán khác. Về lý thuyết, GZIP hỗ trợ các thuật toán nén thay thế, nhưng trên thực tế thì không có. Không có cái gọi là "thuật toán GZIP". GZIP sử dụng thuật toán DEFLATE và đặt dữ liệu đóng khung xung quanh dữ liệu nén. Với GZIP, bạn có thể thêm những thứ như tên tệp, thời gian của tệp, CRC, thậm chí là nhận xét. Tuy nhiên, siêu dữ liệu này là tùy chọn và nhiều gzippers chỉ bỏ qua nó. ZLIB cũng tương tự, ngoại trừ với một tập siêu dữ liệu khác, hạn chế hơn và một tiêu đề 2 byte cụ thể. Đây là tất cả trong IETF RFCs 1950 , 1951 và 1952 . Nói rằng "thuật toán gzip nén tốt hơn DEFLATE" chỉ là vô nghĩa. Không có thuật toán gzip. Và thuật toán được sử dụng ở định dạng GZIP là DEFLATE . 48 hữu ích 0 bình luận chia sẻ answer 7 Tất cả các phương pháp về cơ bản là giống nhau, sự khác biệt giữa chúng chủ yếu là ở tiêu đề. Cá nhân tôi sử dụng gzencode, điều này sẽ tạo ra đầu ra tương đương với lời gọi dòng lệnh tới tiện ích gzip. 7 hữu ích 0 bình luận chia sẻ answer 0 Tôi đã phải giải nén một tệp nén gzip trong PHP bằng C ++. Tôi phát hiện ra rằng PHP Thêm: Có vẻ như hầu hết mọi người trong chủ đề này không biết "Phương pháp nén" có nghĩa là gì. 0 hữu ích 0 bình luận chia sẻ Đăng nhập để trả lời câu hỏiCó thể bạn quan tâm |