Gmail Calendar Documents Web Reader more »
Recently Visited Groups | Help | Sign in
Google Groups Home
Multi-tenancy in GWT
There are currently too many topics in this group that display first. To make this topic appear first, remove this option from another topic.
There was an error processing your request. Please try again.
flag
  8 messages - Collapse all  -  Translate all to Translated (View all originals)
The group you are posting to is a Usenet group. Messages posted to this group will make your email address visible to anyone on the Internet.
Your reply message has not been sent.
Your post was successful
 
From:
To:
Cc:
Followup To:
Add Cc | Add Followup-to | Edit Subject
Subject:
Validation:
For verification purposes please type the characters you see in the picture below or the numbers you hear by clicking the accessibility icon. Listen and type the numbers you hear
 
Kyle Baley  
View profile  
 More options Mar 22, 10:41 am
From: Kyle Baley <kyle.ba...@gmail.com>
Date: Mon, 22 Mar 2010 07:41:08 -0700 (PDT)
Local: Mon, Mar 22 2010 10:41 am
Subject: Multi-tenancy in GWT
I'm new to GWT and the Java world having been in the .NET space for
about 10 years. Our application will be a multi-tenant one (at least,
to the degree that I understand the definition). We'd like customers
to be able to navigate to www.mysite.com/customerName, then log in
from there. I think I have a handle on how to manage this from the GAE
datastore side but am wondering how to manage this URL mapping in
web.xml for GWT.

Also, would like to get some opinions on how to manage the
authentication once it's set up. Here's how I see it working:
- User navigates to www.mysite.com/customerName
- System retrieves company data and stores in session and displays
login page
- User logs in. System authenticates user
- For all RPC calls, system verifies user is logged in *and* checks
that the URL matches the company info in the session

Basically, I want to guard against a user logging into one client
site, then navigating to another.

Thanks
Kyle


    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
dolcraith@gmail.com  
View profile  
 More options Mar 23, 1:01 pm
From: "dolcra...@gmail.com" <dolcra...@gmail.com>
Date: Tue, 23 Mar 2010 10:01:53 -0700 (PDT)
Local: Tues, Mar 23 2010 1:01 pm
Subject: Re: Multi-tenancy in GWT
So you can just built the ui once and always include it in the login
page for which ever client as the server should be where you filter/
prevent access to data that's not for the current client.

On Mar 22, 10:41 am, Kyle Baley <kyle.ba...@gmail.com> wrote:


    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Kyle Baley  
View profile  
 More options Mar 23, 9:24 pm
From: Kyle Baley <kyle.ba...@gmail.com>
Date: Tue, 23 Mar 2010 18:24:41 -0700 (PDT)
Local: Tues, Mar 23 2010 9:24 pm
Subject: Re: Multi-tenancy in GWT
Not sure I understand. I plan to filter data on the server side of
things. But I don't know how to configure GWT to allow me to navigate
to specific client for the entire app.

For example, Acme Hair Salon would navigate to mysite.com/
acmeHairSalon/myapp.html and Generic Dog Collars would navigate to
mysite.com/genericDogCollars/myapp.html. Both URLs should map to the
same instance of the application but in it, I'd check the URL to see
which company was being used and filter all the data in it
accordingly. I know how to do the filtering and can probably figure
out how to check the URL for a company token. But I don't know how to
configure GWT and/or GAE to use a single instance of the application
for multiple (generic) URLs that aren't pre-defined. It sounds to me
like something that should be done in web.xml but again, I don't know
how.

On Mar 23, 1:01 pm, "dolcra...@gmail.com" <dolcra...@gmail.com> wrote:


    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Chad  
View profile  
 More options Mar 23, 10:01 pm
From: Chad <chad...@gmail.com>
Date: Tue, 23 Mar 2010 19:01:13 -0700 (PDT)
Local: Tues, Mar 23 2010 10:01 pm
Subject: Re: Multi-tenancy in GWT
Kyle,

While you *may* be able to do that, the general GWT way would be to
have your urls look more like this:

mysite.com/myapp.html#/acmeHairSalon
mysite.com/myapp.html#/genericDogCollars

And you can easily access the tokens via the History class (the
getToken method).

HTH,
Chad

