Apa perbedaan antara server proxy dan server proxy terbalik?

1773

Apa perbedaan antara server proxy dan server proxy terbalik?

Peter Mortensen
sumber
51
Ini dijelaskan dengan baik di Apache docs juga.
Paolo
3
@ Paolo yang membuatnya lebih mudah dipahami daripada artikel Wikipedia. Mungkin saya harus menyunting beberapa info itu ke dalam artikel Wikipedia pada akhirnya ...
RastaJedi
Katakanlah saya memiliki host A yang perlu terhubung ke host C, tetapi tidak secara langsung. Sebaliknya, itu dikonfigurasi sebagai entri host atau mungkin dns, untuk memanggil B yang meneruskan permintaan ke C. C tidak peduli atau tahu tentang B. Apakah ini proxy maju atau proxy terbalik?
Daniel Leach
Jika host A tidak bisa mendapatkan host C tanpa terkonfigurasi ke host kontak pertama B, maka host B adalah server proxy maju atau "keluar" tradisional.
TaylorMonacelli
5
Proxy penerusan memberikan anonimitas klien (yaitu, pikirkan Tor). Proxy terbalik memberikan server anonimitas back end (yaitu, pikirkan server di belakang DMZ).
8bitjunkie

Jawaban:

2970

Jawaban sebelumnya akurat, tetapi mungkin terlalu singkat. Saya akan mencoba menambahkan beberapa contoh.

Pertama-tama, kata "proxy" menggambarkan seseorang atau sesuatu yang bertindak atas nama orang lain.

Di dunia komputer, kita berbicara tentang satu server yang bertindak atas nama komputer lain.

Untuk tujuan aksesibilitas, saya akan membatasi diskusi saya dengan proxy web - namun, gagasan proxy tidak terbatas pada situs web.

FORWARD proxy

Sebagian besar diskusi tentang proxy web mengacu pada jenis proxy yang dikenal sebagai "proxy maju".

Acara proxy, dalam hal ini, adalah bahwa "proxy yang maju" mengambil data dari situs web lain atas nama yang diminta asli.

Kisah 3 komputer (bagian I)

Sebagai contoh, saya akan mencantumkan tiga komputer yang terhubung ke internet.

  • X = komputer Anda, atau komputer "klien" di internet
  • Y = situs web proxy, proxy.example.org
  • Z = situs web yang ingin Anda kunjungi, www.example.net

Biasanya, orang akan terhubung langsung dari X --> Z.

Namun, dalam beberapa skenario, lebih baik untuk Y --> Zatas nama X, yang rantai sebagai berikut: X --> Y --> Z.

Alasan mengapa X ingin menggunakan server proxy yang diteruskan:

Berikut adalah daftar sebagian (sebagian besar) penggunaan server proxy ke depan:

  • 1) X tidak dapat mengakses Z secara langsung karena

    • a) Seseorang dengan otoritas administratif atas Xkoneksi internet telah memutuskan untuk memblokir semua akses ke situs Z.

      • Contoh:

        • Virus Storm Worm menyebar dengan menipu orang agar mengunjungi familypostcards2008.com, sehingga administrator sistem telah memblokir akses ke situs untuk mencegah pengguna dari menginfeksi diri mereka secara tidak sengaja.

        • Karyawan di perusahaan besar terlalu banyak membuang waktu facebook.com, sehingga manajemen ingin akses diblokir selama jam kerja.

        • Sebuah sekolah dasar setempat melarang akses internet ke playboy.comsitus web.

        • Pemerintah tidak dapat mengontrol penerbitan berita, jadi ia mengontrol akses ke berita, dengan memblokir situs-situs seperti wikipedia.org. Lihat TOR atau FreeNet .

    • b) Administrator Ztelah diblokir X.

      • Contoh:

        • Administrator Z telah memperhatikan upaya peretasan yang berasal dari X, sehingga administrator telah memutuskan untuk memblokir alamat IP X (dan / atau netrange).

        • Z adalah situs web forum. Xsedang mengirim spam ke forum. Z memblokir X.

