Icon View Thread

The following is the text of the current message along with any replies.
Messages 11 to 20 of 40 total
Thread Speed Issue over a VPN
Thu, Feb 25 2010 4:40 AMPermanent Link

Rob
Hi Roy.

>1. How much data is there in the 69 records, 2. are you sure that's all that's being transferred, 3. I don't know the DevEx scheduler so is it
>possible that its getting one record, doing something, doing the next etc

I've attached an copy of the file structure.  Is this a lot of data?  I don't know.  I do a record count once the Scheduler has loaded the events.  Both
the query and scheduler report 69 records.

>Something you may want to consider is generating the query results on the server, streaming those results over to the client and then loading the
>DevEx control from there.

Are we talking a ServerSide procedure?  I'd certainly have a go at this but have steered clear in the past.  I initially had the query opening (it
returns data according to the values of ActualStart and ActualFinish i.e. 5 or 6 weeks depending upon the current month) during form creation.  the
datasource was not connected to it.  In FormShow I then linked the datasource thinking it would then load superquick but the network lights started
flashing as it appears to be loading the data again.

>If the bottleneck's in comms upgrading the server is unlikely to help.

Point taken.

Back to creating the query on the server and streaming it to the client.  Surely if the DevEx control is requesting a refresh or whatever then it has
to be sent again?  I suppose I could perhaps load the query results into a memory table but I'm not too sure how this would keep in sync with the
server.

Thanks for your assistance.

Roy Lambert
Thu, Feb 25 2010 5:21 AMPermanent Link

Roy Lambert

NLH Associates

Team Elevate Team Elevate

Rob


1. no attachment

2. how quick is just populating a dbgrid? If that's ok then the problem is the component, if not its comms.

Roy Lambert [Team Elevate]
Thu, Feb 25 2010 10:34 AMPermanent Link

Rob
Roy Lambert wrote:

Rob


//1. no attachment

Thought I'd added it.  Have tried again.


//2. how quick is just populating a dbgrid? If that's ok then the problem is the component, if not its comms.

I've tried a Quantum Grid and it takes 30 secs for the same query.  This suggests the Scheduler is to blame for 20 secs I'll try a plain dbgrid this
evening.

The odd thing is it flies in the office.

Roy Lambert [Team Elevate]



Attachments: DevExEvents.zip
Thu, Feb 25 2010 7:55 PMPermanent Link

Tim Young [Elevate Software]

Elevate Software, Inc.

Avatar

Email timyoung@elevatesoft.com

Rob,

<< I'm slowly getting there.  Using a memo (as suggested by Tim) to track my
code I got the bottleneck as being a query retrieving data for events in a
DevEx Scheduler.

I've now fiddled with RemoteCompression and RemoteReadsize and am down to
50 seconds to load 69 records over the VPN. >>

That's still way too slow.  What does the remote trace say about what is
occurring during the time of the loading of the 69 records ?

--
Tim Young
Elevate Software
www.elevatesoft.com

Fri, Feb 26 2010 3:55 PMPermanent Link

Robert Rowlands

Tim & Roy.

Firstly I've connected a plain TDBGrid to the datasource and it loads the records in under a second.

I will run the test Tim asked for and post it here.

Does this suggest (as put forward by Roy) that the scheduler perhaps loads a record, does something and then perhaps loads the next one?  If so, what would be the best way to load the data to the Client machine and then connect it to the Scheduler?

This really worries me as all my grids are DevEx.
Fri, Feb 26 2010 4:52 PMPermanent Link

Robert Rowlands

Tim.

I used a TStringList.  The memo filled up (I think).

File is attached.



Attachments: Scheduler.txt
Fri, Feb 26 2010 5:00 PMPermanent Link

Robert Rowlands

And this is for a connected TDBGrid.

I guess I can see the problem but I've no idea how I approach it.



Attachments: TDBGrid.txt
Sat, Feb 27 2010 3:30 AMPermanent Link

Roy Lambert

NLH Associates

Team Elevate Team Elevate

Robert

>Firstly I've connected a plain TDBGrid to the datasource and it loads the records in under a second.
>
>I will run the test Tim asked for and post it here.
>
>Does this suggest (as put forward by Roy) that the scheduler perhaps loads a record, does something and then perhaps loads the next one? If so, what would be the best way to load the data to the Client machine and then connect it to the Scheduler?
>
>This really worries me as all my grids are DevEx.

One thing it does suggest is that you need to ask DevEx support to see if there's a property or method that would make things work more effectively.

In my app all the grids are TMS and in local mode its fine, over the LAN (100Mb) not so fine, I'm trying to see if that's the grid or using f/s and suspect the latter, but the older version (DBGrids, not as rich a display) is a LOT faster.

There is a price to pay for prettiness and rich functionality.

Roy Lambert [Team Elevate]
Sat, Feb 27 2010 6:21 AMPermanent Link

Robert Rowlands

Roy.

I'm sending the two Remote Trace files to DevEx for comment.

I'm still not quite understanding how it all works.

DevEx have a component called MemData.  Apparently it is very similar to a TClientDataSet.  I guess the name of the latter describes it's purpose in life.  I have tried using a MemData component.  I open the qryDevExEvents and then load it into MemData.  I then enable the MemData control and the whole exercise takes 25 seconds.  Still not good but a distinct improvement.

I assume this process firstly creates a query on the Server and then copies it down the VPN to the MemData component.  It seems that it may be quicker if I could copy everything straight into the MemData component.

What also puzzles me is the load time into the Scheduler.  In the office the whole process (opening the query and loading into the Scheduler) takes less than 1 second.  That implies that the actual loading of the data from the query into the Scheduler is less than one second.  Yet as a remote Client it is definitely taking longer.  I find this odd as surely once the data is on the remote Client machine it should only take a second to load like in the office?

Rob.
Sat, Feb 27 2010 6:50 AMPermanent Link

Roy Lambert

NLH Associates

Team Elevate Team Elevate

Robert

Unfortunately, at this point, you're beyond my level of knowledge. I've never owned or used the DevEx components (to expensive for a hobbyist) so I have no idea what's going on.

There must be some DevEx & DBISAM users out there who can chip in.

Roy Lambert [Team Elevate]


« Previous PagePage 2 of 4Next Page »
Jump to Page:  1 2 3 4
Image