# HAProxy loadbalancing for SOAP interface

**URL:** https://discourse.haproxy.org/t/haproxy-loadbalancing-for-soap-interface/577
**Category:** Help!
**Created:** [August 18, 2016, 4:56pm UTC](https://discourse.haproxy.org/t/haproxy-loadbalancing-for-soap-interface/577 "2016-08-18T16:56:38Z")
**Posts on this page:** 4
**Page:** 1

<div class="post-metadata">

### Author: ![fzhang](https://avatars.discourse-cdn.com/v4/letter/f/ed8c4c/32.png) [@fzhang](https://discourse.haproxy.org/u/fzhang)
#### Post date: [August 18, 2016, 4:56pm UTC](https://discourse.haproxy.org/t/haproxy-loadbalancing-for-soap-interface/577/1 "2016-08-18T16:56:38Z")

</div>

Hello everyone,

I try to using HAproxy do the Load balancing for SOAP interface, the haproxy configuration like this:

```
frontend ft_DMC_L7_HTTP_50403
    bind haproxy-lh:50403
    mode http
    log global
    option httplog
    timeout client 900s
    maxconn 2000
    acl allowed_dmc_uris url_reg -i ^/(dmc)
    acl allowed_ADDWeb_uris url_reg -i ^/(ADDWeb/)
    http-request deny unless allowed_dmc_uris or allowed_ADDWeb_uris
    use_backend bk_DMC_L7_HTTP_50403_ADDWeb if allowed_ADDWeb_uris
    default_backend bk_DMC_L7_HTTP_50403

backend bk_DMC_L7_HTTP_50403
    balance roundrobin
    mode http
    log global
    option httplog
    option forwardfor except 127.0.0.1/8
    cookie JSESSIONID prefix nocache
    default-server inter 3s rise 2 fall 3 slowstart 0
    option httpchk HEAD / HTTP/1.0 # Advanced http check
    timeout server 120s # Server inactivity timeout
    server SRV01 SRV01:50400 maxconn 2000 weight 10 cookie E1 check
    server SRV02 SRV02:50400 maxconn 2000 weight 10 cookie E2 check

backend bk_DMC_L7_HTTP_50403_ADDWeb
        balance roundrobin
        mode http
        log global
        option httplog
        timeout server 25s
        timeout connect 10s
        server SRV01 SRV01:50400 maxconn 2000 weight 10 check
        server SRV02 SRV02:50400 maxconn 2000 weight 10 check

```

But the result is client didn’t get soap response, tcpdump capture display “TCP ACKed unseen segment”.  
6 0.622194 10.200.99.5 10.200.101.248 HTTP/XML 760 POST /ADDWeb/services/SetSubscriberDetails HTTP/1.1  
7 0.659787 10.200.101.248 10.200.99.5 TCP 54 [TCP ACKed unseen segment] 50403→35061 [ACK] Seq=17652722 Ack=1129711 Win=7296 Len=0  
8 1.136932 10.200.101.248 10.200.99.5 HTTP/XML 589 [TCP ACKed unseen segment] HTTP/1.1 200 OK

Kindly help me for this issue.

---

<div class="post-metadata">

### Author: ![lukastribus](https://avatars.discourse-cdn.com/v4/letter/l/7ea924/32.png) [@lukastribus](https://discourse.haproxy.org/u/lukastribus)
#### Post date: [August 19, 2016, 8:27am UTC](https://discourse.haproxy.org/t/haproxy-loadbalancing-for-soap-interface/577/2 "2016-08-19T08:27:31Z")

</div>

> [@fzhang](#):
>
> But the result is client didn’t get soap response, tcpdump capture display “TCP ACKed unseen segment”.

More importantly the tcpdump shows “HTTP/1.1 200 OK” which means a positive HTTP response is send towards the client. So there doesn’t seem to be any problem.

Will need full pcap captures to investigate further.

---

<div class="post-metadata">

### Author: ![fzhang](https://avatars.discourse-cdn.com/v4/letter/f/ed8c4c/32.png) [@fzhang](https://discourse.haproxy.org/u/fzhang)
#### Post date: [August 19, 2016, 9:01am UTC](https://discourse.haproxy.org/t/haproxy-loadbalancing-for-soap-interface/577/3 "2016-08-19T09:01:02Z")

</div>

Hi Lukas,

Thanks for your reply,  
I have uploaded soap.cap file in the [https://cloud.sicap.com/index.php/s/wq7UQAv1RvYDddK](https://cloud.sicap.com/index.php/s/wq7UQAv1RvYDddK)

Best Regards,  
Frank

---

<div class="post-metadata">

### Author: ![lukastribus](https://avatars.discourse-cdn.com/v4/letter/l/7ea924/32.png) [@lukastribus](https://discourse.haproxy.org/u/lukastribus)
#### Post date: [August 19, 2016, 9:24am UTC](https://discourse.haproxy.org/t/haproxy-loadbalancing-for-soap-interface/577/4 "2016-08-19T09:24:42Z")

</div>

Not sure what happens here. The answer is there, but it seems the TCP connection is messed up. Does the request actually fail on the application level? If yes, with a timeout?

How exactly did you take this capture? On the haproxy box, or on the client? Are there any TCP intercepting middleboxes between the client and the server?

Can you exclude a client problem?
