Can you point me to the file(s) that does this?
Reducing the load from the manual pages is next on our hitlist :)
See navigationBar() in /include/shared-manual.inc
See the code in /docs.php which checks for available languages and
See language_choose_code() in /include/langchooser.inc
This will only work correctly of course, if the mirror has all the languages rsynced, as otherwise file_exists() and your file check would not result in the same thing!
Goba
ATM, the database maps lang+keyword => relative URL for the manual page,
so the language switch stuff can be implemented using quite simply by
querying for languages that match the relevant page.
--Wez.
On Wed, 14 May 2003, Gabor Hojtsy wrote:
The manual function lookup code was creating quite a lot of load on
www.php.net due to a large number of stat() syscalls.
To alleviate this problem, we've put in place an SQLite database to cache
the directory structure of the manual pages. This, combined with some
other tweaks to that machine has helped reduce the load to sane levels.
SQLite [1] is an embedded SQL database implementation that has very high
performance for applications with low write concurrency, making it ideal
for our particular problem.
Well this sounds great. It would be nice to have more mirrors adopting
this stuff. Then we would be able to move other things to this DB also.
This thing will probably be ideal to use for language switch listings
(which also make stats calls for every language on every manual page to
make the switch dropdown available for that particular page). And it
would also be cool for docs.php which also stats the files. Using the
same database we already have.
Goba