TQ
dev.com

Blog about software development

Subscribe

Can you afford to cloud compute?

17 Nov 2024 - by 'Maurits van der Schee'

Data centers promise better and cheaper physical security, rented hardware, electricity and connectivity than you can have on-premise, because of the scale on which these companies operate. I think that is often true and that that's is why most companies moved their machines...

Continue reading...

Scaling to 1 million websockets in PHP

14 Nov 2024 - by 'Maurits van der Schee'

A client asked me: How does one scale software to handle 1 million websocket connections? At 1000k connections when every client sends only one message per 30 seconds you have to deal with 33333 websocket messages per second. Dealing with that many requests...

Continue reading...

Running Debian 12 on Windows with WSL 2

01 Oct 2024 - by 'Maurits van der Schee'

So, maybe your employer want you to use Windows. Obviously you still want to use Linux as you want to run whatever operating system your production servers run. If running Virtualbox or VMWare causes too much switching between environments then WSL...

Continue reading...

Distributed metrics in PHP using Go and Gob

25 Sep 2024 - by 'Maurits van der Schee'

In the previous post I showed how to do high frequency metrics in PHP with TCP sockets. In this post I'll show how to collect and combine metrics from multiple PHP application servers. Instead of sending the log lines from each server to a single node, the monotonically...

Continue reading...

High frequency metrics in PHP with TCP sockets

23 Sep 2024 - by 'Maurits van der Schee'

When you are running a high traffic website you may run multiple PHP servers to handle the load. When you want to track a performance metric (such as API or database calls) you may need to do some high frequent logging for performance analysis. In this blog post we present a standardized...

Continue reading...

GMKtec NucBox G5: a tiny Linux PC

01 Sep 2024 - by 'Maurits van der Schee'

I don't like laptops, neither to own nor to work on. They are very costly, are hard to repair or upgrade and I get neck and back pain from working on them. I love to work at places where the desk is (properly) equipped with (height-adjustable) monitor, keyboard and mouse. Most...

Continue reading...

ASRock Deskmini X600 SFF Linux PC

15 Aug 2024 - by 'Maurits van der Schee'

I am upgrading my 2021 Deskmini X300 to a X600 (finally...). The new machine has an AMD Ryzen 7 8700G instead of a 5700G CPU. It has 64GB DDR5 at 5600MHz instead of DDR4 at 3200MHz. I have the AM5 (instead of AM4) model of the Noctua low profile CPU cooler...

Continue reading...

Minesweeper written in Go using RayLib

15 Jul 2024 - by 'Maurits van der Schee'

In April I wrote Fyne Mines (Minesweeper in Go using Fyne) and I'm very happy with the release on the Fyne Games page. When further investigating cross platform game development (in Go) I ran into the RayLib engine (and it's Go bindings). During the holidays I decided to recreate...

Continue reading...

Running Debian on a MacBook M3

15 Jun 2024 - by 'Maurits van der Schee'

In the hypothetical case that your employer is so kind to provide you with a MacBook Pro M3 (please don't buy one) you have only one question: How do I run Linux on it? First you want to install Asahi Linux, but then you find out that the M3 is not supported. Now what?...

Continue reading...

A 2D puzzle game in Go using Fyne

22 Apr 2024 - by 'Maurits van der Schee'

Last month I wrote Minesweeper written in Go using Fyne. It was a port of the Ebiten game engine implementation to desktop using the Fyne GUI library. During the implementation I ran into 3 problems that I eventually solved. In this post I'll explain...

Continue reading...