Hello, AFAIK apache webserver load balancer it's a balancer only for HTTP requests. Ignite thin client protocol it's not a HTTP based protocol. Moreover, it's async (you can send several requests on the same channel before receiving the first response) and it's stateful (for example, if you start query on one node you can't get the next page for this query on another node). Webserver load balancer can't be used here.
Ignite thin client on startup select's random server to connect from available addresses. So, there is already some kind of load balancer on per-client level (but not per-request). Also, the "partition awareness" feature (disabled by default) allows to connect to several nodes at the same time and send some types of requests to the affinity node. пн, 6 апр. 2020 г. в 03:33, kay <[email protected]>: > Hi, > > I'm using Apache Webserver for loadbalancer. > > I got this access log at binding port. > > > > > - myIp(xx.xx.xx.xxx) [06/Apr/2020:09:00:50 +0900] 13000 "-" 408 - 12 0 - - > > > > > I think it was a timeout. > > Here is my httpd.conf set. > > > > > <Proxy balancer://cache-cluster> > BalancerMember "http://IP:PORT" loadfactor=1 hcpasses=3 > hcfails=3 > hcmethod=GET hcinterval=5 > BalancerMember "http://IP:PORT" loadfactor=1 hcpasses=3 > hcfails=3 > hcmethod=GET hcinterval=5 > ProxySet lbmethod=byrequests > </Proxy> > > <VirtualHost *:13000> > ProxyRequests Off > ProxyPreserveHost On > > ProxyPass "/" "balancer://cache-cluster/" > ProxyPassReverse "/" "balancer://cache-cluster/" > </VirtualHost> > > > > > > > > and this is a stacktrace for connection > > Exception in thread "main" > org.apache.ignite.client.ClientConnectionException: Ignite cluster is > unavailable [sock=Socket[addr=intdev01/IP,port=13000,localport=50216]] > at > > org.apache.ignite.internal.client.thin.TcpClientChannel.handleIOError(TcpClientChannel.java:499) > at > > org.apache.ignite.internal.client.thin.TcpClientChannel.handleIOError(TcpClientChannel.java:491) > at > > org.apache.ignite.internal.client.thin.TcpClientChannel.access$100(TcpClientChannel.java:92) > at > > org.apache.ignite.internal.client.thin.TcpClientChannel$ByteCountingDataInput.read(TcpClientChannel.java:542) > at > > org.apache.ignite.internal.client.thin.TcpClientChannel$ByteCountingDataInput.readInt(TcpClientChannel.java:572) > at > > org.apache.ignite.internal.client.thin.TcpClientChannel.handshakeRes(TcpClientChannel.java:428) > at > > org.apache.ignite.internal.client.thin.TcpClientChannel.handshake(TcpClientChannel.java:401) > at > > org.apache.ignite.internal.client.thin.TcpClientChannel.<init>(TcpClientChannel.java:153) > at > > org.apache.ignite.internal.client.thin.ReliableChannel$ClientChannelHolder.getOrCreateChannel(ReliableChannel.java:450) > at > > org.apache.ignite.internal.client.thin.ReliableChannel$ClientChannelHolder.getOrCreateChannel(ReliableChannel.java:439) > at > > org.apache.ignite.internal.client.thin.ReliableChannel$ClientChannelHolder.access$100(ReliableChannel.java:395) > at > > org.apache.ignite.internal.client.thin.ReliableChannel.<init>(ReliableChannel.java:120) > at > > org.apache.ignite.internal.client.thin.TcpIgniteClient.<init>(TcpIgniteClient.java:99) > at > > org.apache.ignite.internal.client.thin.TcpIgniteClient.<init>(TcpIgniteClient.java:81) > at > > org.apache.ignite.internal.client.thin.TcpIgniteClient.start(TcpIgniteClient.java:208) > at org.apache.ignite.Ignition.startClient(Ignition.java:581) > at sfmi.framework.nexus.app.Application.main(Application.java:51) > > > > > > > > Is is right to use loadbalancer to access Ignite server?? > > > > > Thank you > > > > > -- > Sent from: http://apache-ignite-users.70518.x6.nabble.com/ >
