CloudFoundry 中的GoRouter性能测试

之前一直感觉CloudFoundry的GoRouter的性能不靠谱,或者我们的CloudFoundry 部署架构存在问题,想着进行一些压力测试,但是一直苦于没有压力测试的工具。上一周,部门需要出一个测试报告,刚好借此机会。进行一个比较好的测试。

测试的时候,是使用的两个gorouter+nginx,测试使用的应用是一个比较简单的应用,使用LoadRunner进行压力测试,使用LoadRunner的1000个用户进行,测试效果非常差。和QQ群里的同学交流,他们也出现了类似的问题,使用F5或者HaProxy 都很正常,但是使用nginx 出现很多问题,表现出来的性能非常差。所以也尝试改用haproxy做负载均衡。

haproxy的部署方式就不描述了,使用haproxy的默认配置,性能也是很差,开始进行调优。一开始以为是应用、gorouter的问题,但是定位了很久,发现这些目前看来都没有什么问题。最后,对haproxy的配置文件进行了优化,目前我的haproxy配置文件:

global

log 127.0.0.1   syslog info

daemon

maxconn 300000

spread-checks 4

nbproc 8

defaults

log global

timeout connect 30000ms

timeout client 300000ms

timeout server 300000ms

# maxconn 320000

# option http-pretend-keepalive

option dontlognull

option forwardfor

option redispatch

option abortonclose

listen admin_stats

bind 0.0.0.0:1080

mode http

option httplog

maxconn 10

stats refresh 30s

stats uri /stats

stats realm XingCloud\ Haproxy

stats auth admin:admin

stats hide-version

frontend http-in

mode tcp

bind *:80

reqadd X-Forwarded-Proto:\ http

default_backend tcp-routers

backend tcp-routers

mode tcp

balance source

server node1 10.106.1.46:80  weight 10  inter 2000 rise 2 fall 5 maxconn 10000

server node2 10.106.1.57:80  weight 10 inter 2000 rise 2 fall 5 maxconn 10000

更多精彩内容:http://www.bianceng.cnhttp://www.bianceng.cn/Servers/cloud-computing/

时间: 2024-09-12 12:56:19

CloudFoundry 中的GoRouter性能测试的相关文章

软件测试中Flex程序性能测试

简介:Adobe 的 Flex 已经越来越流行,但是 Flex 程序的性能测试却还没有很好的工具 .包括著名的性能测试工具 LoadRunner 都还没有对新版本 Flex 性能测试有很好的支持. 笔者在实际工作的研究中,发现了一个好的测试 Flex 程序的方式.本文重点介绍性能测试 中如何处理 Flex 的 AMF 消息. 本文采用的测试工具是 The Grinder,开发语言是 Jython 和 Java . 关键字:Flex 测试. Flex 性能测试. AMF Message 解码 1.

软件测试中的WEB性能测试简介

测试人员应该具备的技能: 1.掌握常见的自动化测试工具的使用: 2.具有一定的编程能力: 3.掌握基础的数据库知识: 4.掌握常见的操作系统知识: 5.掌握一些Web应用服务器的使用,如:Weblogic.Webshpere: 6.具有综合分析问题的能力: 性能测试术语: 1.并发用户: 1)严格意义的并发: 所有的用户在同一时刻做同一件事情或者操作,这种操作一般指做同一类型的业务: 2)广义范围的并发: 多用户对系统发出了请求或者进行了操作,但是这些请求或者操作可以相同,也可以不同: 2.用户

基于在生产环境中使用php性能测试工具xhprof的详解_php实例

xhprof 是facebook开源出来的一个php性能测试工具,也可以称之为profile工具,这个词不知道怎么翻译才比较达意.跟之前一直使用的xdebug相比,有很多类似之处.以前对xdebug有一些记录还可以供参考,但是它的缺点是对性能影响太大,即便是开启了profiler_enable_trigger参数,用在生产环境中也是惨不忍睹,cpu立刻就飙到high.而xhprof就显得很轻量,是否记录profile可以由程序控制,因此,用在生产环境中也就成为一种可能.在它的文档上可以看到这样一

Java中的StringBuilder性能测试_java

在看KMP算法时,想要简单的统计一下执行时间和性能. 得出的结论是: Java的String的indexOf方法性能最好,其次是KMP算法,其次是传统的BF算法,当然,对比有点牵强,SUN的算法也使用Java来实现.用的看着不像是KMP,还需要详细研究一下. 测试代码如下所示: package com.test.test.kmp; import java.util.Random; public class KMPTest { public static void main(String[] ar

CloudFoundry中NATS的初步学习

问题描述 NATS作为CloudFoundry的神经中枢,其作用不言而喻.在网络编程方面,NATS是使用EventMachine简化这部分工作的经典案例,同时EM也为NATS带来了高并发场景下优秀的处理能力.这里我们在对NATS源码进行学习的同时,对NATS的Sublist匹配结构做了一定的分析,并对EM在NATS中的使用方式作出了简短的说明.猛击:

我的php程序为什么不能够在cloudfoundry中启动??

问题描述 大家好,我是一个新接触cloudfoundry的程序员,我们用https://github.com/cloudfoundry/vcap的开源软件安装了个vcap环境,现在测试java_web应用已经正常了,可是我的php应用问是不正常.不能够启动.我的php应用非常简单,仅仅是echo出了一个版本号.<?phpecho'version1';?>我尝试push我的php应用.vmcpushtest3Instances>11:php2:otherFramework>php1:

CloudFoundry中EventMachine的初步学习

问题描述 CF中EventMachine的使用非常常见,但是对Ruby并发机制不太了解的童鞋可能对这一部分始终不大清楚.所以我们有必要对EM在CF中常见的使用方法进行一个说明,希望能够起到抛砖引玉的作用.不多说了,请移步: 解决方案 解决方案二:看看学习解决方案三:不错,值得看看.解决方案四:不错不错,味道好极了解决方案五:该回复于2012-10-21 12:59:03被版主删除解决方案六:跟楼主学习了解决方案七:可以!值得学习!解决方案八:好东西,学习了,谢谢解决方案九:好东西谢谢分享解决方案

Java中的XML: 数据绑定,第 1 部分:代码生成方法 — JAXB 及其它

数据绑定 提供了一种简单而直接的方法,以在 Java 平台应用程序中使用 XML.有了数据绑定,应用程序可以在很大程度上忽略 XML 文档的实际结构,而 直接使用那些文档的数据内容.虽然这种方法不能适合于所有应用程序,但在一 般情况下,对于那些将 XML 用于数据交换的应用程序是比较理想的. 除了简化编程之外,数据绑定还提供了其它一些好处.由于数据绑定对许多文 档细节进行了抽象,因此对于在内存中处理文档,它通常所需要的内存比文档模 型方法(譬如 DOM 或 JDOM)要少.您还会发现,由于不需要

性能测试知多少---性能分析与调优的原理

最近一直纠结性能分析与调优如何下手,先从硬件开始,还是先从代码或数据库.从操作系统(CPU调度,内存管理,进程调度,磁盘I/O).网络.协议(HTTP, TCP/IP ),还是从应用程序代码,数据库调优,中间件配置等方面入手. 单一个中间件又分web中间件(apache .IIS),应用中间件(tomcat .weblogic .webSphere )等,虽然都是中间件,每一样拎出来往深了学都不是一朝一夕之功.但调优对于每一项的要求又不仅仅是"知道"或"会使用"这么