On Mon, Dec 09, 2002 at 10:48:24AM -0800, Jonathan Walther wrote:
So, whether Wikipedia ever uses it or not, I am doing this. But I want to ensure that we COULD host the Wikipedia on it. And because it is written in C as a custom Apache module, with Postgres backend, I will be able to make it very fast and efficient.
C won't help any, database is the bottleneck, not PHP script.
If we switch to Postgres, to get the benefits of Postgres we must do a redesign of the table schema, at least. Did anyone notice that Postgres is now fully SQL92 compliant? And a redesign of table schema means we can design it so that generating a regular wiki page only involves ONE query, instead of the current TWELVE. A long term redesign of the software could definately be beneficial.
We have done it twice, without much benefit. I'm all for evolutionary way.
The better we design the future Wikipedia software, the easier it will be to write, maintain, and extend.
In the process of the redesign, we hope to make it so that current issues with the Wiki software are natural and easy to solve. Join in if you like.
Most important current issues are: * poor markup * no media independence * 15-or-so-pass parser instead of good hierarchical LALR parser * slow database * poor mirroring ability * no dedicated offline client
I'm currently working on first two (well, three).
Rewriting it in C won't help with any of these issues.
Moving current script to Postgres is easy modulo FULLTEXT index. Better think what to do with that one.
Oh, and think how to you implement database mirroring, as this is what lost most after move from filesystem database (rsync) to MySQL.