code_scripter

🚀

Performance Profiling in Rust

One of my objectives this year is to learn Rust and Go, to make the learning process less boring I decided to solve the challenges of the Advent Of Code 2018 website, they are like 25 challenges and I try to write an algorithm and implement it in both languages. Just for curiosity I wanted to see how well one language is against the other in the performance area, so I decide to run a quick test and the results where very surprising....

Self Deploying Node.JS Applications

Few days ago I was watching in Youtube a talk given by Kelsey Hightower titled “Self Deploying Kubernetes Applications”. In this talk which is a bit old now (over a year) he was demoing a Golang application capable of running locally but also capable of magically deploy itself into a Kubernetes cluster. ...

Creating Your Own Istio (Part 3) - Dashboard

In the previous post we where able to collect information about pods running in our cluster thanks to the deployment of our Ambassador container, but having this information is of little value if we don’t have a way to make sense of it. In this post we are going to develop a new functionality in our Ambassador so we can publish this information into a service. ...

Creating Your Own Istio (Part 2.5)

In the last post we create our first container decorator, a container that when included into an arbitrary pod enhance the main container. In our particular case we created a container that override the HTTP 404 responses as an introduction, in this post we are going to build upon and develop some functionalities to monitor the performance of a running service. ...

Creating Your Own Istio (Part 2)

Let’s talk about container oriented programming… ...

Creating Your Own Istio (Part 1)

Let say we have a micro-service exposing some business API and we want to gather some data about its usage, such as how many calls, payload size, errors, response time, etc. Adding this feature would usually involve writing some code, testing and the re-deployment of a new version. But when you have multiple micro-services, this solution can be difficult to reuse. ...

Finding Performance Bottlenecks in JavaScript.

One of my hobbies is to write (and sometimes re-write) graphics engines. I do this because I love the challenge of writing not only fast code but scalable code and also because I like visual stuff. This time I decide to write one in JavaScript using WebGL and as soon as I have a workable set of API’s I decide to write an simple vortex animation to see how well my new shinny new engine will perform. ...

4 Ways to Build Applications in OpenShift

We are going to discuss the different strategies for building our software in OpenShift. These strategies are useful if you need to solve any of the following problems: ...

Chaining Builds In Openshift

New application Creating a Node.js application in Openshift is simple: oc login -u user oc new-project hello # Assuming you are logged and you have a project you can start here. oc new-app --name node-app nodejs~https://github.com/cesarvr/hello-world-nodejs #new app using nodejs:latest (Node.js 8) This command will create the backbone (BuildConfig, DeploymentConfig and Service) to orchestrate the different stages from source code to a running application. The size problem But this nice abstraction come with a cost, to explain what I mean, let’s review size of our final image using du:...

Simple CI/CD

Get your Java source code, tested, packaged, containerized and deployed in four steps. We are going to defined 4 decoupled steps that you can improve with more complex use cases in the future. ...