April 26, 2009
Spring is often times considered a web application library similar to the EJB 3.x stack. However, Spring is so much more and can live in standalone applications as well. Today I am going to touch on using Spring in standalone applications to handle dependency or configuration management. I do not mean configuration management in the [...]
April 23, 2009
As promised in prior articles, I will demonstrate how to create a custom pipeline factory in Netty that provides some custom features including: Auto-discovery of annotated handlers (including pluggable annotation provider) Auto-provisioning of stateful and stateless handlers Auto-pooling of stateful handlers (including pluggable pooling provider)
April 21, 2009
Before I start, let me say that I am in no way affiliated with JBoss or Netty (although I may choose to submit future code as part of the open source community). Therefore, all comments, code samples, etc are mine or a derivative of examples provided by Netty. I apologize up front for any possible [...]
April 20, 2009
Now that I have narrowed by server down to using JBoss Netty, it’s time to define protocols. This involves two things. First, we need to select the actual protocol itself and second, we need to define how to construct the handlers. Let’s start by defining the handlers. Netty is built upon the principle of handlers, [...]
April 17, 2009
Just like software, user interface design or user centered design has patterns as well. The following are a collection of various patterns with examples to sites that deploy them. This is a very good collection of web-based patterns for your current and future web applications. Quince
April 13, 2009
We have now analyzed various open source NIO servers for performance and memory consumption. Per my quick, initial testing, only Grizzly, Mina, and Netty were comparable. Now, let’s analyze features and how each of these frameworks use them. For my purposes, I am going to be looking into the following features that I personally value [...]
April 9, 2009
As my ongoing investigation into picking a suitable and highly scalable server for my future applications, today I will be talking about memory. Yesterday, we discussed performance and saw in general how Netty and Grizzly compared to one another. Today, we will further extend that by comparing memory usage footprint at start, over time, and [...]
April 7, 2009
As a continuation of evaluating an NIO server for my iPhone game, I started with looking at pure performance. First, the following links provide already existant benchmarks: http://swamp.homelinux.net/blog/index.php/2009/03/03/performance-comparison-of-apache-mina-and-jboss-netty/ http://gleamynode.net/articles/2232/ http://mina.apache.org/performance-test-reports.html I took my own samples and quickly ran some basic tests as well to just get a really rough idea. Note that these metrics should [...]
April 6, 2009
So, after spending a couple of hours trying to figure out why a particular function was so slow compared to my expectations, I realized my issue dealt with the fact that I forgot about String.concat. I had embedded in my head the past year to always use StringBuilder when possible when concatenating strings. After figuring [...]
April 2, 2009
As part of my new iPhone project to build a new game, I need to have a backend server to communicate with all the members in order to sync and dynamically update on the fly. Knowing the iPhone and its possibilities, I want to plan for a highly optimistic future in which thousands of concurrent [...]