HTTP负载均衡软件(激流)的进展 2

    技术2022-05-19  39

    用apache的HttpClient做了http的代理

    获取到响应后,将HttpClient的HttpResponse转换成netty的HttpResponse,

    将这个response写到channel,然后在pipeline里添加HttpResponseDecoder即可

     

    HttpClient和Netty的http codec中有很多重名的类,写起来比较麻烦,所以在转换时

    用的都是类的全名。

     

    然后简单测试了一下。局域网,100M带宽。后端是用squid搭建的缓存服务器

    在/etc/hosts文件里边添加

    127.0.0.1 somedomain.com

    配置文件etc/jiliu.conf内容为

    listen *:8000 hash_algo fnv balance roundrobin server 74_3128 192.168.1.74:3128 server 74_3129 192.168.1.74:3129 server 76_3128 192.168.1.76:3128 server 76_3129 192.168.1.76:3129  

    webbench -t 10 -c 100 http://somedomain.com:8000/

     

    测试结果比较失望啊

    Webbench - Simple Web Benchmark 1.5 Copyright (c) Radim Kolar 1997-2004, GPL Open Source Software. Benchmarking: GET http://somedomain:8000/ 100 clients, running 10 sec. Speed=1896 pages/min, 206063 bytes/sec. Requests: 316 susceed, 0 failed.

    每分钟不到1900次(但是看到在74上运行的haproxy也只有2982次就稍感欣慰了),o(∩∩)o...哈哈。

    可能是我笔记本配置比较差,而且webbench也在我本机跑的原因。

    既然功能已经大概完成了,以后就是优化和重构了。


    最新回复(0)