Cara Optimasi Nginx Ubuntu Server 14.04
Nginx (Engine X)
Nginx adalah aplikasi web server yang yang ringan dan efisien, Nginx menjadi populer karena kecepatanya di banding pendahulunya yaitu apache.Walaupun nginx terbilang sangat ringan dibanding pendahulunya yaitu apache, namun belum tentu nginx lebih bagus daripada apache, JIKA SUSAH DI OPTIMASI ya.. hehe.Maka dari itu diperlukan tweak atau optimasi pada suatu aplikasi agar berjalan dengan maksimal seperti yang akan Si Mas share ke sobat kali ini yaitu optimasi nginx.
Worker Processes dan Work Connection
Yang pertama kita perlu optimasi yaitu work connection dan worker processor. Dimana worker Processor adalah jumlah processor pada server dan work connection adalah jumlah koneksi maksimal pada klien untuk setiap core pada processor. Berikut cara mengetahui jumlah work connection dan worker processor.
Mengetahui jumlah worker processor
grep processor /proc/cpuinfo | wc –l
Mengetahui jumlah work connection
ulimit -n
Jumlah Work connection dan worker processor |
Kita contohkan yang keluar pada server Si Mas buat processor berjumlah 4 dan work connection berjumlah 1024.
maka untuk memasukkan jumlah tersebut atau mengyesuaikannya maka sobat harus mengedit konfigurasi nginx
nano /etc/nginx/nginx.conf
dan edit pada baris berikut.
worker_processes 4;
worker_connections 1024;
Buffers
Konfigurasi ini masih berada pada konfigurasi nginx yaitu pada file /etc/nginx/nginx.confclient_body_buffer_size: ini untuk menangani buffer size klien, berarti POST action yang akan dikirim ke nginx. POST action biasanya berupa form kiriman yang akan masuk database ( menggunakan PHP )
client_header_buffer_size: tidak beda jauh seperti sebelumnya, hanya saja ini untuk header size klien. Untuk ukuran, 1k layak untuk header buffer size.
client_max_body_size: maximum data yang diperbolehkan nginx kepada klient yang merequest. Jika nilai maksimum melebih batas, nginx akan mengirim pesan kepada klien berupa : 413 error or Request Entity Too Large.
large_client_header_buffers: The maximum number and size of buffers for large client headers.
client_body_buffer_size 10K;
client_header_buffer_size 1k;
client_max_body_size 8m;
large_client_header_buffers 2 1k;
Gzip Compression
Gzip dapat mengurangi beban network transfer nginx. Tapi bagaimanapun, anda harus pandai mengkonfigurasi Gzip ini. Karna jika gzip_comp_level terlalu tinggi maka akan menambah beban kerja CPU sever.
gzip on;
gzip_comp_level 2;
gzip_min_length 1000;
gzip_proxied expired no-cache no-store private auth;
gzip_types text/plain application/x-javascript text/xml text/css application/xml;
Static File Caching
Berfungsi untuk mencache file file yang yang tetap seperti gambar, favicon dan lainya .
Namun untuk menambahkan script dibawah maka anda harus menambahkannya pada Virtualhost Sobat , Bukan di di konfigurasi nginx ya.
location = /favicon.ico { log_not_found off; access_log off; }
location = /robots.txt { log_not_found off; access_log off; allow all; }
location ~* \.(css|gif|ico|jpeg|jpg|js|png)$ {
expires 30d;
add_header Pragma public;
add_header Cache-Control "public";
try_files $uri =404;
log_not_found off;
}
Mungkin hanya inilah cara untuk Optimasi Nginx kali ini, Kembali lagi ke sobat pandai pandai mengoptimasi pada server dan sesuaikan pada perangkat yang digunakan. Terimakasih.
No comments :
Post a Comment