LEP 与负载均衡:以 PCDUINO 实际案例来使用 LEP 提高网络带宽

本案例演示LEP观察到负载不均衡情况下,PCDUINO电路板iperf测试网络带宽发挥不出来,并实施负载均衡后,看到PCDUINO网络带宽重大提高。

怎么烧录PCDUINO镜像

https://github.com/linuxep/images.git项目下载pcduino-sd.img.gz,用gunzip解压后得到pcduino-sd.img,写入PCDUINO的SD卡(SD卡拔出后,以读卡器插入Linux电脑)。

sudo dd if=pcduino-sd.img of=/dev/sdx (x是你的SD卡在你电脑的路径)

实验方法

开机后PCDUINO电路板的IP地址自动已经配置为192.168.100.100,将电脑与PCDUIBO电路板网线直连,保证本机可以访问PCDUINO的IP地址。登陆电路板可以用ssh命令:

ssh root@192.168.100.100

无密码。

电路板上也集成了ARM版本的LEPD,位于/usr/bin/lepd,运行方法:

lepd --debug

LEPV浏览器端设置方法:

PCDUINO运行iperf服务器:

iperf -s

电脑运行iperf客户端(每10秒报一次网络带宽):

iperf -c 192.168.100.100 -P 40 -t 2000 -i 10 -l 1K | grep SUM

均衡前

此时top里面监控到严重的负载不均衡现象:

如果不做任何工作,均衡前电脑上iperf上的周期report:

LEPV浏览器的显示(其中CPU1在严重地看热闹):

均衡后

在电路板运行负载均衡脚本:

root@pcduino3:/# balance.sh

该负载均衡脚本内容如下,是关于IRQ和SoftIRQ的配置:

echo 2 > /proc/irq/40/smp_affinity
echo 3 > /sys/class/net/eth0/queues/rx-0/rps_cpus
echo 4096 >/proc/sys/net/core/rps_sock_flow_entries
echo 4096 > /sys/class/net/eth0/queues/rx-0/rps_flow_cnt

此时电脑上iperf带宽报告:

此时top命令状态:

此时LEPV端浏览器显示

我们看到CPU1的IDLE线迅速下跳(不再看热闹了):

CPU1开始处理包:

稳定观察一段时间后(两个CPU在均衡处理网络):

再次恢复恶劣状态

在电路板运行负载不均衡脚本(就是默认状态):

root@pcduino3:/# no-balance.sh

电脑上iperf上的带宽再次严重下降:

均衡前后对比

IDLE

IRQ+SoftIRQ

iperf带宽

均衡前

CPU0忙 CPU1闲

CPU0 忙 CPU1闲

30M

均衡后

CPU0 忙 CPU1忙

CPU0 忙 CPU1忙

90M

文章来源于:Linuxer 微信公众号

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

编辑于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏PHP技术大全

grafana+ prometheus+php 监控系统实践

团队在开发流媒体服务,需要实现一个监控在线人数的功能,可以看到历史有多少人在线,当前有多少人在线的功能。 如果用mysql等关系型数据库来实现,可以用事件记录日...

653
来自专栏我分享我快乐

Adobe animate cc 界面解读

我们都知道Adobe animate cc 可帮助我们不用写代码的情况下完成简单的交互动效实现,但是对于初学者而言,英文界面成为想关注它的人望而却步。首先,我强...

40815
来自专栏伪君子的梦呓

ScreenToGif --好用的gif录屏/剪辑软件

引言 遇到想向别人展示一下神操作,或者想向让别人看一下某些效果时,一张图片说不清,弄个视频又太麻烦,这可怎么好呢?其实一个ScreenToGif就可以解决了。 ...

2855
来自专栏伦少的博客

如何解决spark开发中遇到需要去掉文件前几行数据的问题

1373
来自专栏Android-JessYan

MVPArms官方首发一键生成组件化,体验纯傻瓜式组件化开发

原文地址: https://www.jianshu.com/p/2452ea776a45

1083
来自专栏美丽应用

ChromePie:单手搞定Chrome

1143
来自专栏BeJavaGod

不错位的 java .class 反编译工具推荐

我们经常会反编译看一些class文件,但是反编译出来的文件里面会有很多杂乱的东西 一直以来都是用的idea来反编译的,只要把class文件往里面一拖就行了 这么...

3865
来自专栏Python中文社区

利用 tesseract 解析简单数字验证码图片

專 欄 ❈陈键冬,Python中文社区专栏作者 GitHub: https://github.com/chenjiandongx ❈ tesseract 是一...

2865
来自专栏从零开始学自动化测试

appium+python自动化50-生成定位对象模板templet(jinja2)

每次自己写pageobject定位元素对象太繁琐,格式都差不多,只是换个定位方法,这种就可以才有模板的方式,批量生成pageobject定位元素对象的模板 py...

821
来自专栏ionic3+

有了ng-zorro-mobile,ionic4如虎添翼

前端一般会听过阿里的Ant Design,而对于angular使用者,大多也听过ng-zorro(Ant Design for Angular的PC版),最近一...

3253

扫码关注云+社区