Thanks all for the detailed explanation. I have leaned many facts from this
post. Apologies could not reply immediately as I was on long leave.

Let me brief what I am trying to do now, based on the behavior pattern ,
each PeopleSoft URL from IE browser opens up 6-7 tcp connections, when we
loaded 100 users through HP loarunner via HAProxy , observed  that the
total TCP ESTABLISHED connections are around 500 to 550 after keep-alive on
.

I have set maxconn 550 in listen block and increased the syn backlog size
in linux kernal as well.when injected around 500 users (around 2500
connections), HAProxy allows 550 connections and rest all getting queued in
kernel.whenever there is a logout from users, connection is released from
queue.

listen  http_proxy
bind <IP>:<PORT>
bind <IP>:<PORT> ssl crt /etc/haproxy/certs/<DNS>.pem
maxconn    550 # Allow maximum 550 concurrent connections - 100 sessions
backlog 100000
#cookie JSESSIONID sss-443-PORTAL prefix
server      server1 <weblogic IP>:<HTTP PORT>

my questions are
-----------------------
1) Is my approach valid to allow maximum 100 users via HAProxy by queuing
rest of the connections in kernel?
2) Observed during queuing that the the inside 100 user transactions are
bit slow for login, navigation etc. but without queuing there is no
response issue for 100 users. I am not sure if kernel queue affects the
response time for established connections ?
3) I suppose, the connections which are in queue will be released upon
first in & first out basis
4) sometimes, when user logout from browser, HAProxy does not immediately
change the TCP connection from ESTABLISHED status, is there anyway to force
the connections to close whenever URL logout is called, so that further
connections from queue can be released.
5) when keep-alive is on in HAProxy, observed that even browser clicks on
website URL starts a persistent TCP connections, is there anyway to keep a
persistent connections only when there is a valid JSESSION ID PS_TOKEN ?
other connections without TOKEN/expired token should be closed forcefully.

for your information, i have installed SSL in HAProxy. You help would be
much appreciated.

Regards,
Vel


Best Wishes,
Vel

On Tue, Jul 4, 2017 at 1:38 PM, Igor Cicimov <ig...@encompasscorporation.com
> wrote:

> On Tue, Jul 4, 2017 at 1:34 PM, Velmurugan Dhakshnamoorthy <
> dvel....@gmail.com> wrote:
>
>> Thanks much for detailed explanation.
>>
>> Once the limit of 100 sessions are reached, note we are talking about *100
>> sessions in Weblogic* and *NOT 100 connections to the backend*, what is
>> the Weblogic server going to do? We need to understand what happens on
>> Weblogic side once the 101st session is accepted. You get error 500
>> straight away or something else happens? Maybe nothing and the request gets
>> dropped after sitting in the Weblogic queue for some time?
>>
>> [Vel] once the limit(100) is reached in weblogic, 101 user will receive
>> error 500, OOM (OutOfMeory) error in weblogic back-end.when there is OOM
>> occurs, even connected users responses will be impacted.
>>
>> Regards,
>> Vel
>>
>>
> ​Well, the biggest issue you have is that number or connections is not the
> same as number of sessions. Lets say you have reached your 100 connections
> limit which corresponds to 100 sessions in WL and one client's browser
> starts closing its connections. For HAP the number of connections will drop
> below 100, lets say to 96, and it is possible that in that moment a new
> user gets connected which will cause WL to create a new 101th session and
> crash. So how are you going to solve this dependency between connections on
> the HAP side and sessions in the WL side?
>
> Another thing is that modern browsers can open up to 6-7 connections to a
> single domain name which potentially leaves you with less than ​20 users
> during the overload period with the limitation of 100 connections in HAP.
> Also depending on the users activity, every time the user is active WL will
> restart the session timer to 20 min, you might end up with less than 20
> users connected for a long long time.
>
>

Reply via email to