我的cubieboard上安装的是linaro(其实就是linux),首先得调节单个进程打开的句柄数(修改/etc/security/limit.conf),然后还要修改sysctl里tcp_mem等网络参数(具体配置可以参考这里
1,
2) 然写了一套简单的TCP链接客户端和服务端的
代码。Server端用epoll模型; Client端创建500个链接然后把fd放入数组里,每个connection每5秒发送128字节。
开始测试时,在cubieboar上我分别对5个端口启动了5个Server,客户端(我的笔记本)则是用脚本不停的创建Client实例。
测试结果: cubieboard可以支撑到10万个tcp长链接,网络流量稳定保持在3.75MB/s,此时系统内存还有大约300MB free(总共1G),CPU idle在20%左右
cubieboard只有网口没有网卡(也就是没有network controller),所有的收包解包都由CPU完成,所以能支持的流量比较有限,不过撑个10万的闲链接还是没问题的。
还想了解一下cubieboard对https的支撑能力,于是我又在cubieboard上装了
tengine(在arm上编译还挺顺利,连warning都没有),配上https签名(参加
这里)再用ab压力测试,ab压测脚本是:
ab -n 20000 -c 20 -k url
试结果: 访问https的QPS为755, 访问http的QPS为1269
看来用cubieboard搭个小网站是绰绰有余了,一个小的聊天服务器兴许也可以。