Tuesday Oct 09, 2007

New Features in Japex 1.1.1 -

Japex Logo

Santiago has posted Japex 1.1.4, the GlassFish WS and XML performance tool. The new release addresses new customers, including CORBA (the new japex.singleClassLoader property) and a multi-user simulation (japex.runIterationDelay).

Rapid interaction between customers and developers is a key benefit of Transparent Development; this is a good example. Check more details in Santiago's Blog.

Thursday Jul 12, 2007

Using JAPEX for Performance Testing

Japex Logo

Several projects in the GlassFish community use Japex to run micro-benchmarks, sometimes taking advantage of additional tools like Hudson and WStest.

In this month's Tech Tip, Deep and Bharath describe in detail how to use Japex and WStest to do performance regression test on Web Services. Japex has been very useful in building GlassFish (blogs) and we are seing increased interest in contributing to it. Check it out!

Thursday Aug 31, 2006

From Continuous Integration to Continuous Improvement - And More Hudson Features...

Hudson Logo

Continuous Integration is gaining wider adoption; for example, check the recent Zutubi article and the TSS thread. One trend we have gone through in the GlassFish Community is a transition from Continuous Integration to Continuous Improvement. Not just do we integrate builds and functionality testing, but we are also integrating performance testing. That is the only way we can avoid Regressions.

Our main tool for continuous improvement is Hudson, and in recent releases it has acquired the notion of plug-ins, including those for Japex. The latest release of Hudson is 1.47, check Kohsuke's blog; and also see some nice words about Hudson here. As part of Transparency, we are planning to export more of the GF continuous improvement reports, like how we did with the eMail delay reports.

Added: Check Santiago's entry on the Japex Plugin.

Tuesday Aug 22, 2006

Update on Two GlassFish Tools - Hudson and Japex

Japex Trend Report

Home Faber strikes again... Santiago describes improvements to Japex that provides Trend Reports and Kosuke talks about Hudson Plugin Support... among others to support Japex.

And there is also the new Code Coverage Support in NetBeans that I mentioned this morning.

Monday Jul 31, 2006

How we Lost and Regained WS Performance -- JAXB Performance Tips

Performance is hard to gain and easy to loose.

Japex Logo

Last year we designed a New Architecture for the Web Services stack in GlassFish. The results are very nice ([Interoperability with MS], [FastInfoset Support], [Multiple Transports]) and the performance numbers just before JavaOne were very promising, but we got distracted and didn't run our performance regression tests and... you guessed, we had a substantial performance regression.

The good news is that this regression was easy to do fix: Kohsuke just posted two Simple JAXB Performance Tips that seem to have restored most of the performance (and Sameer reinforces that). The root lesson is also simple: always run your Regression Tests; this time we were lucky, the next time the problem may be architectural and harder to fix.

The new WS stack should show in GF V2 M1; I believe that the Project Tango functionality will show incrementally shortly after that. And we still Encourage your Participation in this WS stack.

Tuesday May 09, 2006

Japex JAR to GlassFish Maven Repository

Maven Logo

The latest addition to our Maven Repository is Japex.

Earlier additions include: Fast Infoset and XML Stream Buffer, JSFs, JavaMail and Activation, JAXB, JAX-WS and SAAJ.

Friday Apr 14, 2006

Performance Regression Reports using Japex

A Regression Report from Japex

There is a new version of Japex with performance regression reporting. It is now possible to set a threshold and to get notifications when it is exceeded. The WS team at GlassFish is using this tool to avoid regressions.

Check Santiago's blog for details.

Performance, ,

Monday Mar 27, 2006

Distributed Hudson

A hammer

I think it is a sign of a healthy community when it starts generating, using, and evolving its own tools and others start using them (although sometimes Homo Faber can go a bit too far...). GlassFish is now using Japex for some performance testing, Dalma for automating tasks, Hudson for continous build processes. In particular, the latest Hudson now supports distributed builds so we can use it to build more projects.

