question

野愛 小. avatar image
野愛 小. asked ·

Why is the sticky session required? (Dynatrace Managed with clustered proxy)

Hi,

According to document, the sticky session is required for the communication between Dynatrace Managed Cluster and Mission Control.

but the proxy must allow web sockets and, if the proxy is clustered, it must provide sticky sessions for web socket communication. https://www.dynatrace.com/support/help/installati...

Could you tell us why the proxy must provide the sticky session for web socket communication if the proxy is clustered?

Best Regards,
Noah Kobayashi

Dynatrace Managedmission control
10 |2000000 characters needed characters left characters exceeded

Up to 10 attachments (including images) can be used with a maximum of 50.0 MiB each and 250.0 MiB total.

Franz S. avatar image
Franz S. answered ·

Hi Noah,

I'm not sure that the documentation is up-to-date here. Dynatrace uses a nginx to manage sticky sessions.

https://www.dynatrace.com/news/blog/session-sticki... (this feature has been GA since 138)

best regards
Franz

1 comment Share
10 |2000000 characters needed characters left characters exceeded

Up to 10 attachments (including images) can be used with a maximum of 50.0 MiB each and 250.0 MiB total.

Hi Franz,

I checked the article. But it seems that the article says the connection between Web UI and Dynatrace Managed Cluster. My question is about the communication between Dynatrace Managed Cluster and Mission Control.

Or, it is needed the same requirement for the communication of Web UI and Mission Control?

Best Regards,
Noah Kobayashi

0 Likes 0 · ·
Babar Q. avatar image
Babar Q. answered ·

Hello Noah,

Below information taken from the internet where sticky session for web socket communications explained.

  • A websocket is an open tcp connection where server or client can send/receive data at any time. The connection is open all time, there is no need to reconnect to a server unless the connection is lost.
  • If a connection is lost, the load balancer would have to implement load balancing at the tcp layer. This is because the websocket protocol does not have metadata (In http and xhr, there are headers send in each request and response). However, websocket connections can be negotiated using http upgrade negotiation.
  • As a result, http specific headers for websockets can be send over http in order to establish a connection, and of course normal http headers and cookies.
  • If a connection is lost, the http upgrade negotiation happens between the load balancer and the browser. The load balancer can therefore use a sticky session cookie in order to send the connection to the correct server.

Regards,

Babar

Share
10 |2000000 characters needed characters left characters exceeded

Up to 10 attachments (including images) can be used with a maximum of 50.0 MiB each and 250.0 MiB total.

Space Topics

mobile monitoring dotnet synthetic monitoring reports iis chat kubernetes servicenow amazon web services mysql mainframe rest api errors cassandra dashboard oneagent sdk cmc application monitoring openkit smartscape request attributes monitoring developer community user tagging log monitoring services ufo syntheticadvisory activegate ip addresses auto-detection high five award oracle hyperion webserver uem usql iib test automation license web performance monitoring ios news migration management zones index ibm mq web services custom event alerts notifications sso host monitoring knowledge sharing reports browser monitors java hybris sap vmware maintenance window user action naming javascript appmon ai synthetic classic availability tipstricks automation extensions diagnostic tools session replay permissions davis assistant faq documentation problem detection http monitors server easytravel apdex aws-quickstart network docker tags and metadata cloud foundry google cloud platform synthetic monitoring process groups account usability dynatrace saas gui paas openshift key user actions administration user actions postgresql synthetic locations oneagent security Dynatrace Managed user management custom python technologies mongodb openstack user session monitoring continuous delivery citrix configuration alerting NGINX action naming linux nam installation masking error reporting database mission control jmeter recorder apache mobileapp RUM php threshold azure purepath davis scripting agent aix nodejs android