Frame 19229

Optimalkan Biaya & Performa Aplikasi Event dengan Amazon Aurora Serverless

Posted by taufik

November 18, 2025

foto artikel (1)

Bisnis di sektor event management dan ticketing menghadapi tantangan terkait lonjakan trafik ekstrem di waktu tertentu (seperti saat memulai penjualan tiket) dan penggunaan nyaris nol di luar periode tersebut. Infrastruktur on-premises tradisional membuat perusahaan harus berinvestasi besar untuk kapasitas yang hanya digunakan sesaat sehingga membuat biaya operasional tinggi dan pemborosan sumber daya. 

Menurut laporan AWS Economics Center, organisasi yang bermigrasi ke cloud menghemat 30-50 persen dari total biaya IT dan meningkatkan agility operasional hingga 37 persen berkat kemampuan skalabiltias otomatis dan optimasi berbasis penggunaan. 

Artikel ini menyajikan use case implementasi Amazon Aurora Serverless sebagai database utama untuk skenario event-based seperti ticketing. 

 

Ringkasan Use Case: Tantangan dan Kebutuhan

Sebuah perusahaan event organizer memiliki aplikasi ticketing yang hanya aktif selama beberapa kali dalam setahun. Memasuki periode event, traffic melonjak berkali-kali lipat, sementara saat idle kapasitas menurun drastis hingga mendekati nol. 

Untuk menangani kebutuhan lonjakan traffic, Amazon Aurora Serverless dapat membantu perusahaan event organizer menyesuaikan beban transaksi ketika terjadi lonjakan dan saat idle. Dengan arsitektur database auto-scaling, perusahaan event organizer dapat menyesuaikan kapasitas sesuai permintaan tanpa downtime hingga menurunkan penggunaan hingga 0 ACU (Aurora Capacity Unit) saat idle, sehingga biaya berhenti ketika tidak digunakan.

 

Langkah-langkah Implementasi Amazon Aurora Serverless

Untuk memulai proses implementasi Amzaon Aurora Serverless, perusahaan event organizer dapat melakukan langkah-langkah berikut. 

 

1. Membuat Subnet Group

Pertama buat DB Subnet Group untuk menentukan subnet dalam VPC yang akan digunakan oleh cluster Aurora. Pilih subnet di beberapa Availability Zone (AZ) untuk high availability. Umumnya minimal 2-3 subnet di AZ berbeda agar Aurora dapat menempatkan compute dan storage secara redundan. 

Picture1

 

2. Buat Database, Pilih Engine Aurora MySQL

Saat membuat database, penulis bisa memilih Amazon Aurora (MySQL-compatible). Aurora tersedia dalam dua varian engine utama: Aurora MySQL-compatible dan Aurora PostgreSQL-compatible yang sama-sama memiliki fitur seperti distributed storage, high throughput, dan fast crash recovery. 

Perbedaan utama keduanya yakni Aurora MySQL-compatible lebih cocok untuk aplikasi yang menggunakan MySQL atau migrasi mudah, sementara Aurora MpostgreSQL-compatible cocok untuk aplikasi yang menggunakan PostgreSQL. Selain engine klasik (provisioned), tersedia juga Aurora Serverless V2 yang berguna untuk beban bersifat bursty atau event based. 

2

 

3. Password & AWS Secrets Manager 

Amankan kredensial database menggunakan AWS Secrets Manager atau self-managed password yang lebih sederhana, namun membutuhkan proses rotation dan penyimpanan yang aman. Berikut tiga kelebihan utama Secrets Manager: 

  • Menyimpan dan otomatis me-rotate password (opsional). 
  • Integrasi mudah dengan aplikasi via SDK/API, dan IAM. 
  • Mengurangi risiko kredensial hard-coded. 

3

 

4. Aurora Serverless v2 dan ACU (Aurora Capacity Unit)

Aurora Serverless v2 mendukung auto scaling granular berbasis ACU. Misalnya, Anda dapat menetapkan rentang 0–8 ACU: saat tidak ada trafik, sistem idle tanpa biaya compute; saat terjadi lonjakan trafik, Aurora otomatis menambah kapasitas tanpa intervensi manual demi memastikan performa tetap stabil. 

4

 

5. High Availability dan Read Replica

