Tôi đang sử dụng ehcache 1.2.3. Vì kích thước bộ nhớ cache được chỉ định theo "phần tử", bộ nhớ có thể thay đổi rất nhiều (bộ đệm ehcache được sử dụng cùng với hibernate và cũng giữ bộ đệm truy vấn chuẩn nơi truy vấn trả về kết quả về kích thước có thể thay đổi). Câu hỏi của tôi là: điều gì sẽ xảy ra nếu JVM có ít bộ nhớ. Hiển thị của tôi từ đọc thay đổi của ehcache là ban đầu nó đang sử dụng tài liệu tham khảo mềm, nhưng kể từ khi java 1,4 được làm sạch chúng một cách thành công, các tham chiếu mềm cuối cùng đã bị loại bỏ. Do đó, nếu bộ nhớ cache quá lớn, tôi chỉ nhận được OutOfMemoryError? Không có gì trong Ehcache mà cố gắng ngăn chặn nó?Hành vi bộ nhớ Ehcache thấp
5
A
Trả lời
1
Bạn đúng trong đó nếu bạn muốn tạo OOM bằng ehcache, bạn có thể làm điều đó. Bạn đã có một cái nhìn tại các tùy chọn kích thước, mặc dù như maxEntriesLocalHeap/maxBytesLocalHeap. Sử dụng những người bạn có hiệu quả có thể ngăn chặn bộ nhớ cache để sử dụng nhiều hơn một số tiền được phân bổ của bộ nhớ.
Xem ví dụ http://ehcache.org/documentation/configuration/cache-size
Các vấn đề liên quan
- 1. Cảnh báo bộ nhớ thấp cho NSObject
- 2. C/C++ dịch sang lắp ráp, hành vi bộ nhớ mức thấp: làm thế nào nó được thực hiện?
- 3. Khó hiểu hành vi phân bổ bộ nhớ Haskell
- 4. Hành vi bộ nhớ khó hiểu trong Haskell
- 5. Kích thước bộ nhớ cache Ehcache khi chạy
- 6. tải ehcache diskstore nội dung vào bộ nhớ
- 7. bộ nhớ đệm ổi so với tiêu chuẩn ehcache
- 8. Android - cách xử lý lưu tệp trên bộ nhớ thiết bị thấp (Bộ nhớ trong/Bộ nhớ ngoài)
- 9. iPad nhận cảnh báo bộ nhớ với mức sử dụng bộ nhớ thấp
- 10. cách phân bổ bộ nhớ đúng trong C++ trong điều kiện bộ nhớ thấp
- 11. Tỷ lệ truy cập bộ nhớ cache bảng MySQL thấp
- 12. Android: Biến tĩnh null trên bộ nhớ thấp
- 13. Nén/giải nén LZW trong điều kiện bộ nhớ thấp
- 14. Mô phỏng bộ nhớ thấp bằng cách sử dụng C++
- 15. Mô phỏng pin yếu và bộ nhớ thấp trong Android
- 16. Ehcache & MultiThreading
- 17. Bộ nhớ đệm mùa xuân so với bộ nhớ đệm
- 18. java phân phối bộ nhớ cache cho độ trễ thấp, tính sẵn sàng cao
- 19. Xem phạm vi bộ nhớ trong gdb?
- 20. Nhận hành vi đồng bộ trong javascript?
- 21. hành vi kỳ lạ liên quan đến bộ nhớ đệm rõ ràng của "{}"
- 22. Ngăn chặn rò rỉ bộ nhớ với các hành vi được đính kèm
- 23. Làm cách nào để thay đổi hành vi bộ nhớ cache trên đĩa mặc định?
- 24. Tại sao hành vi này được phép trong Mô hình bộ nhớ Java?
- 25. Hành vi không xác định sizeof (* ptr) khi trỏ đến bộ nhớ không hợp lệ?
- 26. OSCache so với EHCache
- 27. bộ nhớ phát hành vào R
- 28. So sánh memcache, redis và ehcache dưới dạng khung bộ nhớ đệm được phân phối
- 29. Làm thế nào để xóa tất cả bộ nhớ đệm Hibernate (ehcache) bằng Spring?
- 30. ehcache không loại bỏ phần tử từ bộ nhớ trên đuổi
cảm ơn bạn, tôi thực sự có ấn tượng rằng trong các phiên bản gần đây của Ehcache có thể giới hạn rõ ràng mức tiêu thụ bộ nhớ. Nhưng câu hỏi của tôi là về Ehcache 1.2.3, vì đây là những gì được sử dụng trong hệ thống tôi đang làm việc. Và, một lần nữa, hiện tại ấn tượng của tôi (không được hỗ trợ bởi một thử nghiệm) là thực sự, nếu bộ nhớ cache quá lớn về mặt bộ nhớ được sử dụng (trái ngược với số phần tử được sử dụng), Ehcache 1.2.3 sẽ không cố gắng loại bỏ các mục giới hạn mức tiêu thụ bộ nhớ. –