REVERSE proxy

Kisah 3 komputer (bagian II)

Untuk contoh ini, saya akan mencantumkan tiga komputer yang terhubung ke internet.

  • X = komputer Anda, atau komputer "klien" di internet
  • Y = situs web proxy terbalik, proxy.example.com
  • Z = situs web yang ingin Anda kunjungi, www.example.net

Biasanya, orang akan terhubung langsung dari X --> Z.

Namun, dalam beberapa skenario, lebih baik bagi administrator Zuntuk membatasi atau melarang akses langsung dan memaksa pengunjung untuk melewati Y terlebih dahulu. Jadi, seperti sebelumnya, kami memiliki data yang diambil oleh Y --> Zatas nama X, yang rantai sebagai berikut: X --> Y --> Z.

Apa yang berbeda kali ini dibandingkan dengan "forward proxy," adalah bahwa kali ini pengguna Xtidak tahu dia mengakses Z, karena pengguna Xhanya melihat dia berkomunikasi dengannya Y. Server Ztidak terlihat oleh klien dan hanya proxy terbalik Yyang terlihat secara eksternal. Proxy terbalik tidak memerlukan konfigurasi (proxy) di sisi klien.

Klien Xberpikir dia hanya berkomunikasi dengan Y( X --> Y), tetapi kenyataannya adalah Ymeneruskan semua komunikasi ( X --> Y --> Zlagi).

Alasan mengapa Z ingin mengatur server proxy terbalik:

  • 1) Z ingin memaksa semua lalu lintas ke situs webnya untuk melewati Y terlebih dahulu.
    • a) Z memiliki situs web besar yang ingin dilihat jutaan orang, tetapi satu server web tidak dapat menangani semua lalu lintas. Jadi Z mengatur banyak server dan menempatkan proxy terbalik di internet yang akan mengirim pengguna ke server terdekat ketika mereka mencoba mengunjungi Z. Ini adalah bagian dari cara kerja konsep Jaringan Distribusi Konten (CDN).
  • 2) Administrator Z khawatir tentang pembalasan untuk konten yang dihosting di server dan tidak ingin mengekspos server utama secara langsung kepada publik.
    • a) Pemilik merek Spam seperti "Apotek Kanada" tampaknya memiliki ribuan server, sementara pada kenyataannya sebagian besar situs web di-host pada server yang jauh lebih sedikit. Selain itu, keluhan penyalahgunaan tentang spam hanya akan mematikan server publik, bukan server utama.

Dalam skenario di atas, Zmemiliki kemampuan untuk memilih Y.

Tautan ke topik dari pos:

Jaringan Pengiriman Konten

Teruskan perangkat lunak proksi (sisi server)

Membalikkan perangkat lunak proxy untuk HTTP (sisi server)

Membalikkan perangkat lunak proxy untuk TCP (sisi server)

Lihat juga:

qyb2zm302
sumber
1
TAM (tivoli access manager) juga merupakan server proxy terbalik, bukan?
Clark Bao
2
Secara konseptual, kita dapat merujuk atau memikirkan "proxy terbalik" lalu sebagai proxy "paksa"?
Thomas
3
"yang akan mengirim pengguna ke server yang paling dekat dengan mereka" - Apa gunanya? Semua lalu lintas akan melewati server proxy itu, kan? Jadi tidak masalah di mana lokasi server 'lokal' di belakangnya. Atau saya melewatkan sesuatu?
Pavel
2
@Pavel mungkin "server paling dekat dengan mereka" bukanlah deskripsi terbaik. Lebih seperti "mendistribusikan beban ke kumpulan server" adalah deskripsi yang lebih baik. Contoh ini menggambarkan penyeimbang muatan proxy terbalik.
JDS
6
Ini adalah kunci bagi saya: - maju: (X --> Y) --> Z, sebaliknya: X --> (Y --> Z).
Druckles
538

Sepasang definisi sederhana adalah:

Forward Proxy: Bertindak atas nama pemohon (atau konsumen layanan)

Reverse Proxy: Bertindak atas nama produsen layanan / konten.

Krishna Bheemanakatte
sumber
414

Saya menemukan diagram di bawah ini sangat membantu. Itu hanya menunjukkan arsitektur setup proxy maju vs mundur dari klien ke server melalui Internet. Gambar ini akan membantu Anda untuk memahami jawaban qyb2zm302 dan jawaban lainnya dengan lebih baik.

Forward Proxy vs Reverse Proxy

Anda juga dapat menonton video ini dari F5 's DevCentral oleh Peter Silva.

Sumber Gambar: Quora . Namun, sesuai Martijn Pieters , gambar ini bisa dari Pulse Secure Community atau situs Julien Pauli (dalam bahasa Prancis) di developpez.com.

Itu mengingatkan saya pada pepatah klasik:

Gambar bernilai 1000 kata.

Nishant
sumber
9
Ini benar-benar semua yang perlu Anda lihat. Menyiapkan proxy di browser Anda agar Netflix tidak tahu di negara mana Anda berada adalah proxy yang maju; layanan upstream yang mengarahkan permintaan masuk (mungkin Anda ingin mengirim satu permintaan ke dua server) adalah proxy terbalik.
Kyle Chadha
5
Forward proxy juga bisa di internet
mac
7
Gambar terbaik di jawaban terakhir. Terima kasih. :) Proxy terbalik juga dikenal sebagai "Load Balancer" dan bertindak di sisi server (mendistribusikan beban ke server yang berbeda), sementara proxy yang maju mendukung sisi klien.
codepleb
1
Penulis kuora bukan penulis asli gambar, karena halaman ini dari 2013 dengan satu revisi adalah satu tahun lebih tua.
Martijn Pieters
1
Bisa jadi tutorial bahasa Prancis ini dari tahun 2009 adalah sumbernya; yang copy web arsip 2009 mengalami masalah javascript (pengalihan lanjutan), dan gambar hanya diarsipkan pada tahun 2017, tetapi referensi sumber URL gambar yang sama sebagai sumber kemudian.
Martijn Pieters
230

Forward Proxy vs. Reverse Proxy (2012) menjelaskan perbedaan antara proxy maju dan mundur dengan sangat jelas.

Jawaban qyb2zm302 dengan baik merinci aplikasi proksi, tetapi ia tergelincir pada konsep dasar antara proksi maju dan mundur. Untuk proksi terbalik, X → Y → Z, X tahu tentang Y dan bukan Z, bukan sebaliknya.

Proxy hanyalah perantara untuk komunikasi (permintaan + tanggapan). Klien <-> Proxy <-> Server

  • Proxy klien: ( klien <-> proksi ) <-> server

Proksi bertindak atas nama klien. Klien tahu tentang ketiga mesin yang terlibat dalam rantai. Server tidak.

  • Proksi server: klien <-> ( proksi <-> server )

Proksi bertindak atas nama server. Klien hanya tahu tentang proxy. Server tahu seluruh rantai.

Sepertinya saya bahwa maju dan mundur hanya membingungkan, tergantung pada perspektif nama untuk klien dan server proxy. Saya sarankan meninggalkan yang pertama untuk yang terakhir, untuk komunikasi eksplisit.

Tentu saja, untuk semakin memperumit masalah ini, tidak setiap mesin secara eksklusif adalah klien atau server. Jika ada ambiguitas dalam konteks, yang terbaik adalah menentukan secara eksplisit di mana proksi berada, dan komunikasi yang dilakukan terowongan itu.

