RSSAmplifier

Blog

Ike 'BlackIkeEagle' Devolder

Recent content on Ike 'BlackIkeEagle' Devolder

herecura.euRSS feed ↗57 posts

Latest posts

Getting started with Nginx VTS

Nginx has been my personal goto webserver for a long time already. It is very flexible and high performing overall and there are also pretty good tools to visualize some insights on visits on your different vhosts. But sometimes you want even more info or more detailed info and then you are coming into the territory of changing the nginx logging to get more info and then go and parse that info. At…

CfgMgmtCamp 2026

It was that time of the year again. Fosdem taking place during the weekend in
Brussels, and then CfgMgmtCamp extending it into the week. I only went to
CfgMgmtCamp, not Fosdem. CfgMgmtCamp took place from 2-4 february 2026.

PHP 8.5 for selfbuilders

Today we have the release of PHP 8.5 to the world. I’m not going to write about
all the interesting changes that happend for people developing PHP. But I’ll
just list some changes that might be interesing for people building from source
or managing a big fleet of servers with PHP.

Starlite MK V and Arch Linux with Plasma Desktop

Recently I received my Starlite MK V Linux tablet / laptop. While it took a bit more than 6 weeks to get it delivered, I’m still happy I made the order. 
 
 
 
 
 
 

 Note Updates published on 18/07/2024

Sudden hard disk failure

Well sometimes you have accumulated a setup which is not exactly foolproof but sufficient for the needs you have at the moment. I have such setup, where I have a lvm with multiple disks and xfs on top of that. This is the kind of setup where you say: “It will be fine”. But sometimes it can go fast.

PHP lifecycle management at Combell

How do we at Combell go from a release by the PHP maintainers to a deploy on
production machines? How involved is such an update and can we go fast if it is
really needed.

Getting started with Lando

How to get started developing PHP applications with Lando.

Testing Brotli with Nginx

Most webbrowsers support brotli for a while now, but outside the big players
it’s not so widely adopted, or so it seems. Once you start looking outside the
really big websites and sites not behind something like CloudFlare, there’s not
that many responses with brotli compressed.

MySQL, local vs remote

The series of Proxying MySQL left one thing unanswered. How large is the
difference between using local TCP or the socket. Yesterday I learned about
socat, shame on me that I did not knew about this tool, so lets drop another
remote test in there as well.

Proxying MySQL, conclusion

After running some tests with different proxies: 
 
 Proxying MySQL, setting things up 
 Proxying MySQL, benchmarking on production hardware 
 Proxying MySQL, Wordpress and Magneto performance 
 
 What can we decide and how do we will deploy and use MySQL.

Proxying MySQL, WordPress and Magneto performance

We have previously done several synthetic benchmarks. To finalize the tests
with different proxies we will test if we see impact on real life - yet demo -
applications. 
 Therefore we have choosen to test with sample e-commerce sites, one based on
WordPress, another based on Magento. Note we will not try to compare both
platforms but measure the impact of the place of our mysql…

Proxying MySQL, benchmarking on production hardware

When connecting to a remote MySQL server there can be a pretty big performance
impact, just due the fact we are using TCP to transfer our data. Where
connecting over a socket is usually blazingly fast, introducing TCP to do that
might give us a performance penalty on our application. We have seen some
information on local tests , but how do these behave in the real world. So
we…

Proxying MySQL, setting things up

If we want to host our MySQL dabase on other machines, is there a way to easily
passthrough our mysql traffic, and how much performance impact can we expect? 
 We’ll have to figure that out. But therefore we first have to start by
understanding what the proxies can do and how to set those up. 
 We will try some proxies with sysbench and see what that gives us.

LiteSpeed LiteMage vs Nginx + Varnish cache

There is a enterprise counterpart of OpenLiteSpeed, LiteSpeed . LiteSpeed
has the big advantage that you can just point it to your existing Apache httpd
configuration and it should all work fine. That is not wat we are going to
test. The statement is that LiteSpeed + LiteMage is a lot faster compared
to a Varnish cache setup for Magento 2. The added statement is also its a
lot…

OpenLiteSpeed vs Apache HTTP Server vs Nginx

