Re: Serviced Component : Architectural revival
- From: "Alex Li" <likwoka@xxxxxxxxx>
- Date: 7 Jul 2006 11:27:07 -0700
Furqan,
Hmm... may be you can tune your database access and PDF generation to
be a lot faster, but there is a chance that there is nothing really
wrong with your implementation, it just simply takes that long to
process your work. If that is the case, you may want to reconsider
your workflow... rather than doing all these in ASPX/IIS, may be do
your processing in another process and send out an email to the user
once it is done?
On COM+, since it is actually implemented in unmanaged code, you would
have some additional "leaked abstractions" that you have to take care
for when throwing custom exceptions from your serviced components to
your client applications... see
http://msdn.microsoft.com/msdnmag/issues/04/03/ExceptionsinCOM/
HTH,
Alex
Furqan Baqai wrote:
Thanks Michael for your reply
Q. Did you compare this querying time with one by using SQL Management
studio?
Are these 2 queries relevant by time?
A. Nopes. We captured the time by adding intrunmentaions in Data Access Layer
Q. Did you tried to wrote test of generating pdf by means of any other tools,
like http://csharp-source.net/open-source/pdf-libraries?
A. Nopes. Our client have Crystal Report license and they export it in Excel
as well as PDF. PDF is the default format of report generation
Q. Where this pdf convertion performs? I hope not in the IIS work process
Could you describe process of converting more wide?
A. It's in IIS worker process :D. Report is generated by creating a PDF
stream through Crytal Report Engine. We pass that stream to the Response
object.
FF> We increasased the connection timeout property, it helped generating
FF> the report but still, since data is pilling up, performance is
FF> degreading a lot.
FF> 1. DB optmization
FF> 2. Placement of Dataacess layer to other machine.
I'm not sure if this helps. The problem not in the numbers of request, but
in the data processing
Comment: We realized that there's problem in the database deisgn as well but
then there's lots of rows. A ingle report is like of almost 40 - 45 pages.
Service component is more productive
Comment: We are looking for a solution haveing less Time To Market, since
its a Core Business Application at the same time, in the near future, we are
looking forward of buying a seperate server for hsoting application's Data
Acess Block.
Under such circumstances do you think that COM+ apps will suite the need?
I dont know how to call COM+ apps remotely. Do have any article or book
recommendation ?
Thanks again.. looking forward for your reply....
--
Mohammad Furqan Baqai
MCAD
"Michael Nemtsev" wrote:
Hello Furqan,
FF> We have ASP.net application which uses crystal report as a report
FF> generation
FF> tool and SQL server Database server.
FF> We are using Microisoft Entlib Security Bl*** and Dataacess block.
FF> We are facing a huge performance degeration problem in the
FF> application
FF> mainly in reporting section.
FF> We audited the scenario in our test labs and found out that it took
FF> 17 secs
FF> (avg.) to get the data from the DB (for a particular compute
FF> insentive
FF> report)
Did you compare this querying time with one by using SQL Management studio?
Are these 2 queries relevant by time?
FF> and almost 2 1/2 mins to compile the data into a pdf stream
FF> (of
FF> almost 150 pgs report) through Crystal report.
Did you tried to wrote test of generating pdf by means of any other tools,
like http://csharp-source.net/open-source/pdf-libraries?
FF> Because of this report IIS
FF> worker processor is consuming huge amount of memory and when reports
FF> get
FF> generated whole application get slow.
Where this pdf convertion performs? I hope not in the IIS work process
Could you describe process of converting more wide?
FF> We increasased the connection timeout property, it helped generating
FF> the report but still, since data is pilling up, performance is
FF> degreading a lot.
FF> 1. DB optmization
FF> 2. Placement of Dataacess layer to other machine.
I'm not sure if this helps. The problem not in the numbers of request, but
in the data processing
FF> For placement of Dataacess layer to other machine we can make a.
FF> Datacess
FF> block remotable, but then it means that we have to change huge
FF> amount of code
FF> b. We can make service components, which will give us additional
FF> facility of
FF> 1. Object Pooling
FF> 2. JIT
FF> 3. Asynchronous call
FF> Keeping all this scenario in mind i need following suggestions,
FF> since the
FF> whole decission is on make or break position.
FF> 1. Should we use service components or remoting ?
Service component is more productive
FF> 2. Can serviced components help us out under such circumstances?
hope it could. You need to move intensive processing to other layer, which
is more appropriate for this.
FF> 3. Can we use batch processing of reports using serviced components?
sure
Looking forwart to see you answers
---
WBR,
Michael Nemtsev :: blog: http://spaces.msn.com/laflour
"At times one remains faithful to a cause only because its opponents do not
cease to be insipid." (c) Friedrich Nietzsche
.
- Follow-Ups:
- Re: Serviced Component : Architectural revival
- From: Furqan Baqai
- Re: Serviced Component : Architectural revival
- References:
- Re: Serviced Component : Architectural revival
- From: Michael Nemtsev
- Re: Serviced Component : Architectural revival
- From: Furqan Baqai
- Re: Serviced Component : Architectural revival
- Prev by Date: Re: Serviced Component : Architectural revival
- Next by Date: Re: Serviced Component : Architectural revival
- Previous by thread: Re: Serviced Component : Architectural revival
- Next by thread: Re: Serviced Component : Architectural revival
- Index(es):