cancel
Showing results for 
Search instead for 
Did you mean: 

should we use UDP protocol for Hybris cluster ?

0 Kudos

We are using UDP protocol in our project And sometime model does not get updated value when the same request is served by the multiple cluster node.

rohit31_raj92
Active Participant
0 Kudos

Hi

UDP is generally recommended because of performance. Although UDP network communication is generally less reliable, most e-commerce systems do not require the level of reliability of this network communication and will accept this tradeoff over the increased performance of UDP. If the reliability of the cluster communication is a concern or if IP multicast is not enabled on the network, TCP should be used.

Do refer to links , may be this helps you https://wiki.hybris.com/display/hybrisALF/Cluster+Setup

Former Member
0 Kudos

Can one still use UDP and just send out more packets? Or can one use TCP and have Hybris constantly keep open connections to improve the performance of TCP?

Or is it just either\or - one packet - over either UDP or TCP.

rohit31_raj92
Active Participant
0 Kudos

I guess, UDP can be used in current Hybris versions also but there are limitations of UDP .We should use it if our application handles reliability issues or if we can be sure that our data can arrive safely at the destination

Accepted Solutions (0)

Answers (2)

Answers (2)

0 Kudos

Thanks all for your answer . I would like to ask one more question here Can we tweak this xml file jgroups-udp.xml ? as we can see sometimes messages does not get dropped but also cache does not refresh on the other node. If I change the thread pool configuration thread_pool.keep_alive_time="5000" to 1000 will do impact the performance of business process ?

former_member620692
Active Contributor
0 Kudos

You should not do it. Instead, you should create a custom.xml update the property as follows:

 cluster.broadcast.method.jgroups.configuration=custom.xml

More details at https://help.sap.com/viewer/d0224eca81e249cb821f2cdf45a82ace/1905/en-US/fa88b75d31494e6ebe01e0837629...

former_member620692
Active Contributor
0 Kudos

UDP is not reliable. Moreover, it is not supported by the Amazon Elastic Compute Cloud (Amazon EC2). Please check https://help.sap.com/viewer/d0224eca81e249cb821f2cdf45a82ace/1905/en-US/8c74877b866910148cc9ba5f39a2... for comparison. So, if you want a reliable data transfer mechanism, switch to JGroups TCP. The default configuration for JGroups is UDP. You can also check https://help.sap.com/viewer/d0224eca81e249cb821f2cdf45a82ace/1905/en-US/fa88b75d31494e6ebe01e0837629... for more information.

Former Member
0 Kudos

Thanks Arvind - some good reading. I would love to hear over people's experience with UDP on AWS.

AWS VPC doesn't seem to support multicast or broadcast as per the AWS VPC FAQ: https://aws.amazon.com/vpc/faqs/

I guess the other thing one can do, irregardless of whether one uses UDP or TCP, is to make sure that the EC2 instances form part of a placement group: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/placement-groups.html

former_member620692
Active Contributor
0 Kudos

You are most welcome, Serdyn.