Jumat, 07 Agustus 2020

Microservice

Hai guys,, kembali lagi nih... kita mau bahas sesuatu,, yaitu tentang Microservice!! 

sebelum membahas mengenai microservice, ada baiknya kita bahas monolitik arsitektur terlebih dahulu. sebuah arsiterktur lama yang masih dipakai hingga saat ini.


Apa yang dimaksud Monolitik Aristektur?

monolitik arsitektur adalah sebuah arsitektur dimana dalam pembuatan aplikasi. semua komponen menjadi satu kesatuan. Dalam hal ini satu kesatuan berarti menyatukan antara front-end dan backend dalam satu aplikasi yang sama.


Kelebihan monolitik arsitektur

Mudah dibangun

Mudah di uji

Mudah di deploy ke server atau cloud

kekurangan monolotik arsitektur

Ketika aplikasi menjadi besar (banyak yang akses) peforma akan menurun

Ketika akan merubah teknologi pada aplikasi maka akan merubah secara keselutuhan aplikasi.

Jika terjadi error pada salah satu fungsi maka akan mempengaruhi keselutuhan aplikasi.


Apa itu microserver?

Microservices berarti membagi aplikasi menjadi layanan yang lebih kecil dan saling terhubung tidak seperti aplikasi monolitik. Setiap microservice merupakan aplikasi kecil yang memiliki arsitektur heksagonal sendiri yang terdiri dari logika beserta berbagai adapternya (bahasa pemrograman, dll).

Jadi intinya microservice yaitu membagi service ke bagian yang lebih kecil dimana service — service tersebut saling berhungan satu sama lain. Selain itu, dalam setiap services yang dibuat bisa menggunakan teknologi yang berbebeda.

Sedangkan untuk implementasi ke web, android, iOS dll tidak bisa secara langsung. Dimana kita harus membuat terlebih dahulu yang namanya API Gateway. API Gateway memiliki tugas seperti load balancing, caching, access controll , API metering, dan monitoring.


Kelebihan microserver

Aplikasi scalabale, secure dan reliable

Setiap service berdiri sendiri

Maintence-nya lebih mudah

Tidak ada hambatan dalam menggunakan teknologi baru

Setiap tim developer dapat mengembangkan setiap services-nya tanpa ada mengganngu services yang lain

Kekurangan microserver

Ketika satu entity pada database berubah maka setiap entity yang sama di setiap database service harus diubah

Untuk beberapa kasus , sulit untuk menerapkan perubahan services jadi perlu perancangan yang matang.

Deployment yang kompleks, perlu konfigurasi untuk menjalankan setiap services karena memiliki runtime yang berbebda, tidak seperti aplikasi monolitik tinggal upload , deploy dan beres.

Perlu automation yang tinggi dalam melakukan deployment.

Kamis, 17 Oktober 2019

TUTORIAL CRUD IMAGE

Tutorial CodeIgniter)  -  Cara Menggunakan Image Crud

Halo guys!! Jadi disini saya mau menjelaskan tutorial menggunakan image Crud


Langkah pertama download terlebih dahulu fungsi Image CRUD yang merupakan bagian dari Grocery CRUD




 Selanjutnya buka file example_database.sql dan copy perintah SQL nya




Buka PHP MyAdmin dan paste seluruh perintah SQL pada database aktif yang terkait dengan 

CodeIgniter

Eksekusi  kalimat SQL dan pastikan anda memiliki 4 table example



Perhatikan masing-masing tabel Example hanya memiliki 2-3 field saja yang berkaitan dengan gambar


Jalankan CodeIgniter melalui link http://localhost/codeigniter/index.php/images_examples



Ini hasil contoh 1




Ini hasil contoh 2



Ini hasil contoh 3



Kenapa linknya dipanggil dengan path:

http://localhost/codeigniter/index.php/images_examples

Karena file Controllernya bernama Images_Examples.php dan memiliki class bernama  Images_Examples

Kenapa linknya untuk setiap contoh dipanggil dengan path:

http://localhost/codeigniter/index.php/images_examples /example1