Protongun
sumber
3
Jawaban ini sejalan dengan httpd.apache.org/docs/2.0/mod/mod_proxy.html#forwardreverse dan membantu menjelaskannya dengan jelas
Greg Woods
7
tampaknya fitur yang paling relevan dalam perbandingan ini adalah siapa-tahu-siapa. forward proxy: klien tahu baik proxy (itu sudah dikonfigurasi sebenarnya) dan server target (karena membuat permintaan ke server), sementara, dalam kasus proxy terbalik, klien tahu proxy sebagai server target (itu tidak tahu apa yang sebenarnya dipanggil oleh proxy; dapat berupa satu server atau lebih). dengan proxy yang diteruskan, server tidak tahu siapa klien sebenarnya, karena proxy "meneruskan" permintaan untuk itu. forward proxy: sembunyikan klien reverse proxy: sembunyikan server
Belun
@Protongun "..A proxy hanyalah perantara untuk komunikasi (permintaan + tanggapan) .." apa kebutuhan proxy di tempat pertama? Mohon klarifikasi. IMHO jawaban ini seharusnya yang diterima
vikramvi
Tautan pertama dalam posting ini membuatnya jelas dan mudah dipahami untuk semua orang
Legends
@Belun Dijelaskan dengan sangat sederhana dengan kata-kata / istilah sederhana.
Ilangeeran
129

Beberapa diagram mungkin membantu:

Teruskan proksi

Teruskan proksi

Membalikkan proxy

Membalikkan proxy

Maria Ines Parnisari
sumber
8
Apakah itu? Mereka terlihat sama! Apa yang istimewa tentang menulis kembali respons yang menjadikan proxy sebagai proxy "terbalik"?
8bitjunkie
2
@ 8bitjunkie Ini tentang perspektif. Perhatikan bahwa, untuk proxy yang maju, klien tahu itu sedang berkomunikasi dengan server proxy. Untuk proksi terbalik, klien mengira itu berkomunikasi langsung dengan home.com. Proxy juga memiliki implementasi yang berbeda. Proxy sebaliknya bisa sangat bodoh. Yang harus dilakukan hanyalah mengubah alamat dan meneruskan panggilan. Lebih banyak logika jaringan pada klien, lebih sedikit pada proxy. Proksi penerusan, di sisi lain, perlu entah bagaimana mengetahui bahwa permintaan untuk proxy.com () memerlukan panggilan ke service.com. Logika jaringan lebih sedikit pada klien, lebih banyak pada proksi.
Kevin
1
Apa yang dimaksud dengan " menerjemahkan myhome.myhosting.com ke hom.com" Saya tidak mendapatkan bagian terjemahan. Suka menulis ulang bagian dari tajuk respons atau sesuatu?
1252748
Juga salah satu alasan untuk membalikkan proxy (berdasarkan apa yang saya mengerti dari jawaban yang diterima) adalah bahwa tujuan melakukan ini adalah untuk membagi lalu lintas masuk yang berat di antara beberapa server. Di mana dalam rantai ini apakah itu terjadi? Apakah itu "aturan masuk" lain?
1252748
@ 1252748 sekitar 1), terjemahannya berarti memetakan URL dan mengeluarkan permintaan ke URL yang sesuai. sekitar 2), ya, Anda dapat mengonfigurasi server untuk, misalnya, menggunakan round robin untuk memuat menyeimbangkan permintaan di antara server.
Maria Ines Parnisari
72

Perbedaannya terutama dalam penyebaran. Proxy maju dan mundur web semuanya memiliki fitur dasar yang sama. Mereka menerima permintaan untuk permintaan HTTP dalam berbagai format dan memberikan respons, biasanya dengan mengakses server asal atau kontak.

Server berfitur lengkap biasanya memiliki kontrol akses, caching, dan beberapa fitur pemetaan tautan.

Proxy maju adalah proksi yang diakses dengan mengkonfigurasi mesin klien. Klien memerlukan dukungan protokol untuk fitur proxy (pengalihan, otentikasi proxy, dll.). Proxy transparan untuk pengalaman pengguna, tetapi tidak untuk aplikasi.

Proxy terbalik adalah proksi yang digunakan sebagai server web dan berperilaku seperti server web, dengan pengecualian bahwa alih-alih secara lokal membuat konten dari program dan disk, itu meneruskan permintaan ke server asal. Dari perspektif klien, ini adalah server web, sehingga pengalaman pengguna sepenuhnya transparan.

