Swappiness, một thông số trong kernel Linux giúp kiểm soát lượng RAM và Swap khi xử các tiến trình. Khi một tiến trình xử lý bị thiếu RAM vật lý, swappiness sẽ đẩy sang Swap để tránh tình trạng “out-of-memory” thường gặp. Tuy nhiên swap nằm trên đĩa cứng nên có tốc độc xử lý chậm hơn rất nhiều so với RAM. Nếu các tiến trình nằm trên swap quá nhiều sẽ khiến Server/VPS xử lý chậm hơn hẳn. Bài viết sẽ hướng dẫn các bạn tối ưu swap trên Linux để hoạt động tối ưu hơn.
Giá trị “swappiness” nằm trong khoảng từ 0 đến 100. Mặc định trên các hệ điều hành Linux giá trị “swappiness” được đặt là 60. Với giá trị này khi máy chủ đạt đến 40% RAM kernel sẽ thực hiện chuyển một số tiến trình sang swap. Vậy với một máy chủ có nhiều RAM trống thì tại sao chúng ta không tận dụng hết ? Việc giảm tham số “swappiness” sẽ giúp chúng ta tận dụng được tối đa lượng RAM thật đang sử dụng. Vậy hãy thử điều chỉnh để tốt hơn nhé.
Kiểm tra giá trị swappiness mặc định
[root@server7h ~] cat /proc/sys/vm/swappiness 60
Điều chỉnh giá trị swappiness
[root@server7h ~] echo 10 > /proc/sys/vm/swappiness
Để giá trị này không trở lại mặc định mỗi khi khởi động lại, các bạn cần khai báo trong sysctl.conf vào cuối file như sau:
[root@server7h ~] nano /etc/sysctl.conf vm.swappiness=10
Tiến hành reboot hoặc gõ lệnh sau để áp dụng tức thì:
[root@server7h ~] sysctl -p
Kiểm tra lại swappiness
[root@server7h ~] cat /proc/sys/vm/swappiness 10
Kết luận
Việc sử dụng swap nhiều đối với các Server/VPS chạy các ứng dụng quan trọng như MySQL, Oracle, Java…rất dễ bị crash hoặc dẫn đến reboot đột ngột. Việc tinh chỉnh “swappiness” sẽ giúp tránh được việc này cũng như tăng tốc độ xử lý của máy chủ Linux.
Ngoài ra nếu trong quá trình thao tác gặp lỗi hoặc có vấn đề thắc mắc, các bạn có thể liên hệ trực tiếp hỗ trợ của 7Host tại [email protected] hoặc website https://7hosting.cloud