Karena di dalam file Controller Images_Examples.php terdapat fungsi yang bernama example1()




Kamis, 03 Oktober 2019

TUTORIAL CRUD POST DI BLOGSPOT

Disini saya akan mencoba untuk menjelaskan tutorial CRUD dari Codeigniter dan Grocerycrud!

Selamat Membaca!!!

  • Codeigniter
1. Kalau sudah berhasil, copy seluruh file dan folder GroceryCrud ke CodeIgniter


2. Timpa seluruh file tanpa kecuali

             
















3. Selanjutnya buat sebuah database di PHPMyAdmin (misalnya db_multimedia)


4. Lalu, buatlah tabel files di database , beri nama "db_akademik" dan buat perintah SQL dibawah

CREATE TABLE IF NOT EXISTS `files` (
  `id` char(10) NOT NULL,
  `fileName` varchar(50) NOT NULL,
  `fileType` varchar(50) NOT NULL,
  `fileExt` varchar(50) NOT NULL,
  `fileGroup` varchar(50) NOT NULL,
  `fileContent` varchar(50) NOT NULL,
  `fileDesc` varchar(50) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1;
  
INSERT INTO `files` (`id`, `fileName`, `fileType`, `fileExt`, `fileGroup`, `fileContent`, `fileDesc`) VALUES
(1000, 'FileName0', 'fileType0', 'fileExt0', 'fileGroup0', 'fileContent0', 'fileDesc0'),
(1001, 'FileName1', 'fileType1', 'fileExt1', 'fileGroup1', 'fileContent1', 'fileDesc1'),
(1002, 'FileName2', 'fileType2', 'fileExt2', 'fileGroup2', 'fileContent2', 'fileDesc2'),
(1003, 'FileName3', 'fileType3', 'fileExt3', 'fileGroup3', 'fileContent3', 'fileDesc3'),
(1004, 'FileName4', 'fileType4', 'fileExt4', 'fileGroup4', 'fileContent4', 'fileDesc4'),
(1005, 'FileName5', 'fileType5', 'fileExt5', 'fileGroup5', 'fileContent5', 'fileDesc5'),
(1006, 'FileName6', 'fileType6', 'fileExt6', 'fileGroup6', 'fileContent6', 'fileDesc6'),
(1007, 'FileName7', 'fileType7', 'fileExt7', 'fileGroup7', 'fileContent7', 'fileDesc7'),
(1008, 'FileName8', 'fileType8', 'fileExt8', 'fileGroup8', 'fileContent8', 'fileDesc8'),
(1009, 'FileName9', 'fileType9', 'fileExt9', 'fileGroup9', 'fileContent9', 'fileDesc9');


 

5. Setelah itu , hasilnya akan seperti ini



6. Selanjutnya ubah konfigurasi database pada folder



7. Selanjutnya, buat controller baru lalu beri nama core.php

<?php  if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class Core extends CI_Controller {

    function __construct()
    {
        parent::__construct();
        $this->load->database();
        $this->load->helper('url');
        $this->load->library('grocery_CRUD'); //load library grocerycrud
    }

    public function files()
    {
        $crud = new grocery_CRUD();
        $crud->set_table('files'); //table name
        $output = $crud->render();

        $this->_example_output($output);        
    }

    function _example_output($output = null)
    {
        $this->load->view('v_core.php',$output);    
    }
    
}



8. Setelah itu, buatlah file baru , beri nama "v_core.php" 


<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8" />
<?php 
foreach($css_files as $file): ?>
    <link type="text/css" rel="stylesheet" href="<?php echo $file; ?>" />
<?php endforeach; ?>

<?php foreach($js_files as $file): ?>
    <script src="<?php echo $file; ?>"></script>
<?php endforeach; ?>

</head>
<body>
    <div>
        <?php echo $output; ?>
    </div>
</body>
</html> 



9. Lalu, masukkan URL : http://localhost/codeigniter/index.php/core/files/
Jika tidak terdapat error atau kesalahan, maka tampilannya akan seperti ini :




Sekian tutorialnya
Semoga bermanfaat ya teman-teman :)






Jumat, 27 September 2019