Perbedaan utama antara SSI (Server Side Include) dan ESI (Edge Side include)

13

Saya perlu memasukkan konten dinamis ke halaman statis di tingkat server web. 2 opsi yang saya temukan sejauh ini adalah Server Side Include (SSI)dan Edge Side Include (ESI).

Sementara asal usul yang SSItampak tua dan tidak jelas ( halaman cache dari 95 dari University of Illinois tampaknya menjadi rujukan , tampaknya itu berasal dari NCSA httpdserver web yang dulu memberi daya sekitar 95% dari jaring ), yang ESItampaknya lebih baru dan bersukacita ( w3 spesifikasi dari tahun 2001, sebagian besar ditulis oleh orang-orang dari Akamai ).

Juga, saya terus mendengar tentang Varnish+ESI dan saya bertanya-tanya apakah itu seharusnya menjadi cara untuk pergi. Namun saya sudah memiliki pengaturan nginx, yang hanya mendukung SSI, dan ingin mengikuti KISSprinsip dan menghindari penggunaan Varnishjika memungkinkan.

Untuk kasus penggunaan langsung saya, yang akan menyertakan bilah pengguna dinamis di bagian atas setiap halaman, saya percaya SSIakan melakukan pekerjaan itu. Namun saya khawatir bahwa seiring pertumbuhan situs web saya, saya akan memerlukan fitur yang hanya didukung oleh ESIyang akan memaksa saya untuk mendesain ulang semuanya, yang membawa saya ke pertanyaan saya (akhirnya pembaca mengatakan):

Apa saja fitur utama yang tidak didukung oleh SSIyang akan membuat Anda memilih ESI(dan sebaliknya)?

Maks
sumber
Selain kesederhanaan desain, mengapa Anda tidak dapat memanfaatkan keduanya?
MikeyB
2
Kesederhanaan desain adalah alasan mengapa saya tidak akan memanfaatkan keduanya pada saat ini (bukan karena saya pikir mereka tidak akan cocok bersama tetapi karena saya tidak akan punya waktu untuk mengimplementasikan dan memelihara keduanya saya pikir).
Maks
Untuk apa yang saya lihat, ESI seperti SSI, tetapi dengan lebih banyak fitur (try-catch, ...).
Julien

Jawaban:

2

Tag untuk SSI dan ESI sangat mirip sehingga saya tidak akan terlalu khawatir tentang hal ini. Varnish hanya mendukung penggunaan ESI paling dasar.

Gunakan SSI dan nginx sejak Anda memilikinya, dan jika Anda memerlukan caching Varnish, Anda hanya tinggal skrip shell yang sepele untuk mengubah SSI menjadi ESI.

Pax
sumber
1

Varnish dirancang untuk itu, sehingga Anda akan memiliki lebih banyak opsi dengan Varnish untuk mengelola cache daripada dengan Nginx (bahkan jika Nginx memiliki banyak opsi bawaan).

Karena Nginx selalu sesuai dengan kebutuhan saya (cache fragmen sederhana, proksi, kecepatan yang baik ...) Saya belum pernah mencoba Varnish!

Thomas Decaux
sumber