Bahkan, satu contoh proxy dapat berjalan sebagai proxy maju dan mundur pada saat yang sama untuk populasi klien yang berbeda.

benc
sumber
Hanya untuk memastikan, proxy ke depan adalah sisi klien dan proxy sebaliknya adalah sisi server?
Yves
4
@ ya. proxy juga merupakan server. Hanya saja klien membutuhkan konfigurasi lokal sehingga mereka dapat berkomunikasi. Sementara proxy terbalik memerlukan konfigurasi di server itu sendiri. Node fisik mereka berada di 'sisi server'.
Adib Aroui
Hanya untuk info umum, tidak semua proxy dapat beroperasi sebagai maju dan mundur, misalnya, SOCKS bisa, tetapi bukan proxy HTTP.
RastaJedi
60

Proxy: Itu membuat permintaan atas nama klien . Jadi, server akan mengembalikan respons ke proxy, dan proxy akan meneruskan respons ke klien. Bahkan, server tidak akan pernah "mengetahui" siapa klien itu (alamat IP klien); itu hanya akan tahu proxy. Namun, klien pasti tahu server, karena pada dasarnya memformat permintaan HTTP yang ditujukan untuk server, tetapi hanya menyerahkannya ke proxy.

Masukkan deskripsi gambar di sini

Reverse Proxy: Menerima permintaan atas nama server . Ini meneruskan permintaan ke server, menerima respons dan kemudian mengembalikan respons ke klien. Dalam hal ini, klien tidak akan pernah "mengetahui" siapa server sebenarnya (alamat IP server) (dengan beberapa pengecualian); itu hanya akan tahu proxy. Server akan atau tidak akan tahu klien yang sebenarnya, tergantung pada konfigurasi proxy terbalik.

Masukkan deskripsi gambar di sini

Dimos
sumber
6
Saya merasa seperti saya dapat menyalin dan menempelkan definisi Anda ke belakang dan itu masih benar. Saya tidak berpikir ini menjelaskan perbedaan utama atau menjelaskan apa yang "terbalik" tentang proxy terbalik?
8bitjunkie
6
Proxy akan selalu bertindak atas nama seseorang (menyembunyikan identitasnya dari pihak lain). "Reverse" mengacu pada membalikkan sisi yang "tersembunyi", dengan itu menjadi klien pada case pertama (proxy reguler) dan server pada case kedua (reverse proxy). Memang, istilah itu dapat digunakan secara bergantian, hanya masalah konvensi setelah memilih kasus pertama sebagai proxy reguler (mungkin karena alasan historis). Semoga ini masuk akal.
Dimos
44

Penjelasan terbaik ada di sini dengan diagram:

Sementara proxy yang maju mewakili atas nama klien ( atau meminta host ) , proxy sebaliknya proksi mewakili server.

Akibatnya, sedangkan proxy yang maju menyembunyikan identitas klien, proxy sebaliknya menyembunyikan identitas server.

Farhan
sumber
38

Proksi server proksi (dan secara opsional menyimpan) permintaan jaringan keluar ke berbagai sumber daya publik yang tidak terkait di Internet. Proxy terbalik menangkap (dan secara opsional menyimpan) permintaan masuk dari Internet dan mendistribusikannya ke berbagai sumber daya swasta internal, biasanya untuk tujuan ketersediaan tinggi.

Ignacio Vazquez-Abrams
sumber
28

Proxy (Alihkan Proksi):

Ketika komputer di LAN Anda terhubung ke server proxy yang mengakses Internet. Manfaat termasuk hanya server yang terpapar ke Internet. Orang-orang di luar tidak dapat mengakses komputer secara langsung. Meneruskan proksi dapat meningkatkan akses Internet untuk pengguna dengan melakukan caching unduhan. Mereka juga dapat digunakan untuk membatasi akses ke situs tertentu. Selain itu, hanya server proxy yang perlu alamat publik, bukan klien yang terhubung.

Membalikkan Proksi:

