Warning: Undefined variable $post in /var/www/saksenengku/wp-content/plugins/simple-google-schema/index.php on line 140

Warning: Attempt to read property "ID" on null in /var/www/saksenengku/wp-content/plugins/simple-google-schema/index.php on line 140
Bagaimana Varnish Cache + NGINX Reverse Proxy Bekerja – Saksenengku Network
Site icon Saksenengku Network

Bagaimana Varnish Cache + NGINX Reverse Proxy Bekerja

Varnish nginx

Pada artikel ini kita akan membahas & mendiskusikan proxy Varnish cache NGINX dan bagaimana Anda dapat mengaturnya.

Server proxy dengan penekanan pada caching HTTP adalah Varnish. Itu dibuat untuk menjadi akselerator HTTP dan dapat berfungsi sebagai proxy terbalik untuk server web Apache atau NGINX Anda. Situs web dengan banyak lalu lintas dan keunggulan tinggi telah menerapkan Varnish.

Apa itu Varnish Cache?

Untuk perusahaan berbasis web, cache seringkali merupakan perangkat lunak yang paling penting. Varnish Cache adalah mesin HTTP open-source yang kuat/proxy HTTP terbalik yang melakukan persis seperti namanya: menyimpan (atau menyimpan) salinan halaman web saat pertama kali pengunjung melihatnya. Ini dapat mempercepat situs web hingga 1000 persen. Varnish membuat satu permintaan ke server Anda untuk meng-cache halaman, setelah itu menangani permintaan berikutnya untuk halaman yang sama. Ini menghasilkan pengiriman konten yang sangat cepat dan lebih sedikit permintaan pada sumber daya server backend.

– Kompetensi inti Varnish adalah kecepatan dan kinerja.
– Penghematan infrastruktur server
– Skalabilitas – Varnish memungkinkan situs Anda memenuhi permintaan terlepas dari volume pengunjung atau permintaan.
– Perlindungan dari pemadaman: Varnish tetap menyajikan informasi yang di-cache meskipun server Anda mogok.
– Fleksibilitas: Varnish Configuration Language (VCL) memungkinkan pembuatan solusi, aturan, dan modul khusus.
– Pengalaman pengguna yang ditingkatkan

Bagaimana cara kerja Varnish Cache?

Sebelum mencapai backend server web Anda, Varnish memproses semua permintaan yang masuk. Cache-nya menangani semua lalu lintas web dan, secara default, disegarkan setiap dua menit.

Varnish akan merutekan permintaan ke backend server web dan meng-cache hasilnya, seperti yang baru saja kita lihat di paragraf reverse proxy generik jika permintaan tidak di-cache.

Setelah permintaan di-cache, mereka dimasukkan ke dalam memori dan kemudian dapat dengan cepat diambil dan dikirim ke pelanggan. Varnish menggunakan bahasa VCL untuk mengekspresikan pengaturan, kebijakan caching, dan aturan lainnya (Bahasa Konfigurasi Varnish).

Anda dapat menanggapi setiap permintaan secara berbeda menggunakan bahasa ini dan variasinya. Misalnya, Anda dapat mengarahkan permintaan tertentu ke backend tertentu atau menginstruksikan Varnish untuk melakukan tindakan berbeda berdasarkan karakteristik permintaan yang masuk atau hasilnya.

Materi yang di-cache mungkin masih disediakan meskipun server web tidak tersedia karena fitur bawaan yang disebut polling backend, yang merupakan fungsi Varnish menakjubkan lainnya. Varnish akan terus menyediakan konten yang di-cache untuk jangka waktu yang dikenal sebagai waktu tenggang jika mendeteksi waktu henti. Polling backend mengkueri server pada frekuensi yang dapat Anda tetapkan secara fleksibel.

Apa itu Nginx?

NGINX adalah perangkat lunak sumber terbuka yang dapat digunakan untuk streaming video, caching, proxy terbalik, layanan web, dan fungsi lainnya. Ini awalnya dimulai sebagai server web yang dibangun untuk kecepatan dan keandalan maksimal. NGINX dapat beroperasi sebagai server HTTP, server proxy email (IMAP, POP3, dan SMTP), proxy terbalik, dan penyeimbang beban untuk server HTTP, TCP, dan UDP selain berfungsi sebagai server HTTP.

Apa itu proxy reverse?

