Định hướng tối ưu cho server nhỏ
- Giảm áp lực RAM và file descriptor.
- Tránh cấu hình “trần nhà” khi traffic chưa đủ lớn.
- Ưu tiên ổn định lâu dài hơn là benchmark ngắn hạn.
- Phù hợp với Init Manga + cache + Redis.
Cấu hình Nginx tối ưu cho server nhỏ
So với cấu hình gốc, Nginx được làm nhẹ lại ở các điểm: worker_connections, open_file_cache, buffer và keepalive để tránh ăn RAM vô ích.
user www-data;
worker_processes auto;
pid /run/nginx.pid;
error_log /var/log/nginx/error.log crit;
include /etc/nginx/modules-enabled/*.conf;
worker_rlimit_nofile 65535;
events {
worker_connections 4096;
use epoll;
multi_accept on;
}
http {
sendfile on;
tcp_nopush on;
tcp_nodelay on;
types_hash_max_size 2048;
server_tokens off;
keepalive_timeout 20;
keepalive_requests 20000;
reset_timedout_connection on;
include /etc/nginx/mime.types;
default_type application/octet-stream;
access_log off;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_prefer_server_ciphers on;
open_file_cache max=50000 inactive=30s;
open_file_cache_valid 60s;
open_file_cache_min_uses 2;
open_file_cache_errors on;
gzip on;
gzip_static on;
gzip_vary on;
gzip_proxied any;
gzip_comp_level 5;
gzip_min_length 1024;
gzip_buffers 16 8k;
gzip_http_version 1.1;
gzip_types
text/plain
text/css
application/json
application/javascript
application/xml
image/svg+xml
font/ttf
font/otf;
client_body_buffer_size 128k;
client_header_buffer_size 32k;
large_client_header_buffers 4 64k;
client_max_body_size 128m;
fastcgi_buffering on;
fastcgi_buffers 8 16k;
fastcgi_buffer_size 16k;
include /etc/nginx/conf.d/*.conf;
include /etc/nginx/sites-enabled/*;
}
Giải thích nhanh các điểm đã giảm
worker_connections 4096: Đủ cho server nhỏ, tránh giữ quá nhiều socket.open_file_cache: Giảm mạnh để tránh chiếm RAM khi site chưa có hàng trăm nghìn file tĩnh.keepalive_requests: Hạ xuống mức an toàn, tránh giữ connection quá lâu.buffer: Giảm để tránh spike RAM khi có request lớn.
Cấu hình PHP-FPM cho Init Manga (server nhỏ)
PHP-FPM là điểm dễ “chết ngầm” nhất nếu set quá tay. Với Init Manga, ưu tiên ít process nhưng ổn định.
pm = dynamic
pm.max_children = 6
pm.start_servers = 3
pm.min_spare_servers = 2
pm.max_spare_servers = 4
pm.max_requests = 500
Cấu hình này phù hợp cho 2–4GB RAM, đã tính cả Redis và MySQL.
php.ini đề xuất
post_max_size = 128M
upload_max_filesize = 128M
max_file_uploads = 128
memory_limit = 512M
max_execution_time = 60
max_input_time = 60
memory_limit 512M là mức an toàn cho Init Manga khi có filter phức tạp và query nặng.
Cấu hình Redis cho server nhỏ
Redis chỉ đóng vai trò cache, không lưu dữ liệu lâu dài.
maxmemory 512mb
maxmemory-policy allkeys-lru
save ""
tcp-backlog 65536
timeout 300
tcp-keepalive 300
loglevel warning
512MB là điểm cân bằng tốt giữa hiệu quả cache và RAM tổng.
Cấu hình MySQL tối ưu cho Init Manga
Init Manga dùng WordPress, trọng tâm là InnoDB, không cần query cache.
[mysqld]
bind_address = 127.0.0.1
max_connections = 100
connect_timeout = 10
wait_timeout = 300
interactive_timeout = 300
table_open_cache = 256
table_definition_cache = 256
thread_cache_size = 8
query_cache_type = 0
query_cache_size = 0
default_storage_engine = InnoDB
innodb_buffer_pool_size = 256M
innodb_log_file_size = 64M
innodb_log_buffer_size = 8M
innodb_flush_log_at_trx_commit = 2
innodb_flush_method = O_DIRECT
innodb_io_capacity = 400
innodb_read_io_threads = 4
innodb_write_io_threads = 4
innodb_buffer_pool_instances = 1
slow_query_log = 1
long_query_time = 1
skip_log_bin
Gợi ý nhà cung cấp VPS phù hợp để triển khai Init Manga
Để các cấu hình LEMP phía trên phát huy đúng hiệu quả, việc chọn hạ tầng VPS ổn định ngay từ đầu là yếu tố rất quan trọng. Dựa trên trải nghiệm triển khai thực tế với Init Manga, hai nhà cung cấp dưới đây đáp ứng tốt cả về hiệu năng lẫn độ ổn định lâu dài.
Vultr là lựa chọn phù hợp nếu bạn cần VPS quốc tế, hạ tầng mạnh, CPU ổn định và khả năng mở rộng linh hoạt từ server nhỏ lên server lớn. Vultr đặc biệt phù hợp cho các site Init Manga hướng đến traffic toàn cầu hoặc cần nhiều location khác nhau.
Veesp phù hợp với các dự án cần VPS ổn định, băng thông rộng, vị trí gần offshore và khả năng chạy lâu dài không biến động. Với Init Manga, Veesp hoạt động tốt cho cả server vừa và lớn, đặc biệt khi kết hợp Redis và cache file tĩnh.
Cả hai nhà cung cấp trên đều phù hợp để áp dụng trực tiếp các cấu hình LEMP đã trình bày, giúp Init Manga vận hành ổn định và dễ nâng cấp khi traffic tăng trưởng.
Kết luận
Với server nhỏ, chạy Init Manga không cần cấu hình “căng trần”. Giữ Nginx vừa phải, PHP-FPM ít nhưng chắc, Redis đủ dùng và MySQL gọn gàng sẽ giúp hệ thống ổn định lâu dài, ít lỗi vặt và dễ nâng cấp sau này. Ở bài tiếp theo, chúng ta sẽ nâng cấp cấu hình cho server tầm trung, nơi traffic và concurrency bắt đầu tăng rõ rệt.
Bình luận