Hey everybody,
i was just checking the new features in 1.2.x and noticed how
internationalization was implemented. I was wondering how reading from
file behaves? Isn't loading a file that sometimes might be really big
at every page access slow? Is there any caching (maybe using shared
memory)?

I usually keep my translations in database.  This allows me several
things:
- create a cms for translations (the usual case is that a site-builder
won't handle the translation, but the client will, and a nice cms is
always appreciated)
- organize the words/phrases in categories and add meta data like the
date of last change, which adds flexibility (you don't have to scroll
1000 not ordered words to find one, and maybe add tracking and
rollback for donkey clients - belive me there are many)
- speed things up significantly with a little trick: create a mirror
table for translations (of type MEMORY) that will contain all the
words/phrases in the normal table and will be used for queries.
Because MEMORY type tables only handle fixed length columns, i
fragment the words in peaces of fixed length (let's say 32char), but
my benchmarks showed me that even with the reconstruction of the
fragments, on heavily loaded sites, this is way way faster than normal
reads from db or file. To keep database integrity and not loose it in
case the server crashes cms makes modifications on both tables. But
this doesn't affect anything because 99.999% of the operations on this
table will be read.

I know that we want to add flexibility but when using databases
(especially mysql), the advantages are not little and i think we
should consider an internationalization system with db support.

What do you think?
Thanks, Cristian


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "Cake 
PHP" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/cake-php?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to