Fungsi utama reverse proxy adalah melindungi server web dari lalu lintas masuk. Setiap permintaan koneksi diterima oleh reverse proxy, yang meneruskannya melalui banyak server sebelum terhubung ke server yang menangani permintaan tersebut.

Setiap operasi reverse proxy memiliki tiga fase utama:
1. Pengumpulan permintaan koneksi: Di tepi jaringan, proxy balik menerima permintaan masuk.
2. Jabat tangan tiga arah TCP: Sambungan ke proxy balik dibuat setelah jabat tangan tiga arah TCP, dan sambungan pertama ditutup.
3. Koneksi server asal: Menggunakan alamat IP fiktif, proxy terbalik menghubungkan server asal ke permintaan klien.

Pengguna tidak pernah dapat terhubung langsung ke server asal karena semua koneksi browser web ke aplikasi web selalu dilakukan melalui reverse proxy.

Bagaimana Anda mengatur reverse proxy cache Varnish Nginx?

Instal Nginx di server Anda
Pertama-tama kita perlu menginstal Nginx dari repositori Ubuntu menggunakan perintah apt untuk Debian/Ubuntu

sudo apt update
apt install nginx -y

Setelah instalasi selesai, kita perlu memulai dan mengaktifkan Nginx untuk diluncurkan setiap kali boot sistem menggunakan perintah systemctl

systemctl start nginx
systemctl enable nginx

Konfigurasikan Nginx pada port 80

Kami akan menyiapkan Nginx untuk menggunakan port HTTP 8080 yang tidak konvensional operasi. Untuk melakukan ini, kita harus memodifikasi file host virtual yang terletak di direktori “sites-available“.

nano /etc/nginx/sites-available/default

Ubah nilai baris ‘listen’ menjadi 8080. Simpan dan keluar.

Periksa kesalahan dengan menguji pengaturan Nginx sekarang. Mulai restart layanan setelah itu

nginx -t
systemctl restart nginx

Periksa Nginx sekali lagi menggunakan netstat, dan pastikan Nginx beroperasi pada port HTTP nonkonvensional 8080.

netstat -plntu


Itu telah diinstal, dan port 8080 saat ini sedang digunakan oleh server web Nginx.

Instal Varnish di Debian/Ubuntu

Kita harus menginstal Varnish menggunakan perintah apt

sudo apt install varnish -y

Dengan menggunakan perintah systemctl yang tercantum di bawah ini, mulai pernis dan atur agar dimulai secara otomatis saat sistem melakukan booting.

systemctl start varnish
systemctl enable varnish

Secara default, varnish akan menggunakan port 6082 untuk antarmuka web admin dan port 6081 untuk akses publik. Pastikan port tertentu terdaftar dengan menggunakan perintah netstat untuk memeriksa.

netstat -plntu


Akselerator HTTP Varnish telah diinstal

Konfigurasikan Varnish sebagai reverse proxy untuk Nginx

Sebagai reverse proxy untuk server web Nginx, Varnish akan digunakan. Server web Nginx akan beroperasi pada port HTTP 8080, sedangkan Varnish akan berjalan pada port HTTP 80.

Pada tahap ini, kita akan menyiapkan Varnish untuk Nginx, mengidentifikasi server backend, dan memodifikasi Varnish agar menggunakan port HTTP 80 sebagai port defaultnya.

Edit file “default.vcl” dengan langsung masuk ke direktori konfigurasi varnish. dan pastikan host 127.0.0.1 dan port 8080

nano /etc/varnish/default.vcl


Konfigurasi backend selesai.

Langkah selanjutnya adalah mengatur Varnish untuk menggunakan port HTTP 80. Edit file konfigurasi varnish dengan masuk ke direktori ‘varnish’ di direktori ‘/etc/default’.

nano /etc/default/varnish

Pastikan port default Anda adalah 6081 dan port HTTP adalah 80

File layanan Varnish di direktori ‘/lib/systemd/system’ sekarang harus diedit. Edit file varnish.service dengan membuka direktori sistem systemd.

cd /lib/systemd/system
nano varnish.service

Ganti HTTP port 80 dengan Varnish port 6081 pada baris ‘ExecStart‘.

Sekarang reload konfigurasi systemd dan mulai restart Varnish

systemctl daemon-reload
systemctl restart varnish

Periksa varnish kembali dengan menggunakan perintah netstat

netstat -plntu


konfigurasi varnish sebagai reverse proxy untuk Nginx telah selesai

Exit mobile version