I've added an Feed on the Zen-trolley store, PHP 5.2, apache2. The shop has some 25.000 items using their title, description, cost, image, etc.
The RSS is saved inside a cache to prevent running the query each time, but even so the server slows lower once the RSS is retrieved, sometimes obtaining a blank page since the max-execution-time is exceeded (I've already set 220 seconds).
Can there be in whatever way of better coping with large Nourishes? I possibly could always split it in two or three feeds, however, many partners need a single feed hyperlink to retrieve all of the items all at once.
You can set a cron to create the Feed towards the filesystem every 5, 10, .... minutes. By doing this, the file has already been prepared and merely must be opened up rather than processed each time it's hit.
Unlikely you likely to alter the feed through your day.
So just by cache is not adequate enough, cache it as being static file, update it via crontab daily.
AddOutputFilterByType DEFLATE application/rss+xml
Essentially, shouldn't add the php layer for serving the RSS request
There's pointless serving personal files from cache should take any significant server time. Something is wrong together with your caching. Or possibly you are seeing the timeouts once the cache is stale, by which situation you will need to keep the cache fresh via scheduled refreshes to ensure that clients don't hit a stale cache, ever.
Worst situation, cache it to the filesystem and let Apache serve it as being a static page. Should you follow this path, make certain to create the brand new version to some temporary after which relabel it directly into place (you won't want to serve partial content). On POSIX (Unix-like) systems, relabel on a single partition to exchange personal files is atomic.
Ideally, for those who have full charge of the webserver, this is an ideal time for you to use MEMCACHE...
It appears to become more a memory problem. Even it's not calculated, whenever you retrieve it in the cache, it's saved inside a varibale, also it takes lots of memory.
Write a static file or boost the memory of the server.