Now I really have to use JPPF coz I have about 10000 tasks and each of them takes from 5 to 10 minutes to process...
I have a network of about 40 computers and I am going to use it.
I just started to implement this project, but I faced small problem: where is nice documentation?
Small introduction will be very welcome...
Any way: I will keep in touch coz I think it could be interesting for some of you how I proceed...
Here is an idea...
Does it make a sense to implement EventHandling interface?
I am not familiar with JPPF at the moment and now my idea is a little bit messy but it is the following:
First of all I don’t really like, that I have to put all my 10000 tasks in the queue. I would like to have certain mechanism where I can pass EvenHandler object and each time, when JPPF sees that there is free computing recourses are available it asks me to give a new task.
I think this approach more user/developer friendly coz all control in my hands. I can easily stop distributed processing and run it again from the certain point.
Moreover, it would be great if very time, certain processing task is calculated JPPF calls EventHandler and tells me to take this processed results back. Currently (as far as I saw in examples) I have to wait until all tasks are processed before I get results… Of course, I can give not all tasks for queuing but jus some bundle, and handle bundle by bundle, but it is not optimal way and I think this is completely wrong approach which brakes whole idea of distributing processing.
So, it was just an idea, and for me seems that Event driving framework would be great!
May be I didn’t understand something, please give me some ideas if I am wrong.
Regarding a JPPF manual, you are unfortunately right, this is currently missing. Most of our efforts so far have been centered on the code, and documenting the code. The best source of documentation is probably the Javadoc today, and we tried to make it as extensive as possible.
Of course, this does not replace a manual, and a manual is still part of the JPPF roadmap.
The main reason for this is that the code is still evolving. We still are quite a few steps away from a full-fledged grid's capabilities. Getting there will certainly involve many changes, and any manual we write is likely to become rapidly obsolete. That is an unfortunate situation, and no doubt it is the case for many other open source projects.
In the meantime, we are commited to support our user community. We'll be glad to answer your questions, help you find your way into JPFF, or provide code samples if you think it can help you.
So please don't hesitate to ask us, as you've done so far :-)
As to your question about an event handling mechanism, there are, as usual, sevral possible answers.
First, the JPPF server's internal queue is actually tied to an event handler, triggered when nodes are available for task execution. This approach allows for an asynchronous task dispatching mechanism, with minimal performance overhead.
Second, with regards to receiving the results of each task individually, I'm not entirely sure I understand your concern, but let me give it a try, and tell me if I'm far from the mark:
my guess is that you would like to receive the results of the execution of each task immediately after the execution is complete, rather than have to wait until all tasks are executed. In this case, you'd be talking about a way to submit the tasks asynchronously, in a non blocking way, with a notfication mechanism triggered when a task results are received. I think it is a very good idea, and I submitted a feature request to include it in the next release or maybe the one after that.
Anyway, I am very interested in learning how things turn out for you, so please keep in touch about your experiencxe with JPPF, and again, feel free to ask if you need clarification.
Thank you very much for your answer.
You are right, just my English in not the best thing I can do (I learned it in Ireland... so)
Today I tried JPPF and everything seems to be ok, but I need some time to redesign my project for higher performance in distributed mode. So, now I cannot tell anything new, but I have some ideas about what could be useful for me. As soon as they crystallized enough I will write them here.