Creating and monitoring a Glassfish Cluster

In this post I will detail how to create a basic Glassfish cluster and how to monitor it using JMX. First, download the latest release of Glassfish and extract the archive to a folder of your choice. Then start the asadmin utility from the glassfish4\bin directory. Unless otherwise noted, all of the commands that follow…Read more

Implementing a Java Agent (Part 3)

The previous posts in this series described how to create a Java agent and how to dynamically attach it to a running JVM. Once the agent is running, you may want to interact with it, for example to collect data from it or to execute specific methods on demand. Today’s post will show how to…Read more

Implementing a Java Agent (Part 2)

In the first part of this series, I demonstrated how to create a Java agent and attach it to an application during startup. It is also possible to dynamically attach your agent to a running program, as long as you have permissions to access the JVM. The updated source code is available for download. The…Read more

Implementing a Java Agent (Part 1)

This is the first in a series of posts describing how to implement a Java agent. Java agents execute in the same Java Virtual Machine (JVM) as regular Java application, and provide insight into them as well as the ability to modify their behavior at run-time. All of the source code is available for download…Read more

Replacing the Ubuntu network driver

(Update 10/15/2016: There is now an updated version of the driver package available on Github. Some of the changes described in the following post are no longer necessary) I’ve been running a Shuttle mini PC for the past few years as a low-power Linux server / NAS. All was peachy, until I started noticing that…Read more

A* Pathfinding with Moai SDK

In preparation of the next gaming jam, I started evaluating Moai SDK, a LUA game framework which gained more widespread recognition last year, when Double Fine selected it to use be used for their Kickstarter adventure game. To get a good idea of a few different aspects of the SDK, I decided to try to…Read more

Two-way remote backup using rsync

After a recent hard drive failure, I decided to revisit the backup strategy I employ in my local network. While you can find a lot of different OSS solutions for this these days, I prefer the simplicity of rsync. In the following, I will describe how to use it to set up file synchronization between…Read more

From LDAP to Samba

While my days of system administration are mostly a thing of the past, from time to time I miss getting my hands “dirty” with some real’ Linux work. As was the case when I decided to upgrade my Ubuntu 12.04 LTS box to Samba domain controller. Mainly, I was interested in having a single login…Read more

Fixing gluUnProject in Android Froyo

Lately, I’ve been working on a new Android app which will make use of 3D graphics. The Android SDK provides its own implementation of OpenGL ES which differs between Android releases. Since my current phone runs Android 2.2, I’m stuck with that release for the time being, and it looks like the version of the…Read more