Solved

Faster Eclipse / JBoss or Tomcat development station - quad-core, SSD ?

Posted on 2009-05-03
5
1,609 Views
Last Modified: 2013-12-15
A large portion of my time and my developers' time is spent in Eclipse, working on fairly large Java / EE projects deploying to Tomcat or JBoss (and REPEATEDLY restarting our local app servers for code changes).

I am convinced that a lot of the time spent building and/or booting JBoss could be reduced with a Solid State Disk, but I am curious if anyone else here has found that out. I have a SAS 15k RPM drive, which is as fast as I can get, but I am not satisfied with 18-20 second JBoss boot times and 60 second workspace rebuilds, when I have 4GB RAM and 3Ghz+ Core 2 Extreme processors.

So, anyone here have any ideas about building a new PC tuned specifically for complex Java projects? I know a good deal about hardware, but since the type of hardware I am considering is expensive, I'm nervous about dumping 3k into a test station before finding out how effective it is.

I am thinking:
1) Quad core might help? How multithreaded is Eclipse build process?
2) SSD may help, and I am hoping someone here is running SSD, especially with a RAID config.

0
Comment
Question by:mrjoltcola
  • 2
  • 2
5 Comments
 
LVL 92

Expert Comment

by:objects
ID: 24292137
doubt you'll get any huge improvements by changing your hardware. May be better to instead look at your development process, for example running container from within eclipse or using a lighter container during development.

0
 
LVL 40

Author Comment

by:mrjoltcola
ID: 24292194
1) I am talking about the container inside Eclipse, ie a local server configuration
2) We do use Tomcat on non JEE projects
3) I am stuck with several large EJB 1/2 projects that require a heavier container, though I am trying slowly to port them to Spring to get away from that.

Do you have any suggestions? I'm open to any improvements, hardware, software or process.
0
 
LVL 27

Assisted Solution

by:rrz
rrz earned 50 total points
ID: 24292250
This might a silly question.  But did you use the attribute ,
reloadable="true"  
in your <context> tag   ?  
http://tomcat.apache.org/tomcat-6.0-doc/config/context.html
0
 
LVL 92

Accepted Solution

by:
objects earned 450 total points
ID: 24292534
hardware will give you some improvements, but it doesn't sound like you'll get the improvement you're after. I use an oct core box for development and I get great performance but starting up containers is still going to take time. Hopefully this will improve ove the next few years as more things are written to take full advantage of running on multi core systems.

Lots of unit/components tests can be a good way to reduce the amount of times you need to restart the container as it allows you to test your code outside the container.

As rrz mentions, you can make changes without having to restart the server. Though I have found this a little unreliable in practice.

> 2) We do use Tomcat on non JEE projects

I don't think of tomcat as a light container, perhaps try jetty or resin

0
 
LVL 40

Author Comment

by:mrjoltcola
ID: 24292565
>>As rrz mentions, you can make changes without having to restart the server. Though I have found this a little unreliable in practice.

We have as well. Things don't get reloaded, (struts configs, action / controller changes, etc.) but after a reboot or full redeploy, magically they are correct. We use MyEclipse for the JEE projects, and by default we use change-and-go support as much as possible, and reload when the IDE tells us to, or when something just doesn't apply correctly. It can get frustrating not determining why something does not apply, to reload 2-3x and then find a full-clean/rebuild fixes it.

Thanks, I will try Jetty on my non-JEE projects, I have a friend who uses it.

As far as the JEE stuff, I don't know what other options I have besides porting away from the JEE dependencies.
0

Featured Post

Connect further...control easier

With the ATEN CE624, you can now enjoy a high-quality visual experience powered by HDBaseT technology and the convenience of a single Cat6 cable to transmit uncompressed video with zero latency and multi-streaming for dual-view applications where remote access is required.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
How to convert String matching to regex in java 4 49
Custom Java Application connects to database: Which one of the 20? 4 35
null output 3 35
printf performancy 11 68
Update (December 2011): Since this article was published, the things have changed for good for Android native developers. The Sequoyah Project (http://www.eclipse.org/sequoyah/) automates most of the tasks discussed in this article. You can even fin…
Introduction This article is the last of three articles that explain why and how the Experts Exchange QA Team does test automation for our web site. This article covers our test design approach and then goes through a simple test case example, how …
This tutorial covers a step-by-step guide to install VisualVM launcher in eclipse.
The viewer will learn how to synchronize PHP projects with a remote server in NetBeans IDE 8.0 for Windows.

839 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question