A Place for my head

On Ruby, Rails, Concurrency and fiction

Although its been quite sometime since 1.0 release of BackgrounDRb has been out in the wild, yet a belated post mentioning its features is nonetheless welcome.

Although README document available at, http://backgroundrb.rubyforge.org is quite comprehensive and there is precious little I can add, yet I shall try.

  • BackgrounDRb is a Ruby job server and scheduler. Its main intent is to be
    used with Ruby on Rails applications for offloading long-running tasks. However unlike other libraries BackgrounDRb offers tight integration with Rails and hence you can check status of your workers, pass data to workers and get response back, register status of your workers, dynamically start or stop workers from rails and stuff like that.
  • BackgrounDRb doesn’t have any DRb in its skin now. Its based on networking library packet, (http://packet.googlecode.com)
  • Its stable.
  • It has support for thread_pools, storing of results in MemCache clusters
  • It comes with its own scheduler and hence you don’t need to muck around with crontab anymore

A Quick overview of installation:

  • Get the plugin using:
     piston import http://svn.devjavu.com/backgroundrb/trunk/ backgroundrb
  • Remove or backup older backgroundrb scripts/config files in your rails root directory
  • Run following command from root directory of your rails app:
     rake backgroundrb:setup
  • Have a look at generated config file, RAILS_ROOT/config/backgroundrb.yml and see if there is anything you would like to change.
  • Generate a new worker using :
     ./script/generate worker foo
  • Read the detail documentation about writing workers and stuff on http://backgroundrb.rubyforge.org
  • Start your BackgrounDRb server with:
    ./script/backgroundrb start
  • Stop your BackgrounDRb server with:
    ./script/backgroundrb stop

16 Responses to 'BackgrounDRb 1.0 released'

Subscribe to comments with RSS or TrackBack to 'BackgrounDRb 1.0 released'.

  1. Thanks Hemant for the 1.0 release. However, does this release of BackgrounDRb work on Windows? I remember that 0.2 version had some issues with Windows.

    Rajmohan

    20 Dec 07 at 1:28 pm

  2. It still sadly doesn’t work on Windows. Mainly because of fork() and UNIX Sockets.

    gnufied

    20 Dec 07 at 2:10 pm

  3. Hi, Hemant. I can’t find it anywhere, I figured I’d ask here - will the latest BackgrounDrb work on Rails 1.2.3 and Ruby 1.8.4? I’ve banged my head for a day getting it to work with the above configuration.

    bobby

    9 Jan 08 at 7:58 am

  4. Hemant, does the latest version of the plugin require Ruby 1.8.6 and Rails 2.0.2? I have 1.8.4 and 1.2.3 and can’t seem to get it working.

    bobby

    9 Jan 08 at 11:18 pm

  5. It needs Ruby >= 1.8.5. Rails 1.2.3 is fine.

    Hemant

    10 Jan 08 at 4:32 pm

  6. Thanks! I’ve been trying to get it to run in Leopard, I keep getting connection errors. Thanks for the nice work with the plugin, it really is quite useful.

    bobby

    10 Jan 08 at 6:22 pm

  7. Well, first try the latest release from trunk. Let me know about any problems you are facing on the backgroundrb mailing list. We can sort this out, if you provide more information.

    Hemant

    10 Jan 08 at 7:26 pm

  8. Hello,

    in the previous version (0.2.x) there was a patch to run on windows:
    http://backgroundrb.devjavu.com/ticket/42

    can anybody send a new patch for the current version?

    Thanks,
    Tamas

    Tamas Tompa

    21 Jan 08 at 9:32 am

  9. I see that the patch just enables rails applications that are using BackgrounDRb to run properly. Well, this shouldn’t be harder to get working.

    Hemant

    23 Jan 08 at 2:24 am

  10. Hemant, I just upgraded to the 1.0.1 release it looks great from what I’ve read, but sadly I cannot run it under windows. Is there any hope on the horizon of getting a windows version, or should I look into other solutions? The main problem from what I can see is the dependency on UNIXSocket.

    Matt

    6 Feb 08 at 1:46 pm

  11. Matt, I will love to have Windows support. But it requires non-trivial amount of work. But, don’t give up hope, I am currently working to get test cases and other stuff going, I need to settle down a bit, before starting work on Windows version.

    Hemant

    7 Feb 08 at 2:23 pm

  12. Big thanks for this release, hemant. Nice to see some deprecation work going on, too. Good job.

    Olle Jonsson

    8 Feb 08 at 10:16 am

  13. I get consistent connection errors on linux and leopard with the latest source. Would love for this to work, but packet seems to be a dud. I’ve been trying to trace down the issue, and it points to packet.

    Too bad. I’m ready to toss out a lot of work.

    somaking

    12 Mar 08 at 11:34 pm

  14. Would you care to post a stack trace? Either on BackgrounDRb mailing list or directly to me?

    Hemant

    13 Mar 08 at 1:03 pm

  15. Hi….
    I’m new to BackgrounDRb plug-in……

    I got a problem when I use this plug-in. How can I use PO files with this tool.

    I’m sending regular e-mails to registered users in the site with new information. The relevant .rhtml file contains PO injections as follow.
    Ex:
    : - This is showing in the received e-mail as follow.
    user_name : Hansaka

    All the relevant PO strings have been saved in the file and converted into .MO file. But if I send this mail with using web application I’m getting the correct string as follow,
    user name : Hansaka

    The PO files are not taking in BackgrounDRb I guess. Please help me to solve this….!!!!
    Thanks….

    Hansaka

    27 Jun 08 at 12:35 am

  16. I think, you need to explicitly require dependent libraries and provide absolute path for your po files.

    Hemant

    30 Jun 08 at 2:01 pm

Leave a Reply