Skip to main content

Posts

Memperkaya Khasanah Ilmu Rekayasa dalam Bahasa Indonesia

Selamat datang kembali rekan-rekan, sudah sekian purnama yang lalu sejak saya menulis terakhir kali dan beberapa tulisan yang masih berupa draf urung saya terbitkan. Terakhir kali menulis, saya menggunakan Bahasa Inggris, guna mendapatkan pengunjung secara internasional, serta membiasakan saya untuk menulis dalam Bahasa Inggris. Namun seiring berjalannya waktu, terlintas dipikiran untuk memperkaya khasanah ilmu rekayasa ( engineering ) terutama dalam ilmu rekayasa perangkat lunak ( software ) dalam Bahasa Indonesia, yang merupakan bahasa resmi di mana saya dilahirkan. Setidaknya ini akan melatih kecakapan saya dalam menuliskan atau mendokumentasikan sesuatu dalam Bahasa Persatuan kita. Dengan demikian, setelah tulisan ini diterbitkan, semua tulisan saya berikutnya akan saya tuliskan dalam Bahasa Indonesia. Meski terkesan aneh karena biasanya tulisan tentang ilmu rekayasa perangkat lunak akan dituliskan dalam Bahasa Inggris, tetapi saya sudah bertekad, seperti yang saya sebutkan sebelum...
Recent posts

Setup Nginx as Proxy Reverse

Continuing the journey of Web Server Application, today we would setup Nginx as Proxy Reverse. If you want to start with how to install Nginx and configure it with SSL/TLS, read here . This post scoped only in  CentOS  7 and I'm using  Alibaba Cloud  as my cloud provider. Using other Operating System (OS) or cloud provider may need some adjustment to be matched, but I'll describe in general. If you have a trouble during follow this tutorial, don't hesitate to ask in the comment. Let's dive in! Step 1 Run Go Application To make this tutorial simple, we gonna use go application to be proxy reverse by our Nginx. Since go application are binary, so they could directly running on our server without need to install any dependency. I have prepared the pre-compiled binary of go application that listen http request on port 8080 for linux OS. So let's download it (because we're not in administrative task, I recommend you to use normal user instead of root user). $...

Install Nginx and Setup SSL/TLS with Certbot

Hello there, sorry for delay to post almost 2 months. Since covid-19 outbreak have significance impact to my working rhythm. Today I'll continue the journey of initial setup for CentOS 7. After securing our connection into the server (see here ), right now the most used application should we install is the Web Server. There are two most known, one is Nginx (read: Engine X) and Apache HTTP Server (also known as Apache WebServer or httpd ). Personally I recommend you to use Nginx instead of httpd , because the basic architecture of Nginx is using event-driven approach, instead of creating new thread for each request that doing in httpd . So Nginx could handle more concurrent request within small amount of threads. Also today, the event-driven approach are widely adopted, for example the famous ReactiveX library in the programming side is the leading asynchronous API library for programming languages. So more application are now evolved to use event-driven style instead of blockin...

Installation OpenVPN Server on Centos 7

OpenVPN is the most known open source SSL VPN (Virtual Private Network) in the world. OpenVPN implemented OSI Layer 2 or 3 by securing network extension using SSL/TLS protocol. They allow you to connect securely to an insecure public network such as wifi in the cafe or public area. For Corporate and Enterprise they commonly used to allowing/blocking connection for back-office application or even secure connection to the server itself. When you has been read my post before , you can escalate this method to more secure than before, since before we have the SSH Port still exposing to public (although only public key authentication are allowed). This post scoped only in  CentOS  7 and I'm using  Alibaba Cloud  as my cloud provider. Using other Operating System (OS) or cloud provider may need some adjustment to be matched, but I'll describe in general. If you have a trouble during follow this tutorial, don't hesitate to ask in the comment. Go go go! Step 1 Fin...

Initial Server Setup on CentOS

As I came from Software Engineering background since my first employment, it's my big step to jump in DevOps area. Because at my recent employment, I trusted by the CIO to manage this area. I think all of the knowledge and practice them out, need to be well documented and I remember that I have a blog here. So this is my first time to documented all of the knowledge that I've practice before, in all of the environment ( development , staging , sandbox or even production ) in my recent employment. CentOS Logo I'm starting with the fundamental one, initial server setup with CentOS . This post scoped only in  CentOS  7 and I'm using  Alibaba Cloud  as my cloud provider. Using other Operating System (OS) or cloud provider may need some adjustment to be matched, but I'll describe in general. If you have a trouble during follow this tutorial, don't hesitate to ask in the comment. Go! Step 1 Add Non-Root User Once you have created instance, you need to...

How do I deliver ALAMI's Prod

Back to two months ago when ALAMI still under registration process by Financial Service Authorities in Indonesia (OJK), all of team has been fight to fit our platform application with OJK regulations. After the final stage, we're still doesn't have a devops for creating an infrastructure of our application to be in production (live). So the CTO ask me to learn quickly about devops and creating minimal system to be used for our application in production. And then the journey has began. Actually we have our old server but the Management doesn't happy with the provider, so we are searching new provider. How lucky we are, since our office are located at coworking space, there're many startups and one of them have a cloud service named ZettaGrid . After some meetings, the Management team interested to use their services. I got the free-trial Virtual Data Center (VDC) to exploring all of features that they have. But time is running low before we're going live, so I nee...

[FIXED] Java MacOS Hostname

During the development of Caltic , there is a strange from internal logger of Vert.x (our toolkit to build Caltic Systems). There're some warning log indicate something happen abnormally. See below: [INFO] Nov 08, 2018 5:24:50 PM io.vertx.core.impl.launcher.commands.Watcher [INFO] INFO: Watched paths: [/Users/myrepublic/devel/caltic/caltic-train/target/classes] [INFO] Nov 08, 2018 5:24:50 PM io.vertx.core.impl.launcher.commands.Watcher [INFO] INFO: Starting the vert.x application in redeploy mode [INFO] Starting vert.x application... [INFO] 18b3e3d3-043d-4f63-b8aa-52d018554b6a-redeploy [INFO] Nov 08, 2018 5:24:53 PM io.vertx.core.impl.BlockedThreadChecker [INFO] WARNING: Thread Thread[vert.x-eventloop-thread-0,5,main] has been blocked for 2858 ms, time limit is 2000 [INFO] Nov 08, 2018 5:24:54 PM io.vertx.core.impl.BlockedThreadChecker [INFO] WARNING: Thread Thread[vert.x-eventloop-thread-0,5,main] has been blocked for 3859 ms, time limit is 2000 [INFO] Nov 08, 2018 5:24:55 PM i...