[Silva-general] sharding & multi-lingual site - any advice?

Kit BLAKE kitblake at infrae.com
Wed Dec 9 18:59:38 CET 2009

On 29 Nov 2009, at 12:23, bdsilva at knowledgeworks.plus.com wrote:
> In the first instance my site will be in English, but I would also  
> like to
> provide the content secondarily in Spanish and Portuguese, and  
> possibly
> even in Chinese and Japanese further down the line.

Silva is true unicode, so you can paste any characters into a doc.

> Apart from using the core Silva features, I also will be using  
> SilvaForum,
> SilvaPoll, rss/email subscriptions, and SilvaNewsNetwork.  The
> SilvaDocuments will be making use of the FlashCodeSource component.
> I plan to use language as a basis for "sharding".  Thus there would be
> english.site.com, espanol.site.com, etc. By doing this I hope to be  
> able
> to exploit caching, such that each server's cache only has to house  
> the
> content relevant to that subset of users. Furthermore, by only  
> sharing a
> user directory I can isolate that directory as the single point of  
> failure
> (i.e. if english.site.com was to go down, the users on  
> espanol.site.com
> could continue to use it).

AFAIK sharding is not a concept that can be applied to object  
databases. Have a look at ZEO (Zope Enterprise Objects) for high-load  

> The site will be serving up large amounts of Flash video amongst other
> content.  The Flash video is likely to be housed outside of Silva  
> (e.g. on
> a flash media server).
> Given my idea about isolating users to particular servers to benefit  
> the
> most from caching, should I really just be maintaining multiple
> independent
> Silva installations?  Or is there something in Silva that I'm  
> missing that
> would enable me manage all this as one site?

Many large Silva installations host separate sites in one Silva, using  
virtual hosts in combination with Apache rewrite rules to make  
different urls available (english.site.com, espanol.site.com, etc).  
There's a ZEO cluster in Zurich that currently has 430 websites in  
such a setup.

> It would be great (for example) if the ghost folders/documents could
> provide a way for me to manage the translation of content from one
> language to another.

Ghost folders aren't for duplicating and then modifying content. You  
should just copy the 'original' folder, paste it, then translate.

> But I imagine that having all the content inside one
> Silva instance would make the caching & sharding harder.

The caching will be external to Silva, with Squid, Apache, or Varnish,  
and is keyed to the url.

> Some of the features and content will only be available to  
> authenticated
> users.

You can easily setup access restrictions, see the access screen of the  
container (or doc) you want to restrict.


Kit BLAKE · Infrae · http://infrae.com/ + 31 10 243 7051

More information about the silva-general mailing list