tc

关于linux tc多网段限速的解决方案

别等时光非礼了梦想. 提交于 2020-03-01 02:50:35
同样原先发布在: http://www.ywjt.org/index/archives/556.html ,现在发布在这里分享一下: 以192.168.1.2为客户端为例,tc限制下载的关键命令: IDEV=eth1 ODEV=eth0 /sbin/tc qdisc del dev $IDEV root handle 10: /sbin/tc qdisc add dev $IDEV root handle 10: cbq bandwidth 100Mbit avpkt 1000 /sbin/tc class add dev $IDEV parent 10:0 classid 10:1 cbq bandwidth 100Mbit rate 100Mbit allot 1514 weight 1Mbit prio 8 maxburst 20 avpkt 1000 /sbin/tc class add dev $IDEV parent 10:1 classid 10:12 cbq bandwidth 100Mbit rate $DOWNLOAD allot 1514 weight 20Kbit prio 5 maxburst 20 avpkt 1000 bounded /sbin/tc qdisc add dev $IDEV parent 10:12 sfq quantum 1514b

软件测试中的过度设计

好久不见. 提交于 2020-02-03 06:59:54
中国有句老话:过犹不及。软件开发中也有一个概念:“过度设计”,说的是为了实现一些简单的功能需求,设计出非常臃肿的结构,代码间的继承、依赖、调用非常复杂,开发工作量大并且难以维护。在软件测试工作中,也存在类似“过度设计”的问题,特别是大中型的软件企业,人数比较多,各方面工作流程趋于稳定和规范,问题更容易发生。 出现“过度测试”的原因非常简单:忽视了软件测试工作的终极目标与核心价值,而过于关注测试活动过程。这里我列出一些“过度测试”的案例,我们一起分析一下。 测试工作必须依赖完整规范的需求文档 回忆一下公司创业初期,那时做项目也没有特别规范的文档,一般就是几个Excel表格、一些Word说明,不过项目也都顺利完成了。可是现在好像如果没有规范的文档,测试工作就寸步难行了,为什么呢?我们经常看到测试工程师整天催PD和DEV把文档补全,催得很辛苦也很郁闷,看起来就像是测试团队要为文档的质量负责一样。有时甚至出现了,测试团队自己动手维护需求文档的现象。是不是测试团队不拿着一份完善的文档,就寝食难安呢? 对于测试团队来说,需求文档确实很重要,但是我们真正的目标是,弄清用户的需求和开发的实现方案,然后便可以设计测试方案。阅读文档是方法之一,交流和讨论其实更重要,期待文档中能说明一切信息,是有点不实际的,特别是互联网公司,需求信息爆炸,创新层出不穷,文档更像是字典,只记录重要的原子信息

pyqt5的QTextEdit里使用QTextCursor.Up时直接程序结束

大憨熊 提交于 2020-01-10 05:52:30
pyqt5的QTextEdit里使用光标移动方法选中文档的冲突问题 学习pyqt5的使用时.参考https://blog.csdn.net/weixin_30732487/article/details/97860122?utm_source=app出了奇怪的错误.我本来是想控制光标移动选中我要的文字. 使用多个tc.movePosition(QTextCursor.XXX, QTextCursor.KeepAnchor) 来移动.并没有按我想要的方向来移动.经过测试得知.向上移动一行(QTextCursor.Up)和移动到上一个块的开头(QTextCursor.PreviousBlock)谁在前面就运行谁. 还有一个大坑,没有输入内容的地方光标根本移动不了.各种所谓的选中功能也没有返回字符串,必须要加一句a = tc.selectedText()才返回要的文本内容. import sys from PyQt5.QtWidgets import QApplication, QWidget,QTextEdit,QPushButton from PyQt5.QtGui import QTextCursor class Demo(QWidget): def init (self): super(). init () self.resize(300,300) t = QTextEdit

Linux 中延时/丢包模拟

♀尐吖头ヾ 提交于 2019-12-29 21:23:08
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> Linux 中延时模拟 设置延时 3s : tc qdisc add dev eth0 root netem delay 3000ms 可以在 3000ms 后面在加上一个延时,比如 ’3000ms 200ms‘表示 3000ms ± 200ms ,延时范围 2800 – 3200 之间. Linux 中丢包模拟 设置丢包 50% ,iptables 也可以模拟这个,但一下不记的命令了,下次放上来: tc qdisc change dev eth0 root netem loss 50% 上面的设丢包,如果给后面的 50% 的丢包比率修改成 ’50% 80%’ 时,这时和上面的延时不一样,这是指丢包比率为 50-80% 之间。 来源: oschina 链接: https://my.oschina.net/u/1437015/blog/643673

TC控制延时和丢包率命令

ε祈祈猫儿з 提交于 2019-12-16 15:58:00
tc修改网络延时: sudo tc qdisc add dev eth0 root netem delay 1000ms 删除策略: sudo tc qdisc del dev eth0 root netem delay 1000ms 修改丢包率: sudo tc qdisc add dev eth0 root netem loss 10% 删除策略: sudo tc qdisc del dev eth0 root netem loss 10% 来源: CSDN 作者: 我看你不是很懂哦 链接: https://blog.csdn.net/stella_alash/article/details/103562119

模拟网络延迟抖动测试

孤街浪徒 提交于 2019-12-08 04:36:28
##以下配置对所有ip 生效 网络异常,可通过以下命令在接口服务端服务器设置(记住测试完删除命令否则一直生效) 1.tc qdisc add dev eth0 root netem delay 100ms 该命令将 eth0 网卡 的传输设置为延迟 100 毫秒发送。 2.tc qdisc del dev eth0 root netem delay 100ms 该命令将删除 eth0 网卡 的传输设置为延迟 100 毫秒发送。 3.tc qdisc add dev eth0 root netem delay 100ms 10ms 该命令将 eth0 网卡 的传输设置为延迟 100ms ± 10ms (90 ~ 110 ms 之间的任意值)发送。 4.tc qdisc add dev eth0 root netem delay 100ms 10ms 30% 该命令将 eth0 网卡 的传输设置为 100ms ,同 时,大约有 30% 的包会延迟 ± 10ms 发送。 5.tc qdisc add dev eth0 root netem loss 1% 该命令将 eth0 网卡 的传输设置为随机丢掉 1% 的数据包 6. tc qdisc add dev eth0 root netem loss 1% 30% 该命令将 eth0 网卡 的传输设置为随机丢掉 1% 的数据包,成功率为

symfony2 twig render, exception thrown

匿名 (未验证) 提交于 2019-12-03 08:48:34
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试): 问题: So in my base template, I have: {% render "EcsCrmBundle:Module:checkClock" %} Then I created the ModuleController.php... <?php namespace Ecs\CrmBundle\Controller; use Symfony\Bundle\FrameworkBundle\Controller\Controller; use Ecs\CrmBundle\Entity\TimeClock; class ModuleController extends Controller { public function checkClockAction() { $em = $this->getDoctrine()->getEntityManager(); $user = $this->get('security.context')->getToken()->getUser(); $today = time(); $start = date('Y-m-d 00:00:00'); $entities = $em->getRepository('EcsCrmBundle

Linux如何去设置TC参数

匿名 (未验证) 提交于 2019-12-02 21:59:42
使用linuxTC进行流量控制时,会发现若一些参数设置不当会导致流控数据效果很差(如limit,burst等值),这里分三种情况分别讲解怎么设置TC。注意TC控制的是发包(也就是设置的是单向的,若需要控制来回,则两个方向均要配置TC)。 1.只设置延时,丢包率 千兆网卡(带宽)设置25ms延时,1%丢包: tc qdisc add dev eth2 root handle 1:0 netem delay 25ms loss 1% limit 3125000 这里limit值是怎么算出来的? limit为缓冲区大小,默认单位是字节,最大1000Mbps时25ms发送数据需要缓冲多少字节:(1000Mbps*(25ms/1000ms))/8=3.125MB=3125000B 2.只设置限制带宽 流控限制带宽的算法有很多种,这里选用比较通过的HTB算法,设置线路最大带宽为100Mbps 这里burst为突发流量大小,建议不配置,使用htb算法默认会算出burst值,使用默认值就好。 tc qdisc ls dev eth0 #查看etho口qdisc tc -s -d class show dev eth0 #查看详细信息 3.设置带宽同时设置25ms延时 文章来源: Linux如何去设置TC参数

mybatis-plus自动生成代码到相应的model

旧时模样 提交于 2019-12-01 23:14:08
主要是想:1.用一个数组装自己的要生成代码的model名字 2.根据model名动态获取路径 3.生成代码时根据model判断,只生成当前model对象的代码 1.maven 依赖 <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus</artifactId> <version>2.1-gamma</version> </dependency> <dependency> <groupId>org.apache.velocity</groupId> <artifactId>velocity</artifactId> <version>1.7</version> </dependency> 注意:加入这个依赖后,需把原来的mybatis及mybatis-spring依赖去掉,避免冲突,因为mybatis-plus包含这两个 2.先给大家看看我的项目结构 2.自动生成代码工具类 2.1用一个数组装自己的要生成代码的model名字 String[] models = {"ssm-mapper","ssm-model","ssm-service","ssm-web"}; 2.2 .根据model名动态获取路径 2.3生成代码时根据model判断,只生成当前model对象的代码 3.工具类完整代码