Hi!We have some "request" entities to handle communication between real apps and the helper apps. The real app creates a request object and stores it on the DB. Helper apps check the DB every 5 seconds or so for unprocessed requests. I've found some advantages on this:
- If processing goes wrong, you can store information about the error on the request itself and mark it as being in error state. That helps tracking down problems.
- It can be used to establish priorities, like sorting the requests for some kind of priority rules and always picking up the highest priority one.
- We still haven't made this, but theoretically it's an easy way to load-balance tasks, if that is needed, across multiple instances. As you have full control over the semantics of the requests, you can launch several instances with different configurations (maybe using command line arguments) and each instance can be smart enough to process only the requests that should be processed by it. This solves the problem of load balancing *and* making sure you don't have more than one instance making raw processing on the same data, as you would control that. Again, this paragraph is only theoretical, there may be something fundamentally wrong with this that I'll only find out when implementing, but it seems a great idea. ;)
Yours Miguel Arroz On 2008/10/09, at 01:40, Josh Paul wrote:
+1We have a DirectAction that allows for apps to call in when the process(ing) is needed.On Oct 8, 2008, at 5:11 PM, Chuck Hill wrote:So far that has worked for me as well. Chuck On Oct 8, 2008, at 5:00 PM, Miguel Arroz wrote:Hi!We have separate applications that handle that kind of tasks. Each of those applications will have only one instance running. No locking needed, no database channel congestion on "real" application instances, etc.Yours Miguel Arroz ........................... http://www.survs.com On 2008/10/09, at 00:49, Q wrote:I have a scenario where I need my application to periodically fire off background batch tasks in a separate thread, but only need one of the possible instances to perform this task at any given interval. What technique do people normally use with WO to perform this sort of election/locking between instances so that only one of them at a time ever attempts to do the work?-- Seeya...Q Quinton Dolan - [EMAIL PROTECTED] Gold Coast, QLD, Australia (GMT+10) Ph: +61 419 729 806 _______________________________________________ Do not post admin requests to the list. They will be ignored. Webobjects-dev mailing list ([email protected]) Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/webobjects-dev/arroz%40guiamac.com This email sent to [EMAIL PROTECTED]_______________________________________________ Do not post admin requests to the list. They will be ignored. Webobjects-dev mailing list ([email protected]) Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/webobjects-dev/chill%40global-village.net This email sent to [EMAIL PROTECTED]-- Chuck Hill Senior Consultant / VP DevelopmentPractical WebObjects - for developers who want to increase their overall knowledge of WebObjects or who are trying to solve specific problems.http://www.global-village.net/products/practical_webobjects _______________________________________________ Do not post admin requests to the list. They will be ignored. Webobjects-dev mailing list ([email protected]) Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/webobjects-dev/joshpaul%40gmail.com This email sent to [EMAIL PROTECTED]_______________________________________________ Do not post admin requests to the list. They will be ignored. Webobjects-dev mailing list ([email protected]) Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/webobjects-dev/arroz%40guiamac.com This email sent to [EMAIL PROTECTED]
smime.p7s
Description: S/MIME cryptographic signature
_______________________________________________ Do not post admin requests to the list. They will be ignored. Webobjects-dev mailing list ([email protected]) Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com This email sent to [EMAIL PROTECTED]