Untuk menjaga read scalability dan ketersediaan tinggi, Anda dapat menambahkan read replica di Availability Zone berbeda. Aurora dapat secara otomatis melakukan failover ke replica saat node utama mengalami gangguan, memastikan uptime optimal bagi pengguna. Sebaiknya buat minimal 1 replica di AZ berbeda untuk meningkatkan ketersediaan baca dan gunakan auto failover pada konfigurasi cluster jika instance writer gagal. Pastikan juga untuk pilih VPC dan subnet group yang sebelumnya telah dibuat agar cluster berada di jaringan yang benar. 

5

 

6. Security Group dan RDS Data API

Batasi akses inbound database hanya dari sumber yang diperlukan. Aurora Serverless juga menyediakan RDS Data API, yang memungkinkan integrasi aman melalui HTTPS tanpa perlu connection pooling tradisional sehingga cocok untuk aplikasi berbasis AWS Lambda atau aplikasi tanpa jaringan langsung ke VPC tanpa koneksi langsung ke database. Demi alasan keamanan, pastikan menggunakan IAM untuk membatasi akses DATA API dan jika memungkinkan traffic internal berada di VPC private. 

6

 

7. Performance Insights & Enhanced Monitoring

Aktifkan Performance Insights untuk memantau query level paling berat dan Enhanced Monitoring untuk observasi metrik sistem seperti CPU, memory, dan I/O. Kedua tools ini penting untuk menjaga retensi lebih lama yang bisa dikarenakan biaya tambahan dan kemungkinan menambah biaya tergantung pada frekuensi sampling dan retensi. Sangat direkomendasikan untuk mengaktifkan kedua tools untuk troubleshooting dan mematikan atau mengatur retensi ketika sudah stabil demi mengurangi biaya. 

7

 

8. Log Export

Integrasi dengan Amazon CloudWatch Logs untuk pengaturan log exports untuk keperluan monitoring, troubleshooting, dan audit keamanan. Setiap log memiliki fungsi berbeda sebagai berikut: 

  • Audit log: menyimpan informasti aktivitas pengguna di database, termasuk siapa yang mengakses, waktu akses, dan aktivitas yang dilakukan untuk kebutuhan keamanan dan audit kepatuhan. 
  • Error log: menyimpan error yang terjadi di sistem database untuk mengidentifikasi penyebab masalah teknis. 
  • General log: berisi informasi umum mengenai aktivitas server MySQL atau database lain, seperti perintah SQL yang dijalankan untuk debugging query. 
  • IAM DB auth error log: mencatat kesalahan ketika menggunakan IAM authentication untuk koneksi database. 
  • Instance log: log terkait instance RDS yang berisi data operasional atau event pesan dari sistem. 
  • Slow query log: menyimpan catatan query SQL yang membutuhkan waktu lama untuk dieksekusi sehingga berguna untuk mengoptimalkan performa database. 

8

 

9. Konfigurasi Tambahan

Pengaturan lanjutan yang menentukan konfigurasi, backup, keamanan, hingga maintenance yang mencakup: 

a) Database Option

Berfungsi untuk mendefinisikan parameter dan konfigurasi awal database. 

  • Initial database name: Menentukan nama awal database yang otomatis akan dibuat di dalam instance RDS. Jika kosong, database dibuat tanpa database default. 
  • DB cluster parameter group: mengatur parameter pada tingkat cluster, termasuk pengaturan replikasi dan konfigurasi umum di seluruh instance dalam cluster. 
  • DB parameter group: mengatur konfigurasi khusus di setiap instance database (seperti ukuran cache, timeout, max connections, dsb). 
  • Option group: digunakan untuk menambahkan fitur tambahan pada database (misalnya audit plugin, Oracle, SQL Server features, MySQL plugins atau integrasi dengan layanan lain). 
  • Failover priority: menentukan urutan preferensi instance replika (reader instance) yang dijadikan sebagai primary instance ketika terjadi kegagalan. 
  • Pengaturan “no preference” berarti AWS akan memilih secara otomatis. 

 

b) Backup & Encryption at Rest

Pengaturan untuk mengontrol bagaimana dan berapa lama backup otomatis dapat tersimpan. 

  • Backup retention period: menentukan lamanya auto backup tersimpan di database AWS. 
  • Copy tags to snapshots: menyalin tag dari database ke snapshot untuk melacak dan manajemen biaya. 
  • Enable encryption: mengaktifkan enkripsi data di penyimpanan database menggunakan AWS KMS (Key Management Service) untuk meningkatkan keamanan data yang tersimpan dan backup. 
  • AWS KMS key: menentukan key yang digunakan untuk enkripsi dengan pilihan default AWS/RDS. 

