[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Gnump3d-devel] Backend Database
From: |
root |
Subject: |
[Gnump3d-devel] Backend Database |
Date: |
12 Nov 2006 08:54:21 -0000 |
In the archive there is a message from back in 2004 where someone was
suggesting a database backend. Steve raised some valid concerns about why he
did not want to use it. However it may be time to reconsider it. I personally
have over 30,000+ titles in my library and gnump3d can get pretty slow, like 45
seconds to load a page and a dual processor machine with 4-GBytes of memory
(there is a normal baseline load on the server).
In the 2004 discussion they talked about the cache system that is currently
being used or dumping it entirely and going to a database. They discussed a
number of issues such as sync, requiring people to have a database on the
system, older machines would not be able to run gnump3d etc..
I have two suggestions and would love to hear from other people.
Suggestion 1: Have support for an optional database. However, if the user did
not want to use the database he could default to the current cache system.
This would resolve all the limitations that would be imposed by forcing the
user to use a database.
Suggestion 2: Another option is to convert everything over to a database system
but allow the user to use a flat file as a database. DBI supports this. This
would allow the code to have a single interface using the DBI module. The
issue of how to support all the databases then becomes a trivial task of
setting up various DBI->connect strings for the different databases. It also
solves the issues regarding sync between the cache and database (as there is no
cache). Also the issues related to requiring people to have a database are no
longer valid as a system requirements for using a flat file database does not
require any software to be installed other then the standard Perl DBI.
Personally, I think #2 is a much better suggestion. What are your thoughts?
Cheers
John Peach
- [Gnump3d-devel] Backend Database,
root <=