concurrent report generation
I have built a middle tier using RemObjects which generates reports and
returns these in PDF format to the client tier (at the moment web based,
but this could well be windows based in the future as well)... not too
dissimilar to what report builder Server does (only I'm using Professional).
However, I read an article in the Rem Objects newsgroups from someone
else who had done this and they said it did not work if multiple reports
were generated concurrently... basically, if two users wanted to
generate a report at the same time, one of them would have to wait until
the other one had finished... and if 20 users want to generate a report
at the same time, then 1 of them has to wait for 19 other reports... by
which stage, the web server has probably timed out and the user has gone
for a coffee.
Two questions:
1) Can anyone verify that this is correct (the Report Builder engine
cannot generate multiple reports concurrently)?
2) How is this dealt with in Report Builder Server edition?
PS: I'm going to upgrade to RBuilder Server edition (and will do as soon
as I get a reply from sales about my upgrade info). I'm not building my
own middle tier and web tier to avoid paying for report builder server
edition - the main reason I did it is that my report server has to be an
ISAPI and, as I understand it, RB Server has to be an exe...
Thanks in advance for any replies.
Best Regards,
James Crosswell
Software Engineer
Microforge.net Limited
http://www.microforge.net
returns these in PDF format to the client tier (at the moment web based,
but this could well be windows based in the future as well)... not too
dissimilar to what report builder Server does (only I'm using Professional).
However, I read an article in the Rem Objects newsgroups from someone
else who had done this and they said it did not work if multiple reports
were generated concurrently... basically, if two users wanted to
generate a report at the same time, one of them would have to wait until
the other one had finished... and if 20 users want to generate a report
at the same time, then 1 of them has to wait for 19 other reports... by
which stage, the web server has probably timed out and the user has gone
for a coffee.
Two questions:
1) Can anyone verify that this is correct (the Report Builder engine
cannot generate multiple reports concurrently)?
2) How is this dealt with in Report Builder Server edition?
PS: I'm going to upgrade to RBuilder Server edition (and will do as soon
as I get a reply from sales about my upgrade info). I'm not building my
own middle tier and web tier to avoid paying for report builder server
edition - the main reason I did it is that my report server has to be an
ISAPI and, as I understand it, RB Server has to be an exe...
Thanks in advance for any replies.
Best Regards,
James Crosswell
Software Engineer
Microforge.net Limited
http://www.microforge.net
This discussion has been closed.
Comments
I recommend that you download the RB Server Edition and spend a some time
with the demos and tutorials. I think this clear up many questions that you
may have about the architecture.
RB Server can concurrently generate reports - each report executes in a
separate thread of the server application. This requires that each report
have a thread-safe environment in which to execute. ReportBuilder 7 is
threadsafe. Providing thread-safe database connectivity is covered in
tutorials and demos.
Keep in mind that generating reports can be CPU and database intensive. A
strong database server and a multi-processor report server machine can help.
RB Server achieves very high performance by performing numerous
optimizations on the server, client, and webtier. RB Server is highly
optimized to incrementally generate only the pages requested by the client.
The ClientReport and WebTier can locally cache the pages that they recieve
from the server. The WebTier incrementally generates optimized html pages
and locally caches them as well.
The ReportServer and WebTier applications can run on the same machine or on
separate machines. The two piece architecture is more robust. The report
server, when run within the context of the provided RB Windows Service is
automatically restarted if the application encounters a fatal exception.
Most database servers run as Windows Services and often run on dedicated
hardware. RB Server is similar in this regard.
--
Nard Moseley
Digital Metaphors
http://www.digital-metaphors.com
Best regards,
Nard Moseley
Digital Metaphors
www.digital-metaphors.com
I looked quick quickly at the RO ngs and only saw reference to RB
6.02--whcih wasn't thread safe (Thread titled 'ReportBuilder problems' by
Knut Lambert on 4/13?) . Version 7 is thread safe and you can create
multiple threads at the same time. besides that RB Server is very well
designed as an n-tier solution--done right.
--
Ed Dressel
Team DM
Thanks Nard, actually I'd already done that and built a report server
and web tier client. That was how I originally discovered that RB Server
can only run as a Windows application - which as I said, isn't an option
for me. My server has to be an ISAPI.
Seems like I just need to upgrade to version 7 then. I'm not sure where
to find my serial number though.
Report Builder Server edition sounds great - I wish I could use it. I'll
buy it anyway, just in case I can use it in the future, or incase you
ever manage to make your architecture flexible enough that I can use an
ISAPIs as the container for a report server.
For the moment, I'm going through the drudgery of building a web based
interface, working out what autosearch fields need to be collected from
the user and getting that input etc etc... This is not entirely unlike
reinventing the wheel - since you've already done this. Like I said - I
wish I could use RB Server edition - it's a pity I have to do all this.
Thanks for your quick response in any case.
Best Regards,
James Crosswell
Software Engineer
Microforge.net Limited
http://www.microforge.net
Cheers ed - will upgrade as soon as I get a response from sales then.
Best Regards,
James Crosswell
Software Engineer
Microforge.net Limited
http://www.microforge.net