Tharindu Patikirikorala wrote:
> Hi All,
>
>
> I am doing a case study to make tomcat to host multi-tented web
> applications. i.e., a single web application/service container is serving
> logically partitioned customers. For the basic implementation (let’s say
> number of customers/tenant are 2) I want to make following modifications.
>
> 1) Identify the tenant
on the base of what ?
and implementing a request/connection queues
> for each tenant. Then queue will have ‘acceptcount’ which reject the system
> to avoid severe overloads.
>
> 2) The worker threads have to be allocated to serve these requests
> based on a new scheduling. Two queues will be processed by this scheduler
> based on a priority scheme.
>
> After looking at the code, currently a single connection queue
> (ServerSocket.listen(backlog)) is used which is not aware about the tenants
> request. However, for the implementation we need another level of queuing
> which will reject the requests based on the tenant.
>
> Please suggest a way to implement such a scheme.
>
Unless this is a purely academic exercise and you insist in doing it "in Tomcat", my
feeling is that this kind of scheme would be much better implemented at the level of a
front-end, which could conditionnally forward requests to one or more Tomcat
instances/ports/applications, based on whatever discrimination factors you choose to
implement.
In other words, why re-invent the wheel ?
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org
|