Catatan Belajar Ruby on Rails dari aliran Java dan Php

Ruby on Rails merupakan framework web MVC menggunakan bahasa dynamic typed (Ruby) yang termasuk pertama (2005). Diikuti dengan django (2005), laravel (2011). Walaupun di dunia proyek jarang dipakai, di dunia produk/startup banyak dipakai karena lebih cepat waktu yang dibutuhkan untuk membuat nya.

https://dhh.dk/arc/000258.html

https://blog.karatos.in/a?ID=00050-92960018-bbf7-4d66-8afd-d7ff6571e83a

Continue reading “Catatan Belajar Ruby on Rails dari aliran Java dan Php”

Deploy Spring Boot di Tomcat dan Berbagai Application Server Lain

Sebenernya spring boot sudah di embedd applicatoin server tomcat (hanya berisi web container, tidak bisa untuk java EE). Sehingga tidak perlu menggunakan application server lagi. Namun kadang orang karena sudah bayar application server lain, misal weblogic. dan ada beberapa aplikasi lain yang jalan di weblogic. Ingin mendeploy aplikasi spring boot di weblogic.

Secara tertulis harusnya tidak ada yang perlu dilakukan. Karena tujuan standarisasi J2EE adalah WAR/EAR bisa portable antar webserver. Namun kadang kenyataannya tidak, karena ada beberapa yang butuh fungsi spesifik app server, ataupun configurasi spesifik.

Continue reading “Deploy Spring Boot di Tomcat dan Berbagai Application Server Lain”

Catatan Aspose Word

Aspose.word merupakan library untuk mengedit file microsoft office .docx. Sebenernya microsoft tidak mengeluarkan dokumentasi resmi API microsoft word. Dan file microsoft word dibuat sesuah mungkin untuk di edit (obfuscate). Makanya ada library open source bernama Apache POI (Poor Obfuscation Implementation) untuk mengedit file .docx (seperti Aspose.Word)

// TODO

Continue reading “Catatan Aspose Word”

Sejarah Web Application

Sumber: https://eursap.eu/2022/03/23/eursap-blog-sap-a-history-of-the-company-and-the-software/

Para Gen Z seperti Saya mungkin bingung J2EE/Java EE/EJB itu apa. Sebelum internet dan WWW booming pada tahun 90an, sudah ada banyak bahasa pemrograman dan aplikasi yang kompleks. Seperti SAP, Aplikasi yang mengelola semua sistem perusahaan misal kepegawaian, keuangan, dan gudang. Aplikasi ini menggunakan Relasional Database SQL, dan aplikasi native sistem operasi (misal unix) untuk olah data dan antar mukanya.

Sedangkan internet sendiri sudah ada sebelum World Wide Web (WWW). Berikut timeline nya:

TahunLayerNamaDeskripsi
1970InternetNCP (Network Control Protocol)
1970ApplicationTelnet
1970ApplicatoinFTP
1980InternetTCP/IP
1990ApplicationHTTPWorld wide web
Continue reading “Sejarah Web Application”

Postman Otomatis Kirim Header Autentikasi dengan Hanya Sekali Login

Sumber twitter pos indonesia https://twitter.com/posindonesia/status/963282532966989825?lang=da

Semua yang bisa di otomasi, akan di otomasi. Hampir semua tools/program saat ini menyediakan fitur otomasi ataupun custom script. Dan fitur ini menjadi daya tarik sendiri. Bahkan gitlab CI yang tidak menyediakan GUI, lebih disukai karena mudah di otomasi dan di program.

Begitu juga postman, sangat cape jika setiap mencoba endpoint lain, harus mencopy manual token authorization. Apalagi kalau sering ganti user login di endpoint nya. Postman menyediakan beberapa fitur yang dapet membantu seperti:

Continue reading “Postman Otomatis Kirim Header Autentikasi dengan Hanya Sekali Login”

Session Locking? Slow Query Log Isinya Query Session?

Masalah

Mekasnisme session default di php adalah locking/blocking. Misal ada 5 request dari orang yang sama (id session yang sama) bersaman yang menggunakan session, kelima request tersebut tidak bisa berjalan bersamaan, melainkan hanya satu request yang dapat berjalan, yang lainnya menunggu sampai request yang berjalan tersebut selesai (ngantri).

Hal ini tujuannya untuk mencegah race condition. Misalkan ada session variable bernama jk (jumlah keranjang) yang menghitung jumlah barang di keranajng. User menambah barang a dan b, awalnya jumlah keranjang ada 10, setelah ditambah 2 barang tersebut menajdi 12.




session
jk = 10



















locking






concurrent / no locking
















request 1
jk =jk + 1
jk = 10 + 1 = 11


request 1
jk =jk + 1
jk = 10 + 1 = 11

request 2
jk = jk + 1
jk = 10 + 1 = 12
request 2
jk = jk + 1
jk = 11 + 1 = 12













































Final result

jk = 12





jk = 11



Ink Drawings
Ink Drawings
Ink Drawings
Ink Drawings
Ink Drawings
Ink Drawings
Ink Drawings
Ink Drawings
Ink Drawings
Ink Drawings
Ink Drawings
Ink Drawings
Continue reading “Session Locking? Slow Query Log Isinya Query Session?”