Beefy Boxes and Bandwidth Generously Provided by pair Networks
XP is just a number
 
PerlMonks  

Re: Multi-language web app

by thedoe (Monk)
on Jan 23, 2006 at 17:18 UTC ( [id://524975]=note: print w/replies, xml ) Need Help??


in reply to Multi-language web app

I would have to say this is one of the best types of examples for MVC architecture programming. By having a view subdirectory for each language, you would be able to look for the correct template file(s) to call based on that user's preference.

I notice, however, that you mention BerkeleyDB. Does this mean that a lot of your site is dynamic content? If so, where does this information come from? Are you trying to translate that content as well, or only the static portions of your page?

By having the majority of the output of your program defined within template files, you could solve most of your problems by only duplicating these. This will save on the mod_perl memory load. However, if your packages are the ones actually outputting the html, perhaps it is time to look at how that is done. After all, this sounds like a large change to your application. What better time to re-examine the structure of your application and see if it truly is still the best for what you are trying to do?

Either way, simply adding PM files for each language does not seem to be the best solution to this problem. As you have already pointed out, the scalability factor just isn't there. Good luck, and I'd be happy to explain any of this in more detail if you like.

Update: I am looking for links to help you out. There was an excellent discussion about what MVC really is about and how to implement it. I would definitely recommend reading through that.

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://524975]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others rifling through the Monastery: (4)
As of 2024-04-24 04:35 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found