Loggly的最大吞吐量是多少?

6
Loggly能处理多少个客户端每秒的请求?我只能每秒处理大约10-20个请求,想知道这是否正常。
3个回答

10

我刚刚进行了一系列测试,并发现它无法通过syslog-ng使用tcp连接处理大量数据。

以下是我的测试结果,供有兴趣的人尝试。 我使用了balabit的“loggen”程序,并将200字节的消息发送到由loggly分配给我的tcp端口。 请注意,尽管syslog RFC(至少是3164)规定日志消息不应超过1024字节,但我仅使用200字节的数据包以保持公平并因为许多消息都很小。

注册了一个免费账户。 配置了TCP连接进行测试。 尝试发送不同数量的数据,结果如下:

测试1:失败

loggen -iS -r 6000  -s 200 -I 100 logs.loggly.com 16225
Send error Broken pipe, results may be skewed.      
average rate = 1392.13 msg/sec, count=18296, time=13.142, (average) msg size=200, bandwidth=271.74 kB/sec

测试2:失败

loggen -iS -r 4000  -s 200 -I 100 logs.loggly.com 16225 
Send error Broken pipe, results may be skewed.       
average rate = 2767.16 msg/sec, count=121146, time=43.779, (average) msg size=200, bandwidth=540.15 kB/sec

测试3: 失败

loggen -iS -r 2500  -s 200 -I 100 logs.loggly.com 16225  
Send error Broken pipe, results may be skewed.      
average rate = 1931.27 msg/sec, count=85878, time=44.467, (average) msg size=200, bandwidth=376.98 kB/sec

测试 4: 失败

loggen -iS -r 2000  -s 200 -I 100 logs.loggly.com 16225    
Send error Broken pipe, results may be skewed.      
average rate = 1617.72 msg/sec, count=83134, time=51.389, (average) msg size=200, bandwidth=315.78 kB/sec

测试 5:失败

loggen -iS -r 1000  -s 200 -I 100 logs.loggly.com 16225 
Send error Broken pipe, results may be skewed.      
average rate = 936.50 msg/sec, count=63331, time=67.624, (average) msg size=200, bandwidth=182.81 kB/sec

测试6:在配置时间范围内通过,超过100秒则失败 - 请查看测试7

loggen -iS -r 500  -s 200 -I 100 logs.loggly.com 16225  
average rate = 325.00 msg/sec, count=32501, time=100.001, (average) msg size=200, bandwidth=63.44 kB/sec

测试7:失败 - 运行了一个新的测试,每秒500个事件并且持续时间更长,但管道在255秒后破裂了:

loggen -iS -r 500  -s 200 -I 10000 logs.loggly.com 16225
Send error Broken pipe, results may be skewed.     
average rate = 323.35 msg/sec, count=82642, time=255.577, (average) msg size=200, bandwidth=63.12 kB/sec

测试8:失败(以更快的速度200EPS运行,但仍然失败)

loggen -iS -r 200  -s 200 -I 10000 logs.loggly.com 16225 
Send error Broken pipe, results may be skewed.      
average rate = 163.53 msg/sec, count=234090, time=1431.470, (average) msg size=200, bandwidth=31.92 kB/sec

测试9:失败(再次失败,运行时间更长但仍然失败)

loggen -iS -r 50  -s 200 -I 10000 logs.loggly.com 16225    
Send error Broken pipe, results may be skewed.    
average rate = 47.36 msg/sec, count=89325, time=1886.014, (average) msg size=200, bandwidth=9.25 kB/sec

测试10:失败?(结果相同,但又再次失去连接。难以相信他们无法处理10个EPS?)

loggen -iS -r 10  -s 200 -I 10000 logs.loggly.com 16225 
Send error Broken pipe, results may be skewed.  
average rate = 9.94 msg/sec, count=1568, time=157.770, (average) msg size=200, bandwidth=1.94 kB/sec

我查找了一些关于Loggly能做什么的信息,但只发现了一些宣传材料,说它是可扩展的,但没有说明其可扩展性有多高。 我找到了这个: http://twitter.com/jordansissel/status/5948244626509824 其中只有每秒22个事件...

完整声明:我是LogZilla的创始人,因此我正在测试竞争对手,因为我们正在推出基于云的syslog解决方案。 我的测试表明,我们的软件能够处理每秒2,000到12,000个事件,具体取决于在云中使用哪些服务器。


2
我真的不知道,但我也在寻找适用于node.js的日志记录解决方案,但一直没有找到合适的。

为什么?

因为所有我检查过的(虽然没检查完全)都使用同步磁盘写入!这会极大地降低性能。

所以如果你问我,你应该重新考虑你的需求,并只记录你真正需要的东西。


-1

我进行了类似于Clayton answer中的测试,因为他的结果让我担心如果我同时发送太多消息,Loggly会丢失一些消息。我想看看克莱顿在2012年遇到的问题今天是否仍然存在。

话虽如此,以下是我在运行loggen 60秒生成每秒100,000条消息时发现的情况。

$ loggen -iS -r 100000 -s 200 -I 60 logs-01.loggly.com port
average rate = 34885.98 msg/sec, count=2093163, time=60.000, (average) msg size=200, bandwidth=6809.74 kB/sec

我也很好奇一些竞争对手在类似测试中会返回什么,我找到了以下内容:

Papertrail

loggen -iS -D -r 100000 -s 200 -I 60 logs2.papertrailapp.com PORT
average rate = 24344.71 msg/sec, count=1461327, time=60.026, (average) msg size=200, bandwidth=4752.09 kB/sec

Logentries

$ loggen -iS -D -r 100000 -s 200 -I 60 api.logentries.com PORT
average rate = 14076.76 msg/sec, count=844609, time=60.000, (average) msg size=200, bandwidth=2747.78 kB/sec

显然,这些不是硬性数字,随着时间的推移系统会发生变化。这只是给我们一个参考点,告诉我们当我运行测试时它们如何响应。你的结果可能会有所不同!

更新:我对Loggly进行了近3小时的长时间测试,并收到了以下反馈:

loggen -iS -r 100000 -s 200 -I 10000 logs-01.loggly.com port 
average rate = 15869.22 msg/sec, count=158692177, time=10000.000, (average) msg size=200, bandwidth=3097.67 kB/sec

澄清一下,我并没有运行这些测试三个小时。这些测试是为了看Loggly处理我发送的事件所需的时间。因此,正如您在第一个示例中看到的那样,我运行了一个测试以发送4000个事件,它花费了13秒钟但失败了。 - Clayton Dukes
谢谢澄清!我没有注意到你的测试失败得如此之快。然而,正如你所看到的,我的测试并没有像你的那样失败。我每秒发送了100,000个请求,持续60秒,但它并没有失败。也许Loggly已经变得更好了,或者你在一个糟糕的日子里测试了它们? - Brett
1
当然他们有,我的测试是三年前完成的。公平地说,我拥有一款相对竞争力较强的产品。我们即将发布一个新的(并且拥有专利)版本,可以处理约1百万个EPS ;) - Clayton Dukes

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接