cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
Showing results for 
Search instead for 
Did you mean: 

We are happy to announce the new Windchill Customization board! Learn more.

In a clustered environment, user requests are handled by method servers. How did the request get routed to the Method server in the first place?

gramasamy
1-Newbie

In a clustered environment, user requests are handled by method servers. How did the request get routed to the Method server in the first place?

In a clustered environment, user requests are handled by method servers. How did the request get routed to the Method server in the first place?

When an end user tries to access Windchill, where do these requests go first?

How does get re-routed to method servers?

1 ACCEPTED SOLUTION

Accepted Solutions

Adding to what Dipak Chopade said, the routing depends on type of load balancing you have in place. Options available are

  1. HTTP Based Load Balacing
  2. mod_jk based load balancing (if use use Apache as a load balancer between multiple hosts)

For HTTP based load balancing, the load balancer just acts as a proxy and traffic manager. It receives http connections and route it to apache web server present in each of the nodes. It can also help in

  • Heartbeat check through health check URLs to ensure that it routes to a node which is active
  • Network traffic based load balancing ensuring the load is evenly distributed between nodes
  • HTTPS offloading - if you are using SSL
  • and so on

Selection of host to route the first connection request from a client is made by the loadbalancer based on the kind of load balancing algorithm, (predictive, fastest , dynamic round robin and so on).Apache front end on each of the nodes performs a mod_jk based routing to method servers present in each node (if you have multiple method servers in each of the slave nodes).  Session affinity should be enabled on load balancer to ensure that the first to last transactions from a particular browser session is routed to the same host. Apache in each node makes use of jsessionid to make sure that the transaction reaches the right method server.

mod_jk based load balancing uses the same logic which Apache uses to route request to method servers in a host that has multiple method servers. Apache is commonly used as mod_jk load balancer to route request to embedded  tomcats in each of the method servers in slave nodes. I have not seen any production installation with this configuration. More details can be found in https://support.ptc.com/appserver/cs/view/solution.jsp?n=CS40808

mod_jk_load_balancing.png

Thank you

Binesh Kumar

View solution in original post

3 REPLIES 3

Hi Ganesh,

All the user request are processed by methodservers in monolithic as well as Cluster environment.In cluster environment, you can use a hardware load balancer or software load balancer to route the user request to different slave nodes in cluster. That request will be processed on that particular slave node in same way as in monolithic Windchill Server.

User request will come to Load balancer --> Loadbalancer route it to slave node --> Apache on that slave node authenticate user --> Apache send the request to Servlate engine through AJPworkers --> Methodserver process the user request.

regards,

Dipak

Adding to what Dipak Chopade said, the routing depends on type of load balancing you have in place. Options available are

  1. HTTP Based Load Balacing
  2. mod_jk based load balancing (if use use Apache as a load balancer between multiple hosts)

For HTTP based load balancing, the load balancer just acts as a proxy and traffic manager. It receives http connections and route it to apache web server present in each of the nodes. It can also help in

  • Heartbeat check through health check URLs to ensure that it routes to a node which is active
  • Network traffic based load balancing ensuring the load is evenly distributed between nodes
  • HTTPS offloading - if you are using SSL
  • and so on

Selection of host to route the first connection request from a client is made by the loadbalancer based on the kind of load balancing algorithm, (predictive, fastest , dynamic round robin and so on).Apache front end on each of the nodes performs a mod_jk based routing to method servers present in each node (if you have multiple method servers in each of the slave nodes).  Session affinity should be enabled on load balancer to ensure that the first to last transactions from a particular browser session is routed to the same host. Apache in each node makes use of jsessionid to make sure that the transaction reaches the right method server.

mod_jk based load balancing uses the same logic which Apache uses to route request to method servers in a host that has multiple method servers. Apache is commonly used as mod_jk load balancer to route request to embedded  tomcats in each of the method servers in slave nodes. I have not seen any production installation with this configuration. More details can be found in https://support.ptc.com/appserver/cs/view/solution.jsp?n=CS40808

mod_jk_load_balancing.png

Thank you

Binesh Kumar

Thanks Dipak and Binesh for your answers.

Really appreciate that you guys could spend some time in answering my questions

Top Tags