性能小结-网络调优

时延均在40ms左右现象

在进行测试中遇到很多时延都在40ms-50ms之间,这样拉高了整体时延的数值,不能满足测试要求,这是一个奇怪的现象,每次时延都在40ms之上,
后来发现是TCP/IP协议中针对TCP默认开启了Nagle算法。Nagle算法通过减少需要传输的数据包,来优化网络,所以后续通过TCP_NODELAY将其禁用了。
设置了网卡的多队列和软中断irqbalance服务,查看网卡是否可以多队列方法:ethtool -l eth0 如果为0则不支持。

如果支持可通过:ethtool -L eth0 combined 2设置。
建议开启 irqbalance 服务,让系统自动调整网卡中断在多个 CPU 核上的分配。运行命令:service irqbalance start。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
SQL Server 存储过程是一组 SQL 语句的集合,可以被编译并保存在数据库中,以便重复使用。存储过程可以提高查询性能,减少网络流量,简化复杂的查询过程,使代码更容易维护。然而,存储过程的性能也可能受到许多因素的影响,包括查询语句的复杂性、索引的使用、参数的传递方式等等。下面是一些 SQL Server 存储过程调优小结: 1.使用 SET NOCOUNT ON 语句:这个语句可以关闭每条 SQL 语句返回的行数,减少网络流量。 2.使用 WITH RECOMPILE 选项:这个选项可以在每次执行存储过程时重新编译查询计划,确保每次都使用最优的执行计划。 3.使用 OUTPUT 参数代替 SELECT 语句:在存储过程中,使用 OUTPUT 参数可以避免使用 SELECT 语句来返回结果集,从而减少网络流量。 4.使用适当的索引:为存储过程中的查询语句创建适当的索引可以大大提高查询性能。 5.避免使用函数:存储过程中使用函数会导致查询计划的重新编译,影响性能。 6.使用临时表:在存储过程中使用临时表可以减少查询语句的复杂性,提高查询性能。 7.使用参数化查询:使用参数化查询可以避免 SQL 注入攻击,同时可以提高查询性能。 8.避免使用大量的 IF 语句:使用大量的 IF 语句会导致存储过程的复杂性增加,影响性能。 9.使用 TRY/CATCH 语句:在存储过程中使用 TRY/CATCH 语句可以处理异常,保证代码的健壮性。 10.使用 SET ANSI_NULLS 和 SET QUOTED_IDENTIFIER 选项:在存储过程中使用这两个选项可以确保查询语句的正确性和可靠性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值