Check details on the Hudson 1.19 in Kohsuke's blog.

Wednesday Mar 22, 2006

New Features in Japex 1.0.3 and Hudson 1.1.8

Japex Logo

Two new releases of automation software used in GlassFish. Japex, from Santiago, is used to do some performance testing. New features in Japex 1.0.3 include support for XInclude, test case groups, parameter groups, new formulas for computing latency and throughput in multi-threading tests.

Hudson, from Kohsuke, is used for continuous builds in several projects. The main new feature in Hudson 1.1.8 is the ability to record and track JUnit test result reports, including ages of failures, so that you can focus on young failures.

Japex, Hudson, Performance, ContinousBuild,

Wednesday Feb 15, 2006

More on the improved JAX-WS implementation

The Shuttle Endeavour Launching in 2001

Kohsuke recently started writing about the new Improved JAX-WS implementation and now Paul is going into some Details on JAX-WS Performance. He describes the use of Japex, the new XMLStreamBuffer and XMLStreamReader, and more. He also promises more details in future blogs.

I think the new implementation will rock (or rocket?); this would be a great time for new members to join; start by using the artifacts (beta soon!), report bugs and rfes, and eventually become contributors.

(Photo by Chad Miller)

Friday Feb 10, 2006

Testing Scalability using Japex

Scalability Over Threads

New architectures like UltraSPARC T1 deliver many usable threads in a very small power/space envelope. This means that horizontal scaling of applications becomes very important and so is the ability to easily test software scalability. Santiago describes to use Japex to quickly Test Scalability by running a number of tests varying the number of software threads and the number of hardware cores (he used a SunFire T2000 with Solaris).

Happy benchmarking!

Wednesday Feb 01, 2006

Contributing to GF - FastInfoset Discussions

This is one of a series of blogs where I will try to highlight participation in several communities in GlassFish, specially non-Sun participation; perhaps some of these blogs will interest you as a user, or as a direct contributor.

Castell 4 de 9 amb folre

The Fast Infoset project (some blogs [1] and [2], and white papers [3] and [4]) had wide industry participation in the standard. A number of people participated in the implementation including Alan, Ias, Don and the mailing lists for FI are active, both the DEV list and USERS list, with contributions from additional people like Tatu Saloranta (WoodStox) Jimmy Zhang (XimpleWare), Brian Potarelli (Inversoft) and Mark Swanson mark@ScheduleWorld.com.

Ias has incorporated FI into FIME and I know he was also considering adding it into other places, including Mirae @ ASF, and zell@zell.best.vwh.ne reported work on integrating FI with XMLBeans. FI uses Japex which will be used as the testing framework in the EXI group, where Paul and Santiago continue to contribute.

Two words on the image of this blog. I've always liked Castells in part because they are build by a large group and everybody has a role, from very strong people at the bottom to very light boys - and girls - at the top. Even the crowd helps stabilize the castle. A great image for community building, which is why I used them when I was the lead for the JSP specs.

Monday Jan 30, 2006

Java and C and C# - Japex and COM4J

Yin and Yang

Santiago and Paul have extended Japex ([1], [2]) so it now supports Native C drivers. With this extension, the W3C Efficient XML Interchange WG decided to adopt Japex for its new evaluation phase of different encoding formats.

And, on same general topic of complementing the world of the Java platform with another environment, Kohsuke just released a new version of COM4J that bridges to the world of COM; details at COM4J.

Friday Jan 27, 2006

Benchmarking using Japex and JUnit

Japex Duke logo

Santiago has been spending some more quality time with his japex project. Japex was initially used within FastInfoset group but Santiago recognized it was generally useful and made it reusable. His new direction involves combining it with junit so as to support performance benchmarking. The results look good, so it may also work for you.

Code at Japex.dev.java.net; feedback at users@japex.dev.java.net.

Monday Jan 02, 2006

More on Japex Project

Photo of Santiago

Santiago gives some more background on the new Japex micro-benchmarking project. Check out his blog.