OpenLiteSpeed looks like a nice and fancy webserver, but how does it compare in
terms of performance to the webservers we usually use. We are mostly interested
in how it compares to Apache httpd and Nginx. 
 
 After this blogpost was posted, the nice people of Litespeedtech reached out
to verify some things. They found there is a big difference between siege and
other…

Getting started with OpenLiteSpeed

Since we all get used to use one piece of software, Lets stir up the pot. We
are mostly using nginx and apache httpd for webserver. But there is a
replacement for apache httpd which supports .htaccess files, meaning we can
switch very easily to it, called OpenLitesSpeed. OpenLiteSpeed is the free
and Open Source “counterpart” of the LiteSpeed server by litespeedtech .…

Kconfig hardening tests

Ever since the repo “kconfig-hardening-check” appeared I was interested to
know what the potential impact was on performance when you apply all those
changes. You can find the repo on Alexander Popov’s github:
 kconfig-hardening-check

Toying around with firecracker

Firecracker “Secure and fast microVMs for serverless computing”. That
triggers a lot, secure, fast and serverless, so something with containers? So
Lets play around with firecracker and see what it can do.

MySQL (or percona) memory usage tests in real life

Following up on what was written about mysql / percona memory usage tests which
were basically benchmarks on a local machine . Do these results even hold
up with real production data and production usage? 
 Since we already had some issues where the memory consumption was very high, we
sort of jumped fast to use jemalloc since that was the preferred way of running
mysql. We…

MySQL (or percona) memory usage tests

Recently we did some upgrades at work which were also updating the base OS. In
general we did not expect too many issues since we were running tests and the
operation of all parts was looking good. 
 After the upgrades we noticed something was off with mysql. Some mysql machines
were killing mysqld because of OOM (out-of-memory). You’ll see the kills with
 journalctl or…

Postponing maintenance and then doing too much at once

The “Oh I forgot” moment 
 21 october, late in the afternoon, suddenly it pops in my mind - Damn some
letsencrypt certificates are about to expire and I ignored all notifications.
That was 17.00h and the certificates were expiring at 19.00h. First ofcourse
have diner, do something with the kids, get them to bed, … 
 So yeah 20.00h when I started looking at…

My browser is not *my* media player

A recent update in Chrome (Blink) based browsers added the functionality to
control media playing via the media buttons on your keyboard. As a side effect
you can also control media on a remote system if you use something like KDE
Connect. But what if you don’t want this behaviour and want your media controls
to just control your actual media player?

Is the underlying filesystem performance important if you use containers for everything?

Filesystems 
 I’m only going to talk about Linux filesystems here. 
 In general most people use ext4 for their Linux installations, because that is
the default in the biggest distributions. I personally have always been a fan
of xfs because I always was under the impression xfs has always been very fast
for the things I wanted to do. Another filesystem I very much like is…

How I manage Arch Linux updates

My goals 
 I want to be able to update my machine at any time without having to waste a
lot of time waiting for stuff to download. Over the years I’ve had my fair
share of small issues occuring when doing an update on a system running a
“desktop”. So for a few years now I do my updates when logged out of a
“desktop” in a tty.

Profiling PHP applications

Help my client is complaining some parts of the application are slow. Now what?

Arch Linux reinstall script

To suit my personal preferences and diverting package choices compared to stock
arch linux I have created a simple reinstall script to suit my needs. 
 goal 
 The goal is to have a somewhat uniform way of installing my machines and have
full disk encryption for root. Here the unlock key is stored on a portable usb
device for additional security. You can argue about the added…

Profiling PHP applications

Help my client is complaining some parts of the application are slow. Now what?

Defensive PHP Programming

We always start with the best intentions when we create a new project. But over
time we might end up with parts of our code that are hard to read or/and
understand.

Profiling PHP applications

Help my client is complaining some parts of the application are slow. Now what?

Profiling PHP applications

Help my client is complaining some parts of the application are slow. Now what?

Run Magento 2 on Docker swarm

When you are already developing your Magento 2 application using Docker, it
would nice to be able to deploy it using Docker.

Profiling PHP applications

Help my client is complaining some parts of the application are slow. Now what?

Profiling PHP applications

Help my client is complaining some parts of the application are slow. Now what?

Defensive PHP Programming

We always start with the best intentions when we create a new project. But over
time we might end up with parts of our code that are hard to read or/and
understand.