Proxy terbalik adalah kebalikan dari proxy yang maju. Sebaliknya itu bertindak sebagai proxy atas nama server yang terhubung. Alih-alih mengakses server jarak jauh secara langsung, pengguna akan melalui proxy terbalik dan diarahkan ke server yang sesuai dari sana. Hanya proksi terbalik yang memerlukan sertifikat SSL, hanya satu alamat IP publik yang diperlukan, dan dapat menangani penyeimbangan beban permintaan yang masuk untuk meningkatkan pengalaman pengguna secara keseluruhan.

Masukkan deskripsi gambar di sini

Sumber Gambar: Membuat Proxy Teruskan Menggunakan Routing Permintaan Aplikasi

JSON C11
sumber
3
IMHO, jawaban paling sederhana / terbaik.
Vinicius Gonçalves
12

Pemahaman saya dari perspektif Apache adalah bahwa proxy berarti bahwa jika situs x proksi untuk situs y, maka permintaan untuk x kembali y.

Proxy terbalik berarti bahwa respons dari y disesuaikan sehingga semua referensi ke y menjadi x.

Sehingga pengguna tidak dapat mengatakan bahwa proxy terlibat ...

Chris Kimpton
sumber
10

Sesuai pemahaman saya ...

Untuk mulai dengan, seperti semua orang tahu, proksi berarti "otoritas untuk mewakili orang lain". Sekarang ada dua hal, maju dan mundur proxy.

Teruskan proksi

Misalkan Anda ingin mengakses "Google" dan "Google" pada gilirannya akan memiliki sejumlah server untuk menanggapi permintaan khusus itu.

Sekarang dalam kasus ini, saat Anda meminta sesuatu dari Google dan Anda tidak ingin Google melihat alamat IP Anda, maka Anda akan menggunakan proxy yang diteruskan, seperti yang dijelaskan di bawah ini.

A → B → C

Sekarang di sini Anda adalah A, mengirimkan permintaan melalui B. Jadi C akan berpikir bahwa permintaan tersebut berasal dari B, bukan A. Dengan cara ini Anda dapat mencegah alamat IP klien Anda agar tidak terekspos ke dunia luar.

Membalikkan proxy

Sekarang dalam hal ini, untuk membuat Anda mengerti, kami akan mengambil kasus yang sama dari proxy yang maju. Di sini Anda telah meminta sesuatu ke Google, yang pada gilirannya akan mengirim satu permintaan ke server aplikasi atau server proxy lain untuk mendapatkan respons. Jadi hal-hal ini akan terjadi sebagaimana dijelaskan di bawah ini.

A → B → C

C → D

C ← D

A ← B ← C

Dari diagram di atas, Anda dapat melihat bahwa permintaan telah dikirim ke C dari B, bukan dari A. Kemudian dari C akan ada satu permintaan kirim ke D. Demikian pula responsnya akan pergi ke C dari D dan kemudian ke B dan A.

Diagram di atas mengatakan hanya konteks yang penting meskipun kedua proksi bertindak dengan cara yang sama, tetapi proksi sisi klien menyembunyikan informasi klien sedangkan proksi sisi server akan menyembunyikan informasi sisi server.

Sourabh Sharma
sumber
10

Proxy penerusan memberikan anonimitas klien (yaitu, pikirkan Tor ).

Proxy terbalik memberikan server anonimitas back end (yaitu, pikirkan server di belakang DMZ).

8bitjunkie
sumber
9

Berikut adalah contoh proksi terbalik (sebagai penyeimbang beban).

Klien menjelajahi situs web.com dan server yang dikunjungi memiliki proksi terbalik yang berjalan di situ. Proxy terbalik kebetulan adalah Pound . Pound menerima permintaan dan mengirimkannya ke salah satu dari tiga server aplikasi yang ada di belakangnya. Dalam contoh ini, Pound adalah penyeimbang beban. Artinya, ini menyeimbangkan beban antara tiga server aplikasi.

Server aplikasi menyajikan konten situs web kembali ke klien.

