Performance Zone is brought to you in partnership with:
  • submit to reddit
Gerard Davison05/02/13
6621 views
5 replies

Using Java WebSockets, JSR 356, and JSON mapped to POJO's

So I have been playing around with Tyrus, the reference implementation of the JSR 356 WebSocket for Java spec. Because I was looking at test tooling I was interested in running both the client and the server side in Java.

Erich Styger05/01/13
708 views
0 replies

Serial Bootloader for the Freedom Board with Processor Expert

Bootloaders are a very useful thing: it allows programming an application file without a debugger. This makes it ideal for upgrading a system in the field.

Keith Mayer05/01/13
524 views
0 replies

Walkthrough: Dynamic Optimization of Your Private Cloud Fabric

Continuing on in our Build Your Private Cloud in a Month series, today Yung Chou and I walk through the steps needed to dynamically optimize our Private Cloud Fabric.

Sean Hull05/01/13
645 views
0 replies

Make MySQL clustering work for you

We’ve told you all about MySQL mult-master replication’s limitations. If you write to two masters it is bound to fail for myriad reasons. Now what? Do what the pros do, that’s what!

Sandeep Patel05/01/13
2426 views
0 replies

Measuring Performance Using Perf4j Library

In this demo, we are using LOG4J library to log in the console.Logger Info will print the numbers in the console. A timer is used to randomly select some milliseconds to delay

Brian Swartzfager04/30/13
644 views
0 replies

Quick CFML Tips: Script-based Queries And Tag/Script Hybrid CFCs

While refactoring a particular process in a ColdFusion project at work, I learned two things I thought worth passing on:

Manik Surtani04/30/13
616 views
0 replies

Faster transaction protocols in Infinispan!

The total order based protocol is a lock free multi-master scheme (i.e. all the Infinispan nodes are able to execute read and write transactions) commit protocol.

Dan Haywood04/30/13
824 views
0 replies

Eclipse Tips: More refactorings (and a bit of common sense).

In this next video in my series of using Eclipse effectively, I show how how to use Eclipse’s quick-fix refactoring (and a little common sense) to restructure some hairy code into something rather more palatable.

Mark Needham04/30/13
689 views
1 replies

A/B Testing: Reporting

A few months ago I wrote about my initial experiences with A/B testing and since then we’ve been working on another one and learnt some things around reporting on these types of tests that I thought was interesting.

A. Jesse Jiryu Davis04/29/13
777 views
0 replies

Another Thing About Python's Threadlocals

One of the challenges I face is: if the connect pool assigns a socket to a thread and the thread dies, how do we reclaim the socket for the general pool?

Leigh Shevchik04/29/13
658 views
0 replies

Thread Safe APIs and Sidekiq Support for Your Threading

A few years ago multi-threading support in Ruby was flaky or non-existent. The Ruby agent came of age in that world, where the only real option for concurrency was running multiple processes. Recent versions of JRuby and MRI have changed that landscape.

Allen Coin04/29/13
891 views
0 replies

Video: Nashorn: Optimizing JavaScript and dynamic language execution on the JVM

There are many implementations of JavaScript, meant to run either on the JVM or standalone as native code. Both approaches have their respective pros and cons. The soon-to-be open sourced Oracle Nashorn JavaScript project is based on the former approach.

Allen Coin04/29/13
607 views
0 replies

Video: The power of node

Node.js is a platform built on Chrome's JavaScript runtime for easily building fast, scalable network applications. Node.js uses an event-driven, non-blocking I/O model that makes it lightweight and efficient, perfect for data-intensive real-time applications that run across distributed devices.

Vishal Jain04/29/13
401 views
0 replies

Mind it: Synchronization is Risky

Here I’m going to suggest NOT to use synchronization (or at least not using locks) if possible. Why? because it can open a can of dangerous worms if you use it without utmost care.

Allen Coin04/28/13
556 views
0 replies

Video: Performance and Capacity in a Cloud

What is the performance cost of a new feature? This session will introduce these topics and give examples for services most people are familiar with.

Leigh Shevchik04/28/13
709 views
0 replies

Cross App Tracing: Time to Break Up that Huge Rails Application?

If you’re a Rails developer, you know that developing a great web app is a straightforward process. While that offers many advantages, some apps grow too large and become hard to manage.

Rob Allen04/27/13
980 views
0 replies

Simple logging of ZF2 exceptions

I recently had a problem with a ZF2 based website where users were reporting seeing the error page displayed, but I couldn't reproduce in testing. To find this problem I decided to log every exception to a file so I could then go back and work out what was happening.

Peter Zaitsev04/27/13
590 views
0 replies

Percona Monitoring Plugins 1.0.3 for MySQL now available

The components are designed to integrate seamlessly with widely deployed solutions such as Nagios and Cacti, and are delivered in the form of templates, plugins, and scripts.

Mark Needham04/26/13
592 views
0 replies

No downtime deploy with capistrano, Thin and nginx

As I mentioned a couple of weeks ago I’ve been working on a tutorial about thinking through problems in graphs and since it’s a Sinatra application I thought thin would be a decent choice for web server.

Allen Coin04/26/13
942 views
0 replies

Video: Web Performance

Speed is an essential for a great web experience but it often gets overlooked. We'll examine how speed affects the users' experience and cover some ways we can measure and analyse it.

Peter Zaitsev04/26/13
803 views
0 replies

More on transactions descriptors optimization

Since our first post on transaction descriptors optimization introduced in Percona Server 5.5.30-30.2 and a followup by Dimitri Kravchuk we have received a large number of questions on why the benchmark results in both posts look rather different.

Leigh Shevchik04/26/13
519 views
0 replies

Tapp Introduces a New Way to Auto-Scale

Until this point, most auto-scaling has been performed based on very simple server metrics such as CPU consumption, memory usage and network utilization. This approach has several pitfalls. The integration between New Relic and Tapp allows you to auto-scale your cloud resources based on Apdex.

David Catuhe04/25/13
1356 views
0 replies

Using Visual Studio’s Javascript Memory Analysis tool to find memory leaks on your Windows 8 Javascript app

Javascript is a wonderful language for developing Windows 8 apps. As a untyped, dynamic language, Javascript is really flexible but sometimes if you are not careful you may leave some memory leaks in your code.

Gary Sieling04/25/13
1175 views
0 replies

Moving files and folders into hashed subfolders

The following will move a series of files into subfolders. It hashes the file names, building a two character, two folder deep hierarchy to split the files, e.g. a1/b2. The motivation for this is to split 500,000 folders into a manageable hierarchy, to avoid file system limits – in NTFS this is quite slow, and well over the 64,000 limit in ext4.

Mark Needham04/25/13
573 views
0 replies

Unix: Checking for open sockets on nginx

Tim and I were investigating a weird problem we were having with nginx where it was getting in a state where it had exceeded the number of open files allowed on the system and started rejecting requests.