Meet Magento NL 2018

Surprise, I went to Meet Magento NL 2018. Actually this was a little surprise for me too. Originally I had submitted a few talks for this conference, but I did not know how it went. Since we already discussed at work to go to DPC 2018 I thought, maybe next year. Around 2 weeks before the event I got an email from Sander telling me something went wrong with the feedback on my proposals and they…

Challenges deploying PHP apps on multi node docker swarm

How do we get started with docker swarm and how do we get to the point we can
properly deploy and update our php applications. 
 Do we need central logging, metrics, alerting to have confidence in our swarm.

Automatically deploying magento2 without losing sleep

In this talk we’ll speak about some of the complexities of Magento2 to get it
deployed. And how you can automate all these complexities so you can rest
assured your site will stay online even when you just pushed something that
breaks the whole site.

Challenges deploying PHP apps on multi node docker swarm

How do we get started with docker swarm and how do we get to the point we can
properly deploy and update our php applications. Can we just add and remove
nodes, what about our data?

From Bash to Python for scripting

I am a huge fan of shell scripting. But recently it did give me very unexpected
behaviour which lead me to start using python for “shell” scripts. 
 What happened? I was trying to create helpers that called other helpers and
passed the arguments with “$@”. This worked fine for a very long time until you
pass along strings like ‘-e “CREATE…

Why I like containers for everything

I want to explain why running everything in containers is an improvement over
install all your required software on a server. How containers can help us
build better quality software faster.

Handling signals in PHP

Signal handling in PHP? Are we searching for alien signals coming from space?&#xA;No its all about handling system signals while executing cli scripts / apps.&#xA;What happens to my script when I press <ctrl+c>. Can I run a cleanup even if&#xA;the user actually wants to abort. What are signals anyway? And are signals only&#xA;there to kill/stop my script?

Road to a great docker development setup

Let me tell you a story of how we got from a Docker development environment&#xA;that works on my machine to a docker environment we can easily apply on our&#xA;Linux or macOS machines. We also got the the point we could very easily adapt&#xA;the development environment images to allow us to run in production.

Quickly setup a Magento2 devbox with vagrant

Hands-on explanation how we setup our Magento2 devboxes and what issues we&#xA;encouter while getting started with Magento2 in vagrant. &#xA; The information was shown based on our vagrant box for&#xA;Magento2

Self signed multi-domain certificate

When you are developing a complex website with multiple subdomains and full&#xA;https, it can be hard to mimic it in your development environment. For this&#xA;purpose we will create a CA we will trust for development and that will allow&#xA;us to generate multi-domain ssl keys.

Start debugging with Xdebug

How do you get started with Xdebug. What is the basic configuration needed. And&#xA;some basic config for vim and phpstorm to get you on your way.

Vim for PHP developers

In this talk I will attempt to show you how to get started with vim and how you&#xA;can get started doing serious PHP development using Vim. I&rsquo;ll try to address&#xA;the reason why vim is still relevant even if we are living a golden age of PHP&#xA;IDE&rsquo;s.

Vim for PHP developers

In this talk I will attempt to show you how to get started with vim and how you&#xA;can get started doing serious PHP development using Vim. I&rsquo;ll try to address&#xA;the reason why vim is still relevant even if we are living a golden age of PHP&#xA;IDE&rsquo;s.

Handling signals in PHP

Signal handling in PHP? Are we searching for alien signals coming from space?&#xA;No its all about handling system signals while executing cli scripts / apps.&#xA;What happens to my script when I press <ctrl+c>. Can I run a cleanup even if&#xA;the user actually wants to abort. What are signals anyway? And are signals only&#xA;there to kill/stop my script?

Isolating multiple PHP versions / apps with docker

Chroot? what is that? Is docker a chroot? &#xA; With docker / containers we can easily isolate our PHP applications from the&#xA;host system. It also helps us running multiple PHP versions without too much&#xA;hassle. As an extra bonus our specific application containers can have their&#xA;own extensions without interfering with each other. &#xA; With nginx as webserver we will show some of the…

Make Opera obey KDE activities

The Problem &#xA; When I installed opera-devel on my machine it did not play well with the activities I use in KDE.&#xA;Opera was available in all my activities at all the time.