Running Slow

A place for users and developers of the Xataface to discuss and receive support.

Running Slow

Postby r0n22 » Sat Jan 17, 2009 5:19 pm

Hey guys,

This is some amazing software. I was running xataface 7.1 and web auction on a WAMP server. It would take on average 17 seconds to load any page within the website. From that I have changed to XAMPP which cut about 12 seconds off of that time then I also upgraded to latest verson 1.1.1 and now the load time is still about 3-4 seconds.

The weird thing is that the custom actions which load in around .5 seconds .

Anything that i can do further to optimize this. it is runnign on a 2.8 p4 with 512 mb of ram and xp Pro.

I heard about a caching function in xataface is this true?

also how backwards compatable is the lastest verson or should i rever back to 7.1?

Regards,
Cam
r0n22
 
Posts: 1
Joined: Sat Jan 17, 2009 5:03 pm

Postby shannah » Sun Jan 18, 2009 9:53 am

I run Xataface on a number of servers, some shared hosts, some dedicated. The load time depends greatly on a number of factors, mostly to do with the size of the tables and valuelists that you are running with.

Generally my load time is between 0.2 seconds and 0.8 seconds, for a table with 10,000 records, showing 30 records per page.

The output cache should significantly increase your performance. But if you're getting such slow load times, it might be advisable to look elsewhere to improve performance before resorting to the output cache.

The output cache can be enabled by adding the following section to your conf.ini file:

Code: Select all
[_output_cache]
   enabled=1


It will automatically refresh when records in any table in use in a particular request is updated. However changes to the source code (e.g. INI files) won't automatically register a change, so you would have to manually clear the cache. The cache creates a table in your database called __output_cache. Emptying or deleting this table, effectively clears the cache.


One thing that is known to cause slow response is if you are running it on a very large View, since it can be quite slow to calculate the number of records in the view.

A few general steps that you can take that will also drastically increase performance is:

1. Create indexes on any column that you might be searching, sorting, or joining on.

2. Experiment with your valuelists to see if they are affecting your performance.. E.g. try deleting all of the valuelists, or making them just empty and see if that makes a difference in your performance.. then refine from there. One current implementation that I'm not happy with and will be changed soon is the fact that valuelists are loaded every request whether or not they are used. In any case try not to have valuelists that are too big, because they are loaded in their entirety every request (that uses their table).

3. Make sure that you aren't doing any heavy lifting in your frequently called delegate class functions such as getPermissions, xxx___display(), etc.. You should not be making any database calls in these functions because they are called so frequently. There are many clever ways around this by way of caching and others, but this would drastically decrease your performance.

-Steve
shannah
 
Posts: 4457
Joined: Wed Dec 31, 1969 5:00 pm


Return to Xataface Users

Who is online

Users browsing this forum: No registered users and 26 guests

cron
Powered by Dataface
© 2005-2007 Steve Hannah All rights reserved