Pelajari tentang aplikasi Redis untuk Java dan Spring Boot

Selesai

Saat instans Azure Cache for Redis Anda disebarkan, baca bagian berikut untuk mempelajari selengkapnya tentang teknologi berikut:

  • Redis dan Azure Cache for Redis.
  • Redis dengan aplikasi Java dan Spring Boot.
  • Cache terdistribusi Spring Data Redis.

Redis dan Azure Cache for Redis

Redis adalah penyimpanan data dalam memori terdistribusi sumber terbuka berlisensi BSD dengan durabilitas opsional yang bertindak sebagai cache dan broker pesan. Redis adalah salah satu database kunci-nilai paling populer, dengan kemudahan penggunaan, performa, dan skalabilitas yang menjadikannya pilihan yang sangat baik untuk pengembang aplikasi.

Azure Cache for Redis adalah versi terkelola Redis yang dikelola dan dioperasikan Azure di cloud. Azure Cache for Redis menawarkan semua manfaat Redis, termasuk throughput dan performa tinggi untuk menangani jutaan permintaan per detik. Azure juga memberikan keuntungan dari layanan cloud terkelola, seperti patch otomatis, pembaruan, penskalaan, dan provisi.

Azure Cache for Redis menawarkan beberapa tingkat layanan. Tingkat lanjut menyediakan pengklusteran, replikasi geografis, dan ketersediaan tinggi untuk beban kerja yang paling penting.

Kasus penggunaan Azure Cache for Redis

Redis dan Azure Cache for Redis menyediakan kasus penggunaan utama berikut:

  • Cache terdistribusi mempercepat aplikasi yang mengandalkan database SQL. Redis dapat menurunkan biaya aplikasi, karena penskalaan kluster Redis lebih murah daripada menskalakan database.
  • Penyimpanan data sesi HTTP menyimpan data sesi, yang memungkinkan penskalaan aplikasi berbasis sesi. Aplikasi yang menggunakan JavaServer Faces (JSF) atau yang menyimpan data keamanan dalam sesi pengguna biasanya menggunakan mekanisme ini.
  • Solusi broker pesan menerapkan arsitektur publikasi/berlangganan atau antrean.

Menggunakan Redis dengan Java

Redis tidak menyediakan pustaka resmi untuk pengembang Java, tetapi ada beberapa pustaka sumber terbuka. Salah satu keputusan utama Anda sebagai pengembang Java adalah memilih pustaka yang paling sesuai dengan kebutuhan Anda. Yang paling populer adalah pustaka berikut.

  • Jedis adalah pustaka yang paling banyak digunakan, dan sederhana dan mudah digunakan.
  • Lettuce adalah pustaka yang digunakan modul ini, karena dilengkapi dengan Spring Data for Redis. Lettuce memiliki dukungan asinkron yang besar, yang penting jika Anda ingin membuat aplikasi Spring reaktif.
  • Redisson adalah klien Redis paling canggih. Anda dapat menggunakan Redisson sebagai cache tingkat kedua Hibernate jika Anda membutuhkan fitur tersebut.

Menggunakan Spring Data Redis untuk membuat cache terdistribusi

Untuk membuat cache terdistribusi dengan menggunakan Redis dengan Spring Boot, biasanya dengan Spring Initializr, Anda melakukan tiga tugas utama:

  1. Tambahkan pustaka Spring Data Redis ke aplikasi Anda.
  2. Konfigurasikan file application.yml Anda untuk menyambungkan ke instans Azure Cache for Redis Anda.
  3. Logika bisnis kode dengan menggunakan Spring Data Redis untuk menyimpan dan mengambil data dari cache.

Modul saat ini menggunakan pustaka Lettuce, tetapi Anda tidak perlu menggunakan pustaka secara langsung kecuali Anda memerlukan konfigurasi tingkat lanjut. Spring Data menangani kode akses data dengan menggunakan mekanisme yang harus dipahami oleh sebagian besar pengembang Spring. Anda juga dapat menggunakan Spring Data untuk mengakses database SQL dengan menggunakan Java Persistence API (JPA), dan untuk mengakses database NoSQL seperti MongoDB.

Spring Data mengharuskan Anda membuat kelas berikut:

  • Kacang Java untuk menyimpan data Anda. Anda membuat anotasi kelas dengan @RedisHash anotasi Java untuk menyimpan dan mengambil data Redis melalui kunci tertentu.

  • Repositori Spring. Repositori ini adalah kelas Java tertentu yang dapat melakukan operasi membuat, mengambil, memperbarui, menghapus (CRUD) database pada kacang Java yang menyimpan data. Misalnya, kelas ini dapat menyimpan satu instans kacang atau mengambil daftar kacang.

    Anda dapat menyuntikkan repositori Spring ini ke dalam kacang Spring standar apa pun. Misalnya, Anda dapat menyuntikkan repositori ke dalam pengontrol Spring MVC REST, yang menyimpan dan mengakses data repositori.

Lanjutkan ke unit berikutnya untuk membuat aplikasi Spring Boot dengan cache terdistribusi yang menggunakan Spring Data Redis. Anda dapat membuat aplikasi sambil menunggu cache Azure Cache for Redis selesai disebarkan.