AWS CloudFront
Pendahuluan
Di AWS, ada komponen CloudFront yang biasa dipakai sebagai komponen untuk CDN (Content Delivery Network).
CDN disini berarti sekelompok server yang disebar secara Geografis, agar content yang disediakan dan diminta oleh pengguna lebih cepat dan lebih dekat kepada pengguna.
Efek nya tentunya pengguna akan merasakan loading content yang lebih cepat, karena lokasi Geografis servernya yang terdekat, membuat hop servernya tidak perlu banyak.
Dengan CloudFront ini, maka dapat dicapai low latency and high transfer speeds dari content kita.
Komponen ini biasanya untuk :
- Static Content seperti website, termasuk didalamnya html, gambar, css, javascript, dll.
- Dynamic Content seperti API service.
- Streaming video
- Software Distribution
- dll.
Kalau kita gambarkan, maka skema di CloudFront adalah sbb :
gambar diambil dari https://aws.amazon.com/id/blogs/aws/introducing-cloudfront-functions-run-your-code-at-the-edge-with-low-latency-at-any-scale/
Bagaimana CloudFront ini bisa lebih cepat mengirimkan content ?
Tentu saja karena letak server nya yang lebih dekat.
Tapi bagaimana bisa letak server nya lebih dekat ?
Padahal kan mestinya sumber datanya dari satu server yang satu saja, agar didapatkan konsistensi data.
Nah, disinilah perlu nya strategi Cache .
Cache merupakan komponen utama dari CDN
Dengan melakukan Cache, maka content yang awalnya cuma di satu server, bisa diduplikasi ke banyak server yang lebih dekat kepada pengguna.
Dengan Cache, maka tidak perlu mendapatkan data dari server utama nya, cukup dari server Cache nya saja.
Apa saja komponen lainnya ?
Ok..ok, kalau kita bedah lagi, maka ada komponen berikut yang digunakan dalam CloudFront .
1. Origin
Origin adalah server awal, atau server utama nya yang digunakan sebagai acuan awal ketika melakukan Caching terhadap contentnya.
Di AWS, Origin ini bisa saja berupa :
- S3 bucket
- HTTP server di EC2 server
- API Gateway
- Elastic Load Balancing.
- AWS Media Service
- server on-premise
2. Point Of Presence (POP), Edge Location, dan Regional Edge Cache
Point Of Presence merupakan lokasi dari sekumpulan server Cache yang digunakan untuk menduplikasi content dari Origin.
Saat ini AWS mempunyai lebih dari 400 Point Of Presence di seluruh dunia.
3. Cloud Front Origin Shield
Sebenarnya infrastruktur dari CloudFront tidak hanya menggunakan satu layer saja untuk Caching, akan tetapi bertahap , seperti :
- Point Of Presence (POP)
- lalu ke Regional Edge Cache
- lalu ke Origin
Infrastruktur seperti ini memungkinkan terjadinya :
- Cross region caching yang tidak diperlukan.
- Hit Ratio ke Origin yang duplikat.
- Flooding hit ke Origin.
Oleh karena itu dibutuhkan satu infrastruktur untuk mengelola Caching secara lebih terpusat, sekaligus memperbaiki keamanan dan hit ratio ke origin yang lebih sedikit.
Disinilah CloudFront Origin Shield berguna.
Tetapi memang perlu kasus khusus untuk menggunakn mark>CloudFront Origin Shield ini , seperti :
- Pengguna yang tersebar secara geografis di banyak region.
- Origin yang biasanya untuk live-streaming atau on-the-fly image processing.
- Origin yang lokasi nya di on-premise dengan kapasitas atau bandwidth terbatas.
- Ketika menggunakan banyak CDN di aplikasi kita.
Cukup itu dulu, kita bahas lagi di artikel selanjutnya …