On 25/10/12 7:14 PM, Dan Tenenbaum wrote:
On Thu, Oct 25, 2012 at 8:45 AM, Richard D. Morey <r.d.mo...@rug.nl> wrote:
On 24/10/12 10:55 PM, Simon Urbanek wrote:

The point is that you need a separate monitoring process or threads. That
process can be R, Rserve or any thing else.



Thanks for the tips. This is what I'm currently contemplating:

1. Main interface starts in user's R session, and opens up the interface
(HTML/Javascript using Rook package)
2. When analysis starts, Rserve is started, with its own web server, using
Rook, for status updates
3. During analysis, main process calls a callback function which uses
RSassign() to send progress updates to the Rserve server
4. HTML/Javascript interface can connect to the webserver on the Rserve
server to get status updates
5. When analysis is done, use RSshutdown() and RSclose() to clean up.

Does this seem reasonable?

One problem I'm having is that when I start Rook on the Rserve server, the
webserver does not respond (although it is started). Does Rserve only
respond to requests on the port assigned for RSclient commands?

Best,
Richard

Here's an example:

#######################

library(Rserve)

### This works:

stuff = expression({

   library(Rook)
   s <- Rhttpd$new()
   s$add(
     app=system.file('exampleApps/helloworld.R',package='Rook'),
     name='hello'
   )
   s$start(quiet=TRUE)
   s$browse(1)
   print(s$full_url(1))
})

# This will open the browser to the test app, asking for your name
eval(stuff)

### This does not:

Rserve(args="--no-save")
c <- RSconnect()
RSassign(c, stuff)

# This opens the browser to the correct URL, but the webserver doesn't
respond.
RSeval(c, quote(eval(stuff)))


#####
# cleanup
RSshutdown(c)
RSclose(c)

This "works" for me if I omit the quote(). I get an error, but the
webapp seems to work. Also, I didn't eval(stuff) locally, only on the
server:
I'll try this in a bit and see what happens.

I forgot my sessionInfo()...

> sessionInfo()
R version 2.15.1 (2012-06-22)
Platform: x86_64-apple-darwin9.8.0/x86_64 (64-bit)

locale:
[1] en_AU.UTF-8/en_AU.UTF-8/en_AU.UTF-8/C/en_AU.UTF-8/en_AU.UTF-8

attached base packages:
[1] tools stats graphics grDevices utils datasets methods base

other attached packages:
[1] Rook_1.0-8   brew_1.0-6   Rserve_0.6-8

______________________________________________
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel

Reply via email to