Sunday, August 8, 2010

Squid cache chậm

squid cache bị chậm thường do I/O trên disk cache mà ra. Để gia tăng vận tốc, nên trải disk cache ra nhiều thư mục khác nhau nằm trên nhiều đĩa khác nhau (để gia tăng băng thông). Thay vì:
cache_dir ufs /path/to/cache 500000 16 256

nên chẻ nó ra:
cache_dir ufs /path/to/cache1 100000 16 256
cache_dir ufs /path/to/cache2 100000 16 256
cache_dir ufs /path/to/cache3 100000 16 256
cache_dir ufs /path/to/cache4 100000 16 256

Khi mount các partition trên, nên sử dụng noatimenodfratime options. Nếu hệ thống squid này an toàn và không có ai sử dụng (không access trực tiếp) thì nên thêm noxattr. Những cái này sẽ gia tăng hiệu suất cho disk cache. nếu được, nên dùng ReiserFS thay vì ext3 cho disk cache.

Ngoài ra nên chỉnh các directives:
maximum_object_size
minimum_object_size
maximum_object_size_in_memory

cho thích hợp. Không phải cái gì cũng cache thì tốt.

Nên set giá trị max_open_disk_fds cho thích hợp thay vì để mặc định nếu có vấn đề với disk I/O bởi vì nếu set 0 (unlimited) mà ulimit lại ấn định thấp hơn thì sẽ khiến squid bị trì trệ. Trên OS level, nên set file descriptor lên ít nhất là 8192 và nên áp dụng cùng giá trị này cho max_open_disk_fds.

No comments:

Post a Comment