On Mar 23, 8:24 pm, Kyle Baley <kyle.ba...@gmail.com> wrote:


    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Uros Trebec  
View profile  
 More options Mar 24, 10:54 am
From: Uros Trebec <uros.tre...@gmail.com>
Date: Wed, 24 Mar 2010 07:54:47 -0700 (PDT)
Local: Wed, Mar 24 2010 10:54 am
Subject: Re: Multi-tenancy in GWT
I think the best way to do this is to deploy new instance of client
application for every customer and have one instance of "server"
application that all client applications work with to get their data,
non-client-side business logic, etc.

We're doing it this way when we have different versions of client
application, which tends to change more often than server one. Also
works when you have a development version of client that you need to
test with the same server backend.

Regards,
Uros

On Mar 24, 2:24 am, Kyle Baley <kyle.ba...@gmail.com> wrote:


    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Kyle Baley  
View profile  
 More options Mar 25, 10:15 am
From: Kyle Baley <kyle.ba...@gmail.com>
Date: Thu, 25 Mar 2010 07:15:03 -0700 (PDT)
Local: Thurs, Mar 25 2010 10:15 am
Subject: Re: Multi-tenancy in GWT
Is that possible with GAE?

In any case, I found something that works. I created a JSP page and
dumped the contents of the MyApp.html into it. Then added the
following to my web.xml:

        <servlet>
                <servlet-name>test</servlet-name>
                <jsp-file>/MyApp.jsp</jsp-file>
        </servlet>

        <servlet-mapping>
                <servlet-name>test</servlet-name>
                <url-pattern>/myApp/clients/*</url-pattern>
        </servlet-mapping>

I added /clients in there for now because we're using gwt-dispatch and
I haven't overridden its default of submitting things to /myApp/
dispatch.

Still some kinks to work out (like resource references) but early
results are encouraging.

On Mar 24, 10:54 am, Uros Trebec <uros.tre...@gmail.com> wrote:


    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Muz  
View profile  
 More options Apr 13, 11:53 am
From: Muz <murray.bo...@gmail.com>
Date: Tue, 13 Apr 2010 08:53:28 -0700 (PDT)
Local: Tues, Apr 13 2010 11:53 am
Subject: Re: Multi-tenancy in GWT
Kyle, I built a similar architecture, but with only one instance of
the app serving all users. When a user authenticates, I look them up
in a global store to figure out which tenant they belong to, and then
use their tenant-specific database for all data persistence for the
session. So all visitors use one instance of the app but each tenant
has their own isolated database...multi-tenancy.

The problem is, true multi-tenancy isn't supported by GAE...they've
been talking about it for almost 2 years now, but it doesn't seem to
be a priority for them. They want you to use a different domain for
every tenant, which means multiple app instances (multiple versions of
your app to deploy & maintain). It also means your customer/tenant has
to be in the loop for all domain administration tasks, which to me
kind of defeats the purpose of customer-focused cloud computing.

I set my multi-tenant app up on Amazon EC2, using 1 tomcat server and
6 mysql databases (6 tenants...each tenant has on average 10 users).
The beauty is if I need to scale or load balance the app, add more
tenants/database instances or just backup one tenant's data, this is
pretty much just a mouse-click or 6 in the EC2 developer console.

Murray

On Mar 25, 8:15 am, Kyle Baley <kyle.ba...@gmail.com> wrote:


    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Sripathi Krishnan  
View profile  
 More options Apr 13, 1:24 pm
From: Sripathi Krishnan <sripathikrish...@gmail.com>
Date: Tue, 13 Apr 2010 22:54:56 +0530
Local: Tues, Apr 13 2010 1:24 pm
Subject: Re: Multi-tenancy in GWT

That is the best way to move forward. Since its unlikely that one client
will access the website for another, you don't want the /#customer-name kind
of urls. Also, in future, if you want to support a separate domain for each
client, it would be easily doable.

-Sri
http://blog.530geeks.com

On 13 April 2010 21:23, Muz <murray.bo...@gmail.com> wrote:


    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
End of messages
« Back to Discussions « Newer topic     Older topic »

Create a group - Google Groups - Google Home - Terms of Service - Privacy Policy
©2010 Google