Here’s a quick-ish way to create a Docker container which downloads and compiles the SimpleDropWizardEcho service I wrote for testing. But why would you do this? As discussed in my previous post, this creates a clean environment with no state …

Docker build machine for Maven/Java Read more »

Tagged with: , , , ,

I spent last Wednesday (28th May 2014) at the DevOps Exchange London meetup, listening to 3 talks about Docker, a lightweight deployment container – kind of a halfway between a full Virtual Machine (VirtualBox, EC2, etc) and a virtualised JVM …

Docker at the DevOps London Meetup Read more »

Tagged with: , , ,

Further from my previous post, you can add JSPs and HTML files to the project, simply by placing them under the src/main/webapp directory.

Tagged with: , , , ,

I’m looking into the various cloud-hosting providers, so I’m creating a quick and simple Hello World project to see how well they work. This post is for Google’s AppEngine, which provides a free usage tier which is enough to see …

Hello World using Google AppEngine Read more »

Tagged with: , , ,

Further to my previous post, turns out we want to install files under /opt/<package>, and the associated config under /etc/<package>. And ideally we don’t want to make the sbt-assembly stage force it’s output to a non-standard directory.

Tagged with: , , ,

Okay, so I need to build proper RPMs rather than using FPM to create them. Our build toolchain uses SBT to build everything, and utilises sbt-assembly to generate a single executable JAR. Which we then wrap up in an RPM …

Using SBT to create an RPM (detour including Vagrant) Read more »

Tagged with: , , , , , ,

I’ve been examining the performance of my project’s DropWizard microservices. If you set the default loglevel to debug, DropWizard is very chatty – which is not good for performance. Using Gatling to locally stress-test the service (eg both Gatling and …

DropWizard performance and logging Read more »

Tagged with: , , ,

A UUID generator for the Gatling Stress Testing tool. 1 2 3 4 5 6 7 8 9 object UuidFeeder { val feeder = new Feeder[String] { override def hasNext = true   override def next: Map[String, String] = { …

Gatling UUID feeder Read more »

Tagged with: , , ,

I’ve been thinking about what needs to be covered off before we can consider a project “done”, and this is my memory dump.

Tagged with: ,