I am new to Java and have been taking Sang Shin's Java Passion course and reading Herb Shildt's book "Java 2 - The Complete Reference" cover to cover. Still wading through both the course and the book, but now I have a project at work. I am a system admin and we have hundreds of servers using homebrew perl backup scripts that run on both a client and a netbackup server. Diagnosing backup problems is sometimes a nightmare so I've added some networking to the perl scripts that sends status info (like breakpoints) to a central server. I want to use a Java server on this central server that listens on a port and opens a file for each machine doing a backup. Then I was thinking of using an applet that would read each of these files (essentially "tailing" the files) and show each machine's backup progress in real time with the applet.
I'd like to ask for some ideas for the multi-threaded server since the Java server will have to keep track of each machine and put the right status message for the right machine as it receives them on the network port. I've found some code on the InformIT website that looks good, but was wondering if the code for the "robust Java server" is overkill.
Being a Java newbie, I'd like to see what other approaches there are.
Thanks again for the suggestion. I want to take best route for this little project...even it makes my head hurt.
Bruce Juntti wrote:Thanks Gudim for the reply - that's sorta what I figured. And thanks again, Jelle, for the idea. I think I'm going to study up on servlets. I don't know at this point if I need to implement Tomcat (or Glassfish), but I guess I will find that out.
A Servlet container like Tomcat would be quite sufficient, there's no need to run a full-ledged JEE application server like GlassFish.
By the way, if you decide to go for XML-RPC as your communication protocol, I'd recommend taking a look at the Apache WS XML-RPC library.
It's pretty straightforward and it ships with a ready-made Servlet that can handle incoming XML-RPC requests, which should be sufficient for your needs.