ae.
sumber
8

Proxy maju melayani pengguna : membantu pengguna mengakses server .

Proxy terbalik melayani server : melindungi server dari pengguna .

HoangYell
sumber
4

Jika tidak ada proxy

Untuk melihat dari sisi klien dan sisi server adalah sama:

Klien -> Server

Proksi

Dari sisi klien:

Klien -> proxy -> Server

Dari sisi server:

Klien -> Server

Membalikkan proxy

Dari sisi klien:

Klien -> Server

Dari sisi server:

Klien -> proxy -> Server

Jadi saya pikir jika diatur oleh pengguna klien, itu disebut proxy ; jika diatur oleh manajer server itu adalah proxy terbalik.

Karena tujuan dan alasan pengaturannya berbeda, mereka menangani data dengan cara yang berbeda dan menggunakan perangkat lunak yang berbeda.

   User side          |      Server side
client  <->  proxy  <-->  reverse_proxy <-> real server
kuda kecil
sumber
Akan lebih baik jika Representasi Grafisnya tetapi konten yang bagus. @ Tinyhare
Narendra
3

Melihat dari perspektif pengguna: saat mengirim permintaan ke proxy atau membalikkan proxy server:

  • proksi - memerlukan dua argumen :

    1) apa yang didapat dan 2) server proxy mana yang akan digunakan perantara

  • reverse proxy - membutuhkan satu argumen :

    1) apa yang harus didapat

Proxy terbalik mengambil konten dari server lain tanpa sepengetahuan pengguna dan mengembalikan hasilnya seolah-olah itu berasal dari server proxy terbalik .

pspi
sumber
1

Sebagian besar jawaban sebelumnya baik, tetapi menurut saya tidak ada yang mendekati dengan cukup baik kualitas "terbalik" yang membedakan keduanya. Untuk melakukan itu, beberapa cara memvisualisasikan sifat "terbalik" dari apa yang pada dasarnya hal yang sama (proxy) perlu diberikan, dan perlu diberikan dengan cara yang abstrak.

Sebuah Proxy (implisit "maju proxy") menghubungkan beberapa klien lokal untuk setiap satu server remote:

c--
   |--p--s
c--

Sebuah reverse proxy menghubungkan beberapa server lokal untuk salah satu klien remote (pemberitahuan bagaimana membalikkan tata letak):

s--
   |--p--c
s--

Ini adalah masalah perspektif benar-benar dan benar memahami konsep membutuhkan abstrak jauh rincian tidak penting (untuk konsep tertentu) meskipun mereka mungkin sangat penting ketika datang ke pragmatik operasi proxy. Rincian tersebut termasuk fakta bahwa dalam kedua skenario kenyataannya adalah bahwa banyak klien terhubung ke beberapa server, bahwa klien dan server mungkin tidak benar-benar lokal atau jauh, di mana cloud Internet berada atau visibilitas seperti apa yang ada antara klien dan server.

Fotios Basagiannis
sumber
"beberapa server lokal ke satu klien jarak jauh" - hm, mengapa tidak beberapa server ke beberapa klien? Maksud saya - server itu sendiri tidak terhubung ke klien, hanya menanggapi permintaan klien, tidak peduli apakah itu banyak klien atau klien tunggal yang sama.
JustAMartin
Baca lagi - terutama paragraf terakhir dan cobalah untuk memahami "klien mana pun jarak jauh" sebagai salah satu dari banyak contoh operasi
Fotios Basagiannis
Teksnya ok, hanya saja diagram kedua membuat saya tiba-tiba berpikir "hei, ke mana klien lain pergi?" ketika saya membandingkannya dengan diagram pertama.
JustAMartin
Ya, itu karena klien itu bukan salah satu dari dua lainnya. Pengembang cenderung berpikir dalam istilah yang sangat konkret dan spesifik karena inilah yang membantu ketika Anda menerapkan hal-hal namun cara berpikir yang sama tidak terlalu membantu ketika memikirkan abstraksi.
Fotios Basagiannis