9

 

c) Backtrack

Memungkinkan pengguna untuk mengembalikan database ke titik waktu tertentu tanpa perlu me-restore dari backup snapshot. Fitur ini berguna untuk pemulihan cepat dari kesalahan logika (seperti penghapusan data yang tidak sengaja), termasuk aktivasi penambahan biaya karena AWS menyimpan perubahan data tambahan untuk rewind. 

 

d) Maintenance

Bagian ini mengatur pemeliharaan database secara otomatis, termasuk enable auto minor version upgrade dan maintenance window. Aktivasi enable auto minor version upgrade dapat secara otomatis memperbarui versi minor dari engine agar selalu mendapatkan security patch dan meningkatkan stabilitas terbaru. Sementara maintenance window dapat menentukan waktu khusus untuk penerapan patch atau update, saat memilih “no preference” maka AWS dapat menjadwalkan waktu secara otomatis. 

d

 

10. Review & Create (step wizard akhir)

Tahap terakhir membuat cluster untuk mengecek semua konfigurasi, mencakup engine, VPC/subnet, security group, ACU min/max, monitoring, backup encryption kemudian klik “create”. Pastikan semua pengaturan sudah sesuai kebijakan keamanan dan kebutuhan performa. 

 

11. Database Berhasil Dibuat

Setelah pembuatan, cluster Aurora Serverless berada dalam kondisi standby bila minimal ACU = 0 dan belum ada koneksi aktif. Artinya tidak ada compute berjalan sehingga biaya komputasi mendekati nol (hanya biaya storage dan backup). Meskipun compute standby, storage tetap dikenakan biaya dan connection pool atau warm-up diperlukan ketika koneksi pertama sehingga sedikit delay ketika cold start. 

11

 

12. Deploy Aplikasi Ticketing & Pengujian Awal

Penulis men-deploy aplikasi ticketing ke EC2 dan mengarahkan koneksi ke cluster Aurora dengan langkah pengujian sebagai berikut: 

  1. Akses aplikasi dari internet

12

 

  1. Lakukan pembelian tiket dengan memasukkan data untuk memastikan koneksi dan kredensial.

12.2

 

  1. Saat koneksi berhasil, data akan masuk ke database.

12.3

12.4

 

13. Muncul Koneksi – ACU Naik

Setelah transaksi atau koneksi aktif, cluster akan memulai compute dan ACU meningkat dari 0 sesuai kebutuhan. Pada fase in perlu dilakukan monitoring ACU melalui metrik ServerlessDatabasecapacity, monitoring connection, CPU, query latency, dan throughput. Jika respons lambat, cek ulang query yang berat (bisa dicek melalui performance insight) dan lakukan tuning atau indexing. 

13

 

14. Simulasi Load (Script)

Berikutnya penulis dapat menjalankan script untuk load test seperti selama periode acara terjadi untuk memprediksi lonjakan trafik yang dapat terjadi hingga ratusan kali lipat. Langkah ini dilakukan untuk memastikan autoscaling bekerja hingga ACU maksimal dan mengidentifikasi bottleneck (connection limits, slow queries, I/O). Gunakan tools load testing terkontrol seperti K6, Locust, atau JMeter untuk memastikan batas keamanan agar tidak merusak data produksi. 

14

 

15. DB Scale ke Maximum ACU

Ketika load tinggi, Aurora Serverless v2 akan menskalakan hingga mencapai ACU maksimal yang telah diatur sebelumnya sehingga database dapat melayani puncak trafik tanpa downtime. Perhatikan latensi scale-up dan penurunan performa sementara ketika scaling, jika mencapai limit maka naikkan maksimal ACU atau optimasi query. 

15

15.1

 

16. Setelah Event Selesai, Kembalikan ACU ke 0 (Standby)

Setelah periode acara selesai, matikan script dan turunkan sistem ACU secara bertahap hingga mencapai nilai minimal (0), sehingga biaya komputasi berhenti dikenakan. 

16

16.2

16.3

Penutup & Catatan Implementasi

Implementasi Amazon Aurora Serverless menggunakan AWS Secrets Manager untuk menyimpan kredensial database secara aman dan mengaktifkan fitur rotasi otomatis demi meminimalkan risiko kebocoran data. Pastikan untuk membatasi akses ketat dengan mengatur “Security Group” dan menggunakan kebijakan IAM berbasis least privilege sehingga hanya pihak berwenang dapat mengakses database. 

Aktifkan Performance Insights dan Enhanced Monitoring untuk memudahkan proses monitoring dan troubleshooting, sesuaikan periode retensi data untuk mengelola biaya operasional secara efisien. Tentukan batas minimal dan maksimal ACU sesuai profil workload untuk aplikasi berbasis event-driven, terapkan nilai minimal 0 dan maksimal sesuai perkiraan puncak beban. 

Manfaatkan read replica untuk menangani skenario dengan intensitas reading tinggi, sehingga kinerja database utama tetap optimal. Lakukan load testing secara terencana sebelum menghadapi periode ketika terjadi lonjakan traffic untuk memastikan sistem siap menangani beban tersebut. Siapkan runbook operasional sebagai panduan ketika terjadi masalah pada mekanisme autoscaling dengan menambah batas maksimal ACU sementara atau scale-out pada read replica. 

Ingin tahu lebih dalam atau butuh panduan lanjutan terkait tutorial ini? Hubungi tim CDT untuk berdiskusi bagaimana solusi ini bisa diadaptasi sesuai kebutuhan Anda. 

Penulis: Jaya Adilman

Editor: Ervina Anggraini – Content Writer CTI Group 

whatsapp icon.png
Start a Conversation

Privacy & Policy

PT Central Data Technology (“CDT” or “us”) is strongly committed to ensuring that your privacy is protected as utmost importance to us. https://centraldatatech.com/ , we shall govern your use of this website, including all pages within this website (collectively referred to herein below as this “Website”), we want to contribute to providing a safe and secure environment for visitors.

The following are terms of privacy policy (“Privacy Policy”) between you (“you” or “your”) and CDT. By accessing the website, you acknowledge that you have read, understood and agree to be bound by this Privacy Policy

Use of The Subscription Service by CDT and Our Customers

When you request information from CDT and supply information that personally identifies you or allows us to contact you, you agree to disclose that information with us. CDT may disclose such information for marketing, promotional and activity only for the purpose of CDT and the Website.

Collecting Information

You are free to explore the Website without providing any personal information about yourself. When you visit the Website or register for the subscription service, we provide some navigational information for you to fill out your personal information to access some content we offered.

CDT may collect your personal data such as your name, email address, company name, phone number and other information about yourself or your business. We are collecting your data in some ways, online and offline. CDT collects your data online using features of social media, email marketing, website, and cookies technology. We may collect your data offline in events like conference, gathering, workshop, etc. However, we will not use or disclose those informations with third party or send unsolicited email to any of the addresses we collect, without your express permission. We ensure that your personal identities will only be used in accordance with this Privacy Policy.

How CDT Use the Collected Information

CDT use the information that is collected only in compliance with this privacy policy. Customers who subscribe to our subscription services are obligated through our agreements with them to comply with this Privacy Policy.

In addition to the uses of your information, we may use your personal information to:

  • Improve your browsing experience by personalizing the websites and to improve the subscription services.
  • Send information about CDT.
  • Promote our services to you and share promotional and informational content with you in accordance with your communication preferences.
  • Send information to you regarding changes to our customers’ terms of service, Privacy Policy (including the cookie policy), or other legal agreements

Cookies Technology

Cookies are small pieces of data that the site transfers to the user’s computer hard drive when the user visits the website. Cookies can record your preferences when visiting a particular site and give the advantage of identifying the interest of our visitor for statistical analysis of our site. This information can enable us to improve the content, modifying and making our site more user friendly.

Cookies were used for some reasons such as technical reasons for our website to operate. Cookies also enable us to track and target the interest of our users to enhance the experience of our website and subscription service. This data is used to deliver customized content and promotions within the Helios to customers who have an interest on particular subjects.

You have the right to decide whether to accept or refuse cookies. You can edit your cookies preferences on browser setup. If you choose to refuse the cookies, you may still use our website though your access to some functionality and areas of our website may be restricted.

This Website may also display advertisements from third parties containing links to other websites of interest. Once you have used these links to leave our site, please note that we do not have any control over the website. CDT cannot be responsible for the protection and privacy of any information that you provide while visiting such websites and this Privacy Policy does not govern such websites.

Control Your Personal Data

CDT give control to you to manage your personal data. You can request access, correction, updates or deletion of your personal information. You may unsubscribe from our marketing activity by clicking unsubscribe us from the bottom of our email or contacting us directly to remove you from our subscription list.

We will keep your personal information accurate, and we allow you to correct or change your personal identifiable information through marketing@centraldatatech.com