You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@roller.apache.org by Trygve Lie <tr...@hotmail.com> on 2006/03/14 18:06:29 UTC
Multi domain support in Roller
Hi
Have you ever considered multi site, or more correctly, multi domain support
in Roller?
Let me try to explain what I put in the expression multi domain support
with an example:
Lets say company FooBar Inc is a multi national company with different
offices in several countries (US, UK and Japan). FooBar Inc want to set up a
blog for there employees in all countries so they can share insight
information and thoughts with the public in an easy way. FooBar Inc is an
open source minded company :-) FooBar Inc has one centralized server farm
where they want to set up this blog software for all countries.
The problem FooBar Inc faces is that each country has different domains
(www.foobar.com, www.foobar.co.uk, and www.foobar.co.jp) and they will also
have different sets of templates for each country. In each country there
will be several employees which has there private blog.
To solve this with Roller today, FooBar Inc must make one installation of
Roller for each country. This will result in one DB instance for each
country and one installation running for each country.
This is not very efficient, especially for the girls and guys maintaining
the day to day server for this purpose and it will be even more complex
since FooBar Inc has the intention to expand to 20 more countries and also
provide the same internet services for these offices.
The perfect solution for FooBar Inc would be if there was some kind of multi
domain support. In other words one extra layer which made it possible to
separate country from country so each country can have there own domain and
there own set of templates (and configuration; like language and what
features in the blog which are turned on and off) but there are still one
installation and one DB instance.
NOTE: Country is here an example. It might be that a company wants to have
one set of intranet blogs, one set of Internet blogs and one set of extranet
blogs which they want to run on the same installation.
Was that understandable?
The reason Im asking are because my company are going to use Roller in an
almost similar situation as this and we are very interested in such kind of
support in Roller.
We do have a couple of developers which we might dedicate to build parts of
such and support and contribute back to the Roller project if this is an
feature the project would like to have.
The first questions we are wondering about are:
- Is the project interested in this?
- If so; what changes must be done to implement such a multi domain support?
- If so; how deep and how complicated will the changes in the structure be?
Kind regards:
Trygve
_________________________________________________________________
MSN Spaces http://spaces.msn.com/?mkt=nb-no Vis hvem du er og hva du vil
Re: Multi domain support in Roller
Posted by David M Johnson <Da...@Sun.COM>.
On Mar 14, 2006, at 12:06 PM, Trygve Lie wrote:
> Let’s say company FooBar Inc is a multi national company with
> different offices in several countries (US, UK and Japan). FooBar
> Inc want to set up a blog for there employees in all countries so
> they can share insight information and thoughts with the public in
> an easy way. FooBar Inc is an open source minded company :-) FooBar
> Inc has one centralized server farm where they want to set up this
> blog software for all countries.
> The problem FooBar Inc faces is that each country has different
> domains (www.foobar.com, www.foobar.co.uk, and www.foobar.co.jp)
> and they will also have different sets of templates for each
> country. In each country there will be several employees which has
> there private blog.
OK, so different "sites" have different sets of blog templates that
are allowed.
And we don't yet have support for private blogs, so we'd have to add
that.
> To solve this with Roller today, FooBar Inc must make one
> installation of Roller for each country. This will result in one DB
> instance for each country and one installation running for each
> country.
> This is not very efficient, especially for the girls and guys
> maintaining the day to day server for this purpose and it will be
> even more complex since FooBar Inc has the intention to expand to
> 20 more countries and also provide the same internet services for
> these offices.
That does sound inconvenient.
> The perfect solution for FooBar Inc would be if there was some kind
> of multi domain support. In other words one extra “layer” which
> made it possible to separate country from country so each country
> can have there own domain and there own set of templates (and
> configuration; like language and what features in the blog which
> are turned on and off) but there are still one installation and one
> DB instance.
>
> NOTE: Country is here an example. It might be that a company wants
> to have one set of intranet blogs, one set of Internet blogs and
> one set of extranet blogs which they want to run on the same
> installation.
>
> Was that understandable?
Yes. It sounds like a very useful feature for anybody who wants to
offer Roller hosting services.
> The reason I’m asking are because my company are going to use
> Roller in an almost similar situation as this and we are very
> interested in such kind of support in Roller.
> We do have a couple of developers which we might dedicate to build
> parts of such and support and contribute back to the Roller project
> if this is an feature the project would like to have.
>
> The first questions we are wondering about are:
> - Is the project interested in this?
It's not yet on the wish list where I work, but it think it's a very
desirable feature.
> - If so; what changes must be done to implement such a multi domain
> support?
Not sure. You could add a new column to every table to specify which
site to which each row belongs. You'd also have to have a way to
partition the themes directory and possibly the Velocity Macro files
themselves since some sites might want to override some of the built
in macros.
> - If so; how deep and how complicated will the changes in the
> structure be?
Not sure. I'm guessing that the changes would be fairly deep, but not
overly complicated.
If you're going to go down this path, it would be best for you to
either get these changes into Roller so that you don't have to fork
away from mainline Roller development.
Here's what I'd recommend:
1 - Analyze the Roller code and figure out how to do this work
2 - Ask questions about Roller architecture here on the list. Step #1
will be easier if you have some expert advice.
3 - Put together a proposal on the Roller wiki that details your plan
so the Roller team can review it and help you to do things "the
Roller way." (Send me a separate email and I'll setup a wiki account
for you).
4a - If the Roller team seems to like your proposal, then develop the
feature and submit a patch. Hopefully one of the Roller team members
will have time and inclination to integrate your changes.
4b - If the Roller team doesn't like your proposal then perhaps there
are still some ways we can help you out -- by making it easier for to
customize Roller without actually forking the code.
- Dave