Có lý do để không sử dụng bộ nhớ cục bộ HTML5 cho nội dung


9

Trên nhiều trang web tĩnh, tổng kích thước của nội dung văn bản thực tế của 20 trang phổ biến nhất sẽ có giá dưới 100kb.

Tôi sẽ tưởng tượng rằng có thể tận dụng bộ nhớ cục bộ HTML5 để tải xuống nội dung qua AJAX từ máy chủ trong một tệp duy nhất, lưu nó vào bộ nhớ cục bộ và sử dụng nó với khung công tác dữ liệu dựa trên dữ liệu như angularJS. Trong thực tế, bạn có thể tải xuống nội dung thậm chí nhiều hơn âm thầm trong nền. Điều này có khả năng có thể làm cho trải nghiệm người dùng rất nhanh và đáp ứng.

Mặc dù vậy, tôi chưa thấy trang web nào hoạt động theo cách này. Có một lý do mà tôi đang thiếu sẽ làm cho điều này trở thành một ý tưởng tồi?


1
Đừng quên làm cho SEO hoạt động. Và, bạn có thực sự cần phải phát minh lại bộ nhớ đệm trình duyệt?
jfriend00

Bạn quên rằng rất nhiều điều này được thực hiện cho bạn bởi trình duyệt. Một lý do chính đáng để không làm điều này sẽ là: nếu bạn cần cập nhật một tài nguyên như vậy thì sao?
Neil

Đó là một ý tưởng tồi bởi vì việc cung cấp các tiêu đề bắt chính xác cho các yêu cầu GET của bạn sẽ dễ dàng hơn nhiều và để các trình duyệt thực hiện công việc nặng nhọc.
Esben Skov Pedersen

@ jfriend00, vâng tôi cũng thắc mắc về SEO. Tôi tin rằng trình thu thập thông tin của Google có thể xử lý một số javascript cơ bản nhưng điều này có thể vượt quá phạm vi trình thu thập thông tin của họ.
Matthew Dolman

@Neil, tôi cho rằng bạn có thể hết thời gian chờ được xây dựng tùy thuộc vào tài nguyên. Như tôi đã đề cập trong bài đăng, tôi đã suy nghĩ nhiều hơn về các trang web tĩnh sẽ không được cập nhật trong thời gian ngắn
Matthew Dolman

Câu trả lời:


6

Tôi nghĩ rằng câu trả lời ngắn gọn cho câu hỏi của bạn là lý do bạn không thấy nhiều điều xảy ra như những gì bạn mô tả là bộ nhớ cục bộ HTML5 không theo kịp nhiệm vụ và chúng tôi chỉ còn hai năm gần đây. được chỉ định sẽ cung cấp một giải pháp tốt hơn.

Giới thiệu cụ thể về bộ nhớ cục bộ HTML5: Nó có một điều kiện chủng tộc và một số vấn đề khác khiến nó không phù hợp để sử dụng trong sản xuất cho bất kỳ ứng dụng nào mà bạn muốn đảm bảo không bị hỏng dữ liệu và bạn muốn có thể lưu trữ nhiều hơn chỉ là chuỗi .

Những vấn đề trong lưu trữ cục bộ có thể có thể được khắc phục nhưng thực tế là không có nhà cung cấp công cụ trình duyệt nào quan tâm đến vấn đề này trong việc chìm thêm tài nguyên vào việc triển khai lưu trữ cục bộ của họ. Tất cả họ đều muốn các nhà phát triển Web sử dụng các giải pháp thay thế cho bộ nhớ cục bộ.

Dù sao, đối với trường hợp sử dụng mà bạn mô tả, rất may có những giải pháp thực sự mạnh mẽ hơn trong công việc. Phần quan trọng trong tương lai sẽ là Service Worker Worker , trong bối cảnh của câu hỏi này, các giao diện CacheCacheStorage của Service Worker cụ thể.

Ngoài ra IndexedDB là giải pháp cấp sản xuất mà thời gian chạy Web hiện có cho trường hợp lưu trữ dữ liệu mạnh mẽ trên máy khách, với việc triển khai hiệu quả và kiểm soát nhiều tính năng hơn đối với loại dữ liệu được lưu trữ và cách lưu trữ.


"local storage is in no way up to the task"- YES lên cho công việc. bạn có thể kết xuất bất kỳ phản hồi nào đến từ máy chủ và đối với các ứng dụng đơn giản, bạn sẽ không vượt quá 5MBgiới hạn. nó không có nghĩa cho nó, nhưng vẫn có thể sử dụng thành công rất nhiều cho các phản hồi của máy chủ bộ đệm.
vsync
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.