mirror of
				https://github.com/donnemartin/system-design-primer.git
				synced 2025-11-01 00:32:32 +03:00 
			
		
		
		
	Translate section 18
Reverse proxy (web server)
This commit is contained in:
		
							
								
								
									
										51
									
								
								README-id.md
									
									
									
									
									
								
							
							
						
						
									
										51
									
								
								README-id.md
									
									
									
									
									
								
							| @@ -781,47 +781,48 @@ Mencari pekerja yang bekerja pada perangkat lunak komoditas juga lebih mudah dib | ||||
| * [Penyeimbang beban lapisak ke-7](https://www.nginx.com/resources/glossary/layer-7-load-balancing/) | ||||
| * [Konfigurasi pendengar ELB](http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/elb-listener-config.html) | ||||
|  | ||||
| ## Reverse proxy (web server) | ||||
| ## Proksi terbalik (server web) | ||||
|  | ||||
| <p align="center"> | ||||
|   <img src="http://i.imgur.com/n41Azff.png"/> | ||||
|   <br/> | ||||
|   <i><a href=https://upload.wikimedia.org/wikipedia/commons/6/67/Reverse_proxy_h2g2bob.svg>Source: Wikipedia</a></i> | ||||
|   <i><a href=https://upload.wikimedia.org/wikipedia/commons/6/67/Reverse_proxy_h2g2bob.svg>Sumber: Wikipedia</a></i> | ||||
|   <br/> | ||||
| </p> | ||||
|  | ||||
| A reverse proxy is a web server that centralizes internal services and provides unified interfaces to the public.  Requests from clients are forwarded to a server that can fulfill it before the reverse proxy returns the server's response to the client. | ||||
| Proksi terbalik adalah server web yang memusatkan layanan-layanan internal dan menyediakan antarmuka terpadu ke publik. | ||||
| Permintaan dari klien diteruskan ke salah satu server yang mampu memenuhi permintaan tersebut sebelum proksi terbalik mengembalikan tanggapan server tersebut ke klien. | ||||
|  | ||||
| Additional benefits include: | ||||
| Benefit tambahan yang termasuk di dalamnya: | ||||
|  | ||||
| * **Increased security** - Hide information about backend servers, blacklist IPs, limit number of connections per client | ||||
| * **Increased scalability and flexibility** - Clients only see the reverse proxy's IP, allowing you to scale servers or change their configuration | ||||
| * **SSL termination** - Decrypt incoming requests and encrypt server responses so backend servers do not have to perform these potentially expensive operations | ||||
|     * Removes the need to install [X.509 certificates](https://en.wikipedia.org/wiki/X.509) on each server | ||||
| * **Compression** - Compress server responses | ||||
| * **Caching** - Return the response for cached requests | ||||
| * **Static content** - Serve static content directly | ||||
| * **Meningkatkan keamanan** - Menyembunyikan informasi mengenai server bagian belakang, memasukan alamat IP ke dalam daftar hitam, dan membatasi jumlah koneksi per klien | ||||
| * **Meningkatkan skalabilitas dan fleksibilitas** - Klien hanya melihat alamat IP proksi terbalik sehingga memungkinkan kita untuk menyekalakan server atau mengganti konfigurasi | ||||
| * **Terminasi SSL** - Mendekripsi permintaan yang datang dan mengenkripsi tanggapan server sehingga server bagian belakang tidak perlu melakukan operasi yang berpotensi mahal ini | ||||
|     * Menghapus keperluan untuk menginstall [sertifikat x.509](https://en.wikipedia.org/wiki/X.509) di setiap server | ||||
| * **Kompresi** - Memampatkan tanggapan server | ||||
| * **Singgahan** - Mengembalikan tanggapan berdasarkan permintaan yang ada disinggahan | ||||
| * **Konten statis** - Melayani konten statis secara langsung | ||||
|     * HTML/CSS/JS | ||||
|     * Photos | ||||
|     * Videos | ||||
|     * Etc | ||||
|     * Foto | ||||
|     * Video | ||||
|     * Dan lainnya | ||||
|  | ||||
| ### Load balancer vs reverse proxy | ||||
| ### Penyeimbang beban vs proksi terbalik | ||||
|  | ||||
| * Deploying a load balancer is useful when you have multiple servers.  Often, load balancers  route traffic to a set of servers serving the same function. | ||||
| * Reverse proxies can be useful even with just one web server or application server, opening up the benefits described in the previous section. | ||||
| * Solutions such as NGINX and HAProxy can support both layer 7 reverse proxying and load balancing. | ||||
| * Penggelaran penyeimbang beban berguna ketika kita mempunyai beberapa server. Seringkali, penyeimbang beban mengarahkan lalu lintas ke sekumpulan server yang melayani fungsi yang sama. | ||||
| * Proksi terbalik bisa berguna bahkan untuk satu server web atau satu server aplikasi sehingga membuka manfaat yang dijelaskan pada bagian sebelumnya. | ||||
| * Solusi seperti NGINX dan HAProxy mendukung pemproxyan terbalik dan penyeimbangan beban lapisan ke-7. | ||||
|  | ||||
| ### Disadvantage(s): reverse proxy | ||||
| ### Kekurangan: proksi terbalik | ||||
|  | ||||
| * Introducing a reverse proxy results in increased complexity. | ||||
| * A single reverse proxy is a single point of failure, configuring multiple reverse proxies (ie a [failover](https://en.wikipedia.org/wiki/Failover)) further increases complexity. | ||||
| * Menambahkan proksi terbalik meningkatkan kompleksitas. | ||||
| * Proksi terbalik tunggal adalah titik kegagalan. Pengkonfigurasian proksi terbalik ganda (Contohnya [failover](https://en.wikipedia.org/wiki/Failover)) meningkatkan kompleksitas lagi. | ||||
|  | ||||
| ### Source(s) and further reading | ||||
| ### Sumber dan bacaan lanjutan | ||||
|  | ||||
| * [Reverse proxy vs load balancer](https://www.nginx.com/resources/glossary/reverse-proxy-vs-load-balancer/) | ||||
| * [NGINX architecture](https://www.nginx.com/blog/inside-nginx-how-we-designed-for-performance-scale/) | ||||
| * [HAProxy architecture guide](http://www.haproxy.org/download/1.2/doc/architecture.txt) | ||||
| * [Proksi terbalik vs penyeimbang beban](https://www.nginx.com/resources/glossary/reverse-proxy-vs-load-balancer/) | ||||
| * [Arsitektur NGINX](https://www.nginx.com/blog/inside-nginx-how-we-designed-for-performance-scale/) | ||||
| * [Panduan arsitektur HAProxy](http://www.haproxy.org/download/1.2/doc/architecture.txt) | ||||
| * [Wikipedia](https://en.wikipedia.org/wiki/Reverse_proxy) | ||||
|  | ||||
| ## Application layer | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Roy Ginting
					Roy Ginting