Tối ưu I/O Disk trên VPS chạy SSD – Tăng tốc độ đọc ghi cho web

Hiệu suất I/O (Input/Output) là yếu tố quan trọng quyết định tốc độ phản hồi của hệ điều hành và ứng dụng web trên VPS. Dù SSD đã nhanh hơn HDD rất nhiều, nhưng nếu cấu hình và quản lý không tốt, hiệu suất vẫn có thể bị nghẽn. Bài viết này hướng dẫn bạn các cách đơn giản nhưng hiệu quả để tối ưu I/O disk trên VPS dùng SSD.

Tối ưu I/O Disk trên VPS chạy SSD – Tăng tốc độ đọc ghi cho web

1. Kiểm tra tốc độ I/O hiện tại của VPS

Bước đầu tiên là đo tốc độ đọc ghi thực tế để biết VPS của bạn đang ở mức nào. Bạn có thể dùng lệnh:

dd if=/dev/zero of=testfile bs=1G count=1 oflag=dsync

Hoặc cài đặt fio để benchmark chuyên sâu:

sudo apt install fio
fio --name=seqwrite --ioengine=libaio --rw=write --bs=1m --size=512m --numjobs=1 --runtime=60 --group_reporting

2. Sử dụng hệ thống tập tin phù hợp

Với SSD, hệ thống tập tin hiện đại như ext4, XFS hoặc Btrfs sẽ hoạt động tốt hơn. Đảm bảo bạn đang sử dụng ext4 với các tùy chọn mount như sau:

UUID=xxx / ext4 noatime,errors=remount-ro 0 1

noatime giúp giảm ghi đĩa không cần thiết khi truy cập file.

3. Giảm ghi đĩa không cần thiết

  • Tắt ghi nhật ký truy cập trong Nginx nếu không cần:
access_log off;
  • Giới hạn ghi log hệ thống bằng cách cấu hình logrotate hoặc rsyslog.

4. Dùng RAM thay vì ghi đĩa khi có thể

Bạn có thể dùng RAM Disk để lưu cache hoặc file tạm:

sudo mkdir /mnt/ramdisk
sudo mount -t tmpfs -o size=512M tmpfs /mnt/ramdisk

Hoặc cấu hình Redis/Memcached để cache dữ liệu động như truy vấn MySQL, nội dung trang, session,…

5. Bật write-back caching (nếu được hỗ trợ)

Bạn có thể kiểm tra và bật write cache trên thiết bị SSD bằng lệnh:

sudo hdparm -W /dev/sda

Nếu được hỗ trợ, write-back caching giúp tăng tốc ghi nhưng nên kết hợp với UPS hoặc snapshot định kỳ vì có nguy cơ mất dữ liệu khi mất điện đột ngột.

6. Tránh swap quá mức

Swap ghi lên đĩa nên chỉ là phương án cuối cùng. Tối ưu lại cấu hình swappiness:

sudo sysctl vm.swappiness=10

Thêm vào file /etc/sysctl.conf để áp dụng vĩnh viễn:

vm.swappiness = 10

7. Dùng bộ nhớ đệm (pagecache) thông minh

Bạn có thể chủ động dọn cache khi cần (ví dụ trong cron):

sync; echo 3 > /proc/sys/vm/drop_caches

Tuy nhiên không nên làm quá thường xuyên vì cache cũng giúp tăng tốc hệ thống.

8. Sử dụng queue scheduler phù hợp

SSD hoạt động tốt nhất với scheduler kiểu noop hoặc deadline. Kiểm tra và đổi scheduler với:

cat /sys/block/sda/queue/scheduler
echo deadline | sudo tee /sys/block/sda/queue/scheduler

9. Tổng kết

Hiệu suất I/O ảnh hưởng trực tiếp đến tốc độ phản hồi web. Bằng cách tối ưu từ hệ thống tập tin, giảm ghi đĩa không cần thiết, dùng RAM cache và quản lý swap thông minh, bạn có thể giúp VPS chạy nhanh hơn mà không cần nâng cấp phần cứng. Những thủ thuật trong bài đều có thể áp dụng ngay cho VPS chạy SSD nhỏ như trên Vultr, Linode hay DigitalOcean.

Bình luận


  • Không có bình luận.

Init Toolbox

Nhấn Ctrl + \ trên máy tính, hoặc vuốt sang trái ở bất kỳ đâu trên mobile.

Đăng nhập





Đang tải...