Friday, February 24, 2023

Install Kong API Gateway dengan Docker

Dalam arsitektur microservice, fakta bahwa setiap service akan meng-ekspose endpoint lebih detail. Hal ini, akan mempengaruhi cara client dan service-service lain yang mengakses service-service pada microservice. Semakin besar service-service pada microservice, akan dapat membebani service-service tersebut dengan jutaan request. Hal ini juga akan berpengaruh pada tantangan dalam penanganan security dan authorization, transformasi data, dan dispatching untuk request yang dinamik.

API Gateway

Untuk menjawab hal-hal tersebut, maka penggunaan API Gateway menjadi solusi. API Gateway adalah aplikasi/server yang bertindak sebagai single entry point pada sistem yang kita bangun. Dalam hal ini adalah aplikasi yang kita bangun dengan arsitektur microservices. Selain itu API Gateway juga bertindak sebagai middleware, sehingga sistem internal yang kita bangun dibelakangnya bisa kita enkapsulasi. API Gateway juga bisa kita beri tanggung jawab lain seperti logging, authentication, rate limiting, caching, transforming, dan load balancing.


Thursday, February 16, 2023

Membuat server Gitlab CE di Ubuntu 22.04

Apa itu Gitlab?

Catatan kali ini, untuk mengisi kegabutan saya. Sebelum itu mari kita berkenalan dengan apa itu Gitlab. Gitlab adalah layanan yang menyediakan akses remote ke Git repositories. Selain meng-hosting kode Anda, layanan ini menyediakan fitur tambahan yang dirancang untuk membantu mengelola siklus pengembangan software.

Kita perlu memahami beberapa terminologi. Kita sering menemukan istilah-istilah seperti Git, Gitlab, GitHub, dan Bitbucket. Mari kita lihat definisi dari semua istilah tersebut.

  • Git adalah sistem versi kode sumber yang memungkinkan Anda melacak perubahan secara lokal dan mendorong atau menarik perubahan dari remote resources.
  • GitLab, GitHub, dan Bitbucket : layanan yang menyediakan remote access  ke Git repositories. Selain meng-hosting kode Anda, layanan ini menyediakan fitur tambahan yang dirancang untuk membantu mengelola siklus pengembangan software. Fitur-fitur tambahan ini termasuk mengelola pembagian kode antara orang-orang yang berbeda, bug tracking, wiki space, dan alat-alat lain untuk ‘social coding’
  • GitHub adalah layanan gratis yang tersedia untuk umum yang membutuhkan semua kode (kecuali Anda memiliki akun berbayar) dibuat terbuka. Siapa pun dapat melihat kode yang Anda push ke GitHub dan menawarkan saran untuk peningkatan. GitHub saat ini meng-host kode sumber untuk puluhan ribu proyek open source.

GitLab adalah layanan mirip github yang dapat digunakan organisasi untuk menyediakan manajemen internal git repositories. Ini adalah sistem manajemen Git-repository yang di-host-sendiri yang menjaga code private pengguna dan dapat dengan mudah menyebarkan perubahan kode.

Friday, February 3, 2023

Log basis data MariaDB di Ubuntu 22.04

Log adalah Catatan yang merekam segala aktifitas suatu aplikasi dijalankan. terkadang Log juga digunakan untuk menganalisa status suatu aplikasi. File-file log adalah file yang berada di sebuah sistem yang merupakan file-file penting yang senantiasa mencatat semua kejadian-kejadian(kegiatan) yang berlangsung pada sistem.

File ini sangat penting pada sebuah sistem untuk memudahkan kita khususnya admin untuk memeriksa dan menelurusi berbagai masalah yang terjadi, dengan file log si admin dengan mudah menemukan sebuah bug, sumber-sumber penyerangan, dan kerusakan-kerusakan yang terjadi pada sistem yang ditimbulkan , walaupun kita tidak mengetahui cara menanggulagi kerusakan tersebut.

Dikarenakan sedang merestore data ke basis data, terutama MariaDB, kita perlu log ini untuk mengetahui proses yang terjadi. Selain itu juga bisa dimanfaatkan untuk melakukan pengecekan terhadap query yang lambat di database.

Untuk melakukannya kita bisa buka terminal/console di linux. Kita masukan perintah 
sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf