DISUSUN OLEH :
[Mufti Kalean] [3411171136]
KELAS
AIG -
o Apakah aman menggunakan nilai yang di-cache? Sepotong data yang sama
dapat memiliki persyaratan konsistensi yang berbeda dalam konteks yang
berbeda. Misalnya, selama pembayaran online, Anda memerlukan harga
otoritatif suatu item, sehingga penyimpanan dalam cache mungkin tidak
sesuai. Namun, di halaman lain, harga mungkin beberapa menit kedaluwarsa
tanpa berdampak negatif pada pengguna.
o Apakah caching efektif untuk data itu? Beberapa aplikasi menghasilkan pola
akses yang tidak cocok untuk caching—misalnya, menyapu ruang kunci dari
kumpulan data besar yang sering berubah. Dalam hal ini, memperbarui cache
dapat mengimbangi keuntungan apa pun yang ditawarkan oleh caching.
o Apakah data terstruktur dengan baik untuk caching? Cukup menyimpan
catatan database seringkali cukup untuk menawarkan keuntungan kinerja
yang signifikan. Namun, di lain waktu, data paling baik di-cache dalam format
yang menggabungkan beberapa catatan secara bersamaan. Karena cache
adalah penyimpanan nilai kunci yang sederhana, Anda mungkin juga perlu
meng-cache rekaman data dalam beberapa format berbeda, sehingga Anda
dapat mengaksesnya dengan atribut yang berbeda dalam rekaman.
BAB II. PEMBAHASAN
A. Gambaran Caching
c. Ikhtisar Caching
- Mesin RAM dan In-Memory: Karena tingkat permintaan yang tinggi atau IOPS
(operasi Input/Output per detik) yang didukung oleh mesin RAM dan In-Memory,
caching menghasilkan peningkatan kinerja pengambilan data dan mengurangi
biaya dalam skala besar. Untuk mendukung skala yang sama dengan database
tradisional dan perangkat keras berbasis disk, diperlukan sumber daya
tambahan. Sumber daya tambahan ini menaikkan biaya dan masih gagal
mencapai kinerja latensi rendah yang disediakan oleh cache Dalam Memori.
- Seluler
Aplikasi seluler adalah segmen pasar yang tumbuh sangat cepat mengingat
adopsi perangkat konsumen yang cepat dan penurunan penggunaan peralatan
komputer tradisional. Baik itu untuk game, aplikasi komersial, aplikasi kesehatan,
dan sebagainya, hampir setiap segmen pasar saat ini memiliki aplikasi mobile
friendly. Dari perspektif pengembangan aplikasi, membuat aplikasi seluler sangat
mirip dengan membuat bentuk aplikasi lainnya. Anda memiliki bidang perhatian
yang sama, tingkat presentasi, tingkat bisnis, dan tingkat data. Meskipun ruang
layar dan alat pengembangan Anda berbeda, memberikan pengalaman
pengguna yang luar biasa adalah tujuan bersama di semua aplikasi. Dengan
strategi caching yang efektif, aplikasi seluler Anda dapat memberikan performa
yang diharapkan pengguna, menskalakan secara masif, dan mengurangi biaya
keseluruhan.
- Teknologi Periklanan
Aplikasi Ad Tech modern sangat menuntut dalam hal kinerja. Contoh area
pertumbuhan yang signifikan di AdTech adalah penawaran waktu nyata (RTB),
yang merupakan pendekatan berbasis lelang untuk bertransaksi iklan bergambar
digital secara waktu nyata, pada tingkat tayangan yang paling terperinci. RTB
adalah metode transaksi yang dominan pada tahun 2015, menyumbang 74,0
persen dari iklan yang dibeli secara terprogram, atau 11 miliar dolar di AS
(menurut Analisis eMarketer). Saat membuat aplikasi penawaran waktu nyata,
satu milidetik dapat menjadi perbedaan antara mengajukan tawaran tepat waktu
dan menjadi tidak relevan. Ini berarti mendapatkan informasi penawaran dari
database harus sangat cepat. Caching basis data, yang dapat mengakses detail
penawaran dalam sub milidetik, merupakan solusi hebat untuk mencapai kinerja
tinggi tersebut.
- Game
Interaktivitas adalah persyaratan landasan untuk hampir semua game modern.
Tidak ada yang membuat pemain frustrasi lebih dari permainan yang lambat atau
tidak responsif, dan itu jarang berhasil. Persyaratan kinerja bahkan lebih
menuntut untuk game multipemain seluler, di mana tindakan yang dilakukan oleh
satu pemain perlu dibagikan dengan orang lain secara waktu nyata. Caching
memainkan peran penting dalam menjaga kelancaran game dengan
memberikan respons kueri sub-milidetik untuk data yang sering diakses.
- Media
Perusahaan media sering berurusan dengan kebutuhan untuk mengirimkan
sejumlah besar konten statis ke pelanggan mereka dengan jumlah
pembaca/pemirsa yang terus berubah. Contohnya adalah layanan streaming
video seperti Netflix atau Amazon Video, yang mengalirkan konten video dalam
jumlah besar ke pemirsa. Ini sangat cocok untuk Jaringan Pengiriman Konten,
tempat data disimpan di kumpulan server caching yang terdistribusi secara
global. Aspek lain dari aplikasi media adalah bahwa beban cenderung melonjak
dan tidak dapat diprediksi. Bayangkan sebuah blog di situs web yang baru saja
di-tweet oleh selebritas, atau situs web tim sepak bola selama Super Bowl.
Lonjakan permintaan yang begitu besar ke subkumpulan konten yang kecil
merupakan tantangan bagi sebagian besar database karena mereka dibatasi
dalam throughput per kuncinya. Karena memori memiliki throughput yang jauh
lebih tinggi daripada disk, cache database akan menyelesaikan masalah
dengan mengarahkan ulang bacaan ke cache memori.
- Perdagangan elektronik
Aplikasi eCommerce modern menjadi lebih canggih, menawarkan pengalaman
belanja yang dipersonalisasi, termasuk rekomendasi waktu nyata berdasarkan
data pengguna dan riwayat belanja. Itu sering juga termasuk melihat jejaring
sosial pengguna dan memberikan rekomendasi berdasarkan apa yang disukai
atau dibeli teman-temannya. Sementara jumlah data yang dibutuhkan untuk
diproses meningkat, kesabaran pelanggan tidak. Oleh karena itu, menjaga
kinerja aplikasi secara real-time bukanlah suatu kemewahan, tetapi suatu
keharusan; strategi caching yang dijalankan dengan baik adalah aspek penting
dari kinerja aplikasi, dan bisa menjadi pembeda antara keberhasilan atau
kegagalan aplikasi, antara melakukan penjualan atau kehilangan pelanggan.
- Media sosial
Aplikasi Media Sosial telah menggemparkan dunia. Jejaring sosial seperti
Facebook, Twitter, Instagram, dan Snapchat memiliki sejumlah besar pengguna
yang mengonsumsi konten dalam jumlah yang terus bertambah. Saat pengguna
membuka feed-nya, dia berharap untuk melihat konten terbarunya yang
dipersonalisasi hampir secara real-time. Itu bukan konten statis karena setiap
pengguna memiliki teman, gambar, minat, dll. yang berbeda, memperburuk
kebutuhan kompleksitas rekayasa dari platform yang mendasarinya. Aplikasi
Media Sosial juga sangat rentan terhadap lonjakan penggunaan seputar acara
hiburan, olahraga, dan politik utama. Ketahanan lonjakan dan kinerja real-time
seperti itu dicapai melalui beberapa lapisan caching – termasuk Jaringan
Pengiriman Konten untuk konten statis seperti gambar latar belakang, cache
sesi untuk melacak data sesi pengguna saat ini, dan cache basis data untuk
menyimpan data yang sering diakses seperti berita terbaru dari teman terdekat
dan beberapa gambar terakhir.
- Kesehatan dan Kebugaran
Industri perawatan kesehatan sedang mengalami revolusi digital, membuat
perawatan tersedia dan dapat diakses oleh semakin banyak pasien di seluruh
dunia. Beberapa aplikasi memungkinkan pasien melihat Dokter untuk konsultasi
video, dan sebagian besar penyedia layanan utama memiliki aplikasi yang
memungkinkan pasien melihat hasil tes mereka dan berinteraksi dengan staf
medis. Di sisi kesehatan, ada banyak aplikasi mulai dari melacak aktivitas sensor
khusus pengguna (mis. FitBit dan Jawbone), hingga pelatihan dan data
kesehatan yang komprehensif. Mengingat sifat interaktif dari aplikasi tersebut,
kebutuhan akan aplikasi berperforma cepat, bisnis, dan tingkatan data harus
diperhatikan. Dengan strategi caching yang efektif, Anda akan dapat
memberikan kinerja yang cepat, mengurangi biaya infrastruktur secara
keseluruhan, dan menskalakan seiring bertambahnya penggunaan Anda.
Selain itu, saat pemadaman terjadi, data di cache lokal akan hilang dan
perlu direhidrasi secara efektif untuk meniadakan cache. Sebagian besar
kontra ini dikurangi dengan cache jarak jauh. Cache jarak jauh (atau
"cache samping") adalah instance terpisah (atau beberapa instance) yang
didedikasikan untuk menyimpan data yang di-cache di dalam memori.
Selain itu, latensi rata-rata permintaan ke cache jarak jauh dipenuhi dalam
latensi sub-milidetik, jauh lebih cepat daripada basis data berbasis disk. Pada
kecepatan ini, cache lokal jarang diperlukan. Dan karena cache jarak jauh
berfungsi sebagai kluster terhubung yang dapat dimanfaatkan oleh semua
sistem Anda yang berbeda, mereka ideal untuk lingkungan terdistribusi.
Dengan cache jarak jauh, orkestrasi antara menyimpan data dalam cache
dan mengelola validitas data dikelola oleh aplikasi Anda dan/atau proses
yang memanfaatkannya. Cache itu sendiri tidak terhubung langsung ke
database tetapi digunakan secara berdekatan. Kami akan memfokuskan
perhatian kami pada memanfaatkan cache jarak jauh dan khususnya Amazon
ElastiCache for Redis untuk menyimpan data database relasional ke dalam
cache.
o Teknik Caching Database Relasional
Banyak teknik yang akan kami ulas dapat diterapkan ke semua jenis database.
Namun, kami akan fokus pada database relasional karena ini adalah kasus
penggunaan caching database yang paling umum.
Paradigma dasar saat meminta data dari database relasional dari aplikasi
termasuk mengeksekusi pernyataan SQL dan mengulangi kursor objek
ResultSet yang dikembalikan untuk mengambil baris database. Saat ingin meng-
cache data yang dikembalikan, ada beberapa teknik yang dapat Anda terapkan,
namun yang terbaik adalah memilih metode yang menyederhanakan pola akses
data dan/atau mengoptimalkan tujuan arsitektur aplikasi.
Untuk memvisualisasikan ini lebih lanjut, kami akan memeriksa cuplikan kode
sampel untuk tujuan menjelaskan logika caching database. Kami juga akan
menggunakan pustaka klien Jedis Redis untuk menghubungkan ke Redis
meskipun pustaka Java Redis apa pun termasuk Lettuce dan Redisson akan
berfungsi. Perlu juga dicatat bahwa beberapa kerangka kerja aplikasi mungkin
merangkum beberapa teknik logika caching basis data di bawah ini. Dengan
demikian, masih penting untuk memahami detail implementasi terutama saat
tidak menggunakan abstraksi tingkat yang lebih tinggi tersebut.
o Setelah mengeluarkan kueri terhadap database pelanggan untuk catatan tertentu
dan dari sana kita akan memeriksa strategi caching yang dapat dimanfaatkan.
Asumsikan kueri SQL berikut mengembalikan catatan:
PILIH FIRST_NAME, LAST_NAME, EMAIL, KOTA, NEGARA, ALAMAT,
NEGARA DARI PELANGGAN MANA CUSTOMER_ID = “1001”;
...
Pernyataan stmt = connection.createStatement();
ResultSet rs = stmt.executeQuery(permintaan);
while (rs.next()) {
pelanggan.setFirstName(rs.getString("FIRST_NAME"));
pelanggan.setLastName(rs.getString("LAST_NAME"));
dan seterusnya…
}
...
- Con: Pengambilan data masih memerlukan penggalian nilai dari kursor objek
ResultSet dan tidak lebih menyederhanakan akses data; itu hanya mengurangi
latensi pengambilan data.
Catatan, saat melakukan cache baris, penting agar baris tersebut dapat diserialisasi.
Contoh di bawah menggunakan implementasi CachedRowSet untuk tujuan ini. Juga
saat menggunakan Redis, ini disimpan sebagai nilai array Byte.
...
// rs berisi ResultSet
cachedRowSet.populate(rs, 1);
keluar.writeObject(cachedRowSet);
jedis.set(key.getBytes(), redisRSValue);
jedis.expire(key.getBytes(), ttl);
}
...
- Cuplikan di atas mengonversi objek CachedRowSet ke dalam ByteArray, lalu
menyimpan array Byte tersebut sebagai nilai Redis Byte Array. Nilai kunci yang
digunakan di atas, adalah pernyataan SQL aktual yang diubah menjadi Bytes.
Hal yang menyenangkan tentang menyimpan pernyataan SQL sebagai kunci
untuk teknik ini adalah membantu mengaktifkan lapisan abstraksi caching
transparan yang menyembunyikan detail implementasi. Manfaat tambahan
lainnya adalah Anda tidak perlu membuat pemetaan tambahan apa pun antara id
kunci khusus dan pernyataan SQL yang dijalankan. Pernyataan terakhir
mengeksekusi perintah kedaluwarsa untuk menerapkan TTL ke kunci yang
disimpan. Kode ini mengikuti logika write-through kami di mana setelah
menanyakan database, nilai yang di-cache disimpan segera sesudahnya.
Untuk populasi yang malas, Anda awalnya akan menanyakan cache sebelum
menjalankan kueri terhadap database. Tip yang bagus untuk menyembunyikan
detail implementasi adalah dengan memanfaatkan pola DAO dan memaparkan
metode generik untuk aplikasi Anda untuk mengambil data. Misalnya, karena kunci
Anda adalah pernyataan SQL yang sebenarnya, tanda tangan metode Anda akan
terlihat seperti berikut:
redisResultSet = jedis.get(key.getBytes());
ResultSet rs = null;
try {
cachedRowSet.populate((CachedRowSet) di.readObject());
rs = cacheRowSet;
} else {
// ambil ResultSet dari database, simpan di objek rs, lalu simpan di cache.
}
kembalikan rs;
- Jika data tidak ada di cache, Anda akan meminta database untuk itu, lalu
menyimpannya sebelum kembali. Seperti disebutkan sebelumnya, praktik terbaik
adalah menerapkan TTL yang sesuai pada KEY juga.
o Cache pilih bidang dan nilai dalam format khusus
Cache subset dari baris database yang diambil ke dalam struktur kustom yang
dapat digunakan oleh aplikasi Anda
- Pro: Pendekatan ini sangat mudah diterapkan. Anda pada dasarnya menyimpan
bidang dan nilai tertentu yang diambil ke dalam struktur seperti JSON atau XML,
lalu SET struktur itu ke dalam Redis String. Format yang Anda pilih harus sesuai
dengan pola akses data aplikasi Anda.
- Con: Aplikasi Anda memanfaatkan berbagai jenis objek saat meminta data
tertentu (yaitu Redis String dan hasil database bila diperlukan).
o Amazon ElastiCache Dibandingkan dengan Redis yang Dikelola Sendiri
Redis adalah sumber terbuka, penyimpanan data dalam memori yang telah
menjadi mesin kunci/nilai paling populer di pasar. Sebagian besar popularitasnya
adalah karena dukungannya untuk berbagai struktur data serta fitur lainnya
termasuk dukungan skrip Lua dan kemampuan pesan Pub/Sub. Manfaat
tambahan lainnya termasuk topologi ketersediaan tinggi dengan dukungan untuk
replika baca dan kemampuan untuk mempertahankan data.
Amazon ElastiCache menawarkan layanan terkelola penuh untuk Redis.
Artinya, semua tugas administratif yang terkait dengan pengelolaan
klaster Redis Anda termasuk pemantauan, penambalan, pencadangan,
dan kegagalan otomatis dikelola oleh Amazon. Ini memungkinkan Anda
untuk fokus pada bisnis dan data Anda daripada berfokus pada operasi.
Manfaat lain menggunakan Amazon ElastiCache for Redis daripada mengelola
sendiri lingkungan cache Anda meliputi:
Amazon CloudFront adalah CDN skala besar, global, dan kaya fitur yang
menyediakan penyampaian aplikasi yang aman, dapat diskalakan, dan
terintegrasi secara cerdas. Diagram tentang cara Amazon CloudFront
berintegrasi ke dalam komponen AWS ditampilkan dalam diagram berikut.
4) Cache Umum
- Dalam aplikasi, mungkin ada area arbitrer di mana perlu menyimpan dan
mengambil data yang tidak cocok untuk database tradisional agar dapat
merespons permintaan atau menghitung respons secara efisien dan cepat.
Misalnya, aplikasi Anda menerima beberapa input pengguna dan perlu
memeriksa apakah permintaan serupa dibuat dalam waktu satu jam sebelum
merespons kembali. Salah satu cara untuk mendekati ini adalah dengan
meng-cache permintaan pengguna Anda selama satu jam dan memberi kode
pada aplikasi Anda untuk memeriksa cache tersebut saat permintaan
pengguna baru dibuat. Anda mungkin juga memiliki tipe data lain yang di-
cache yang dapat membantu menghitung nilai yang digunakan dalam
respons. Jenis informasi yang di-cache ini bersifat sementara dan
membutuhkan latensi yang sangat rendah.
5) Manajemen Sesi
- Ada berbagai cara untuk mengelola sesi pengguna termasuk menyimpan sesi
tersebut secara lokal ke node yang merespons permintaan HTTP atau
menetapkan lapisan dalam arsitektur Anda yang dapat menyimpan sesi
tersebut dengan cara yang dapat diskalakan dan kuat. Pendekatan umum
yang digunakan termasuk memanfaatkan sesi Sticky atau menggunakan
Cache Terdistribusi untuk manajemen sesi Anda. Pendekatan-pendekatan ini
dijelaskan di bawah ini.
Cache hanya berisi objek yang benar-benar diminta oleh aplikasi, yang
membantu menjaga agar ukuran cache dapat dikelola. Objek baru hanya
ditambahkan ke cache sesuai kebutuhan. Anda kemudian dapat mengelola
memori cache Anda secara pasif, hanya dengan membiarkan mesin yang Anda
gunakan mengeluarkan kunci yang paling jarang diakses saat cache Anda terisi,
yang dilakukannya secara default.
Saat node cache baru online, misalnya saat aplikasi Anda ditingkatkan, metode
populasi malas akan secara otomatis menambahkan objek ke node cache baru
saat aplikasi pertama kali memintanya.
Kedaluwarsa cache mudah ditangani hanya dengan menghapus objek yang di-
cache. Objek baru akan diambil dari database saat diminta berikutnya.
Caching malas dipahami secara luas, dan banyak kerangka kerja web dan
aplikasi menyertakan dukungan di luar kotak.
# Python
def get_user(user_id):
record = cache.get(user_id)
if record is None:
# Run a DB query
cache.set(user_id, record)
return record
# App code
user = get_user(17
- dapat menemukan pustaka di banyak kerangka kerja pemrograman populer
yang merangkum pola ini. Tetapi terlepas dari bahasa pemrograman,
pendekatan keseluruhannya sama.
- harus menerapkan strategi caching malas di mana saja di aplikasi Anda di
mana Anda memiliki data yang akan sering dibaca, tetapi jarang ditulis. Di
aplikasi web atau seluler biasa, misalnya, profil pengguna jarang berubah,
tetapi diakses di seluruh aplikasi. Seseorang mungkin hanya memperbarui
profilnya beberapa kali dalam setahun, tetapi profil tersebut dapat diakses
puluhan atau ratusan kali sehari, tergantung penggunanya. Teknologi populer
yang digunakan untuk caching seperti Memcached dan Redis akan secara
otomatis menghapus kunci cache yang jarang digunakan untuk
membebaskan memori jika Anda menetapkan kebijakan penggusuran.
Dengan demikian Anda dapat menerapkan caching malas secara bebas
dengan sedikit kerugian.
d) Menulis melalui
Dalam cache tulis, cache diperbarui secara real time saat database diperbarui.
Jadi, jika pengguna memperbarui profilnya, profil yang diperbarui juga akan
dimasukkan ke dalam cache. Anda dapat menganggap ini sebagai proaktif untuk
menghindari kesalahan cache yang tidak perlu, jika Anda memiliki data yang
benar-benar Anda ketahui akan diakses. Contoh yang baik adalah jenis agregat
apa pun, seperti 100 papan peringkat game teratas, atau 10 berita paling
populer, atau bahkan rekomendasi. Karena data ini biasanya diperbarui oleh
aplikasi tertentu atau kode pekerjaan latar belakang, memperbarui cache juga
mudah dilakukan.
Pola write-through juga mudah didemonstrasikan dalam pseudocode:
# Python
# Save to DB
cache.set(user_id, record)
return record
# App code
Kabar baiknya adalah bahwa hanya situs berskala besar yang biasanya
harus mengkhawatirkan masalah penskalaan tingkat ini. Ini bagus untuk
disadari, tetapi juga masalah yang bagus untuk dimiliki.
D. Jasa Caching
- Cache File Amazon
Amazon File Cache menyediakan cache berkecepatan tinggi yang terkelola
sepenuhnya di AWS untuk memproses data file, di mana pun data disimpan (on-
premise atau AWS). Amazon File Cache adalah lokasi penyimpanan sementara
berkinerja tinggi, untuk data yang disimpan di sistem file lokal, sistem file AWS, dan
bucket Amazon S3, memungkinkan Anda membuat kumpulan data yang tersebar
tersedia untuk aplikasi berbasis file di AWS dengan satu kesatuan lihat dan pada
kecepatan tinggi – latensi sub-milidetik dan throughput tinggi.
- AmazonElastiCache
Amazon ElastiCache adalah layanan web yang memudahkan penerapan,
pengoperasian, dan penskalaan penyimpanan data dalam memori dan cache di
cloud . Layanan ini meningkatkan kinerja aplikasi web dengan memungkinkan Anda
mengambil informasi dari penyimpanan data dalam memori yang cepat, terkelola,
alih-alih mengandalkan sepenuhnya pada basis data berbasis disk yang lebih
lambat. Amazon ElastiCache mendukung dua mesin dalam memori sumber terbuka:
Redis - penyimpanan data dan cache yang cepat, open source, dalam
memori. Amazon ElastiCache for Redis adalah layanan dalam memori yang
kompatibel dengan Redis yang memberikan kemudahan penggunaan dan
kekuatan Redis bersama dengan ketersediaan, keandalan, dan kinerja yang
sesuai untuk aplikasi yang paling menuntut. Tersedia klaster single-node dan
hingga 15-shard, memungkinkan skalabilitas hingga 3,55 TiB data dalam
memori. ElastiCache for Redis dikelola sepenuhnya, dapat diskalakan, dan
aman - menjadikannya kandidat yang ideal untuk mendukung kasus
penggunaan berperforma tinggi seperti Web, Aplikasi Seluler, Game, Ad-
Tech, dan IoT.
Memcached - sistem caching objek memori yang diadopsi secara luas.
ElastiCache mematuhi protokol dengan Memcached, sehingga alat populer
yang Anda gunakan saat ini dengan lingkungan Memcached yang ada akan
bekerja mulus dengan layanan tersebut.
Amazon ElastiCache secara otomatis mendeteksi dan mengganti node yang
gagal, mengurangi overhead yang terkait dengan infrastruktur yang dikelola
sendiri dan menyediakan sistem tangguh yang mengurangi risiko kelebihan
beban database, yang memperlambat waktu muat situs web dan aplikasi. Melalui
integrasi dengan Amazon CloudWatch , Amazon ElastiCache memberikan
visibilitas yang ditingkatkan ke dalam metrik kinerja utama yang terkait dengan
node Redis atau Memcached Anda.
Menggunakan Amazon ElastiCache , Anda dapat menambahkan lapisan dalam
memori ke infrastruktur Anda dalam hitungan menit menggunakan AWS
Management Console. Pengantar Amazon ElastiCache
- Akselerator Amazon DynamoDB (DAX)
Amazon DynamoDB Accelerator (DAX) adalah cache dalam memori yang
dikelola sepenuhnya, sangat tersedia, untuk DynamoDB yang memberikan
peningkatan kinerja hingga 10x – dari milidetik menjadi mikrodetik – bahkan
dengan jutaan permintaan per detik. DAX melakukan semua pekerjaan berat
yang diperlukan untuk menambahkan akselerasi dalam memori ke tabel
DynamoDB Anda , tanpa mengharuskan pengembang mengelola pembatalan
cache, populasi data, atau manajemen kluster. Sekarang Anda dapat berfokus
untuk membuat aplikasi yang hebat bagi pelanggan Anda tanpa
mengkhawatirkan performa dalam skala besar. Anda tidak perlu memodifikasi
logika aplikasi, karena DAX kompatibel dengan panggilan API DynamoDB yang
sudah ada. Anda dapat mengaktifkan DAXhanya dengan beberapa klik di AWS
Management Console atau menggunakan AWS SDK. Sama seperti DynamoDB ,
Anda hanya membayar untuk kapasitas yang Anda sediakan.
- Amazon CloudFront
Amazon CloudFront adalah layanan jaringan pengiriman konten (CDN) global
yang mempercepat pengiriman situs web, API, konten video, atau aset web
Anda lainnya. Ini terintegrasi dengan produk Amazon Web Services lainnya
untuk memberi pengembang dan bisnis cara mudah mempercepat konten ke
pengguna akhir tanpa komitmen penggunaan minimum.
Cache adalah salah satu teknologi untuk menyimpan data sementara supaya
dapat ditampilkan dalam sebuah aplikasi, browser, atau situs tanpa perlu
mengulang – ulang kembali dalam pemrosesan data. Jadi, pastikan anda bijak
dalam menggunakan sebuah cache. Lakukan pembersihan cache secara
berkala agar tidak membuat perangkat anda menjadi lambat.