SQLSERVER复制优化之一《减少包大小》
SQLSERVER复制优化之一《减少包大小》
自从搭了复制之后以为可以安枕无忧了,谁不知问题接踵而来
这次遇到的问题是丢包,不知道情况的读者可以先看一下我之前写的一篇《SQLSERVER监控复制并使用数据库邮件功能发告警邮件》
因为机房C和机房A不在一个局域网,网络状况不是太好
分发积压的命令经常处于20W+条,复制并没有报错,每次传递的事务都是少于30个,正常来讲SQLSERVER默认每次会传输100个事务


后来测试了一下网络情况
从分发服务器ping一下订阅服务器,ping 4096Byte大小的包,ping100次,因为分发默认传输的包大小是4096Byte,中间偶尔会超时

ping 订阅服务器ip -l 4096 -n 100
参数l是指包的大小, 参数n是指ping的次数,不加 -l 参数的话默认ping的包大小为32Byte

100个包有21个丢包
ping 订阅服务器ip -l 1024 -n 100

100个包有5个丢包
后来又继续ping 512Byte 、256Byte、128Byte大小的包,发现越小的包,丢包率就越低
从当前的网络测试情况来看,需要调整一下分发代理的包大小,在分发代理配置文件里有一个参数 -PacketSize packet_size
这个参数是设置分发代理发送到订阅服务器的包大小的。
环境:发布和分发都在同一台机器
设置
我们将分发代理的包大小设置1024Byte,那么怎么设置呢?
有两种方法:
方法一:修改分发agent 的作业
(1)打开分发代理作业

(2)转到步骤

(3)双击“运行代理”,然后添加参数 -PacketSize 1024 ,点击确定,退出作业属性

(4)禁用分发代理作业

(5)启用分发代理作业

这样设置过后,分发代理就会以新的参数运行
但是代理配置文件是看不出来当前分发代理的运行参数的,还是显示4096Byte

方法二:新建一个代理配置文件,然后直接修改参数
(1)默认的代理配置文件是修改不了的

(2)新建一个代理配置文件

(3)选择默认代理配置文件(新代理的默认值)

(4)输入配置文件名:testprofile,把“仅显示此配置文件的参数”的勾去掉,修改-PacketSize参数为1024,然后点击确定

(5)勾选testprofile,然后点击确定


验证
复制分发代理
复制分发代理是一个可执行文件,它能将快照(对于快照复制和事务复制)和保存在分发数据库表中的事务(对于事务复制)移动到订阅服务器上的目标表中。
若要启动分发代理,请从命令提示符下执行 distrib.exe
打开任务管理器,查看分发代理进程的进程ID(PID),然后打开Microsoft Process Monitor 3.10,设置筛选条件

看一下length,最大的包也不会超过1024,说明设置生效了




总结
SQLSERVER复制优化之一《减少包大小》的更多相关文章
- SQLSERVER复制优化之一《改变包大小》
SQLSERVER复制优化之一<改变包大小> 自从搭了复制之后以为可以安枕无忧了,谁不知问题接踵而来 这次遇到的问题是丢包,不知道情况的读者可以先看一下我之前写的一篇<SQLSERV ...
- apk瘦身(包大小优化)
最近太忙好久没有写随笔,放假才有空写写随笔. 最近在项目中一直在做包大小优化 随着业务需求的增加,包大小是忍不住的往上涨 为了提高应用市场下载转化率,一直在优化包大小 首先 分析你的apk中占比的主要 ...
- SQLServer复制(二)--事务代理作业
之前的一篇已经介绍了如何配置复制,介绍了发布者.分发者和订阅者以及事务日志运行的简单关系.其中提到了复制代理,我们这篇将详细介绍复制代理,它是什么?在事务复制的步骤中起到了什么作用? 代理和工作 首先 ...
- 6.关于Xamarin Android对APK包大小的处理
降低学习成本是每个.NET传教士义务与责任. 建立生态,保护生态,见者有份. 对于apk 包的大小大家都是很敏感的,虽然现在安卓手机的性能和存储越来越厉害了.本着能少一点是一点的态度,我们还是要深入理 ...
- 个人永久性免费-Excel催化剂功能第82波-复制粘贴按源区域大小自动扩展收缩目标区域
日常工作中,复制粘贴的操作,永远是最高频的操作,没有之一,在最高频的操作上,进行优化,让过程更智能,比一天到晚鼓吹人工智能替换人的骇人听闻的新闻来得更实际.此篇带来一点点的小小的改进,让日后无数的复制 ...
- 01.SQLServer性能优化之----强大的文件组----分盘存储
汇总篇:http://www.cnblogs.com/dunitian/p/4822808.html#tsql 文章内容皆自己的理解,如有不足之处欢迎指正~谢谢 前天有学弟问逆天:“逆天,有没有一种方 ...
- JavaScript动画-拖拽改变元素大小
▓▓▓▓▓▓ 大致介绍 拖拽改变元素大小是在模拟拖拽上增加了一些功能 效果:拖拽改变元素大小 ▓▓▓▓▓▓ 拖拽改变元素大小原理 首先这个方块得知道我们想要改变这个它的大小,所以我给它设定一个范围,当 ...
- 带你实现开发者头条APP(四)---首页优化(加入design包)
title: 带你实现开发者头条APP(四)---首页优化(加入design包) tags: design,Toolbar,TabLayout,RecyclerView grammar_cjkRuby ...
- Unity3D之如何将包大小减少到极致
http://www.luzexi.com Unity3D之如何将包大小减少到极致,图片是游戏app里最最占空间的资源,所以请各位还没有理解u3d对图片文件存储方式理解的请看<unity3d-t ...
随机推荐
- Java多线程的wait(),notify(),notifyAll()
在多线程的情况下.因为多个线程与存储空间共享相同的过程,同时带来的便利.它也带来了访问冲突这个严重的问题. Java语言提供了一种特殊的机制来解决这类冲突,避免同一数据对象由多个线程在同一时间访问. ...
- MySql模糊查询like通配符简介
%代表随意多个字符 _代表一个字符 在 MySQL中.SQL的模式缺省是忽略大写和小写的 正则模式使用REGEXP和NOT REGEXP操作符. "."匹配不论什么单个的字符.一 ...
- SlopOne推荐算法
在开源框架taste中有SlopOne的Java实现,效果不错.使用movielens的数据,代码例如以下 代码 #coding:utf-8 import re import math #读取数据,并 ...
- bootstarp modal自己主动调整宽度的JS代码
$('#ajaxPage').modal('show').css({ width: 'auto', 'margin-left': function () { return -($(this).widt ...
- DiskFileUpload类
1.2.2 DiskFileUpload类 DiskFileUpload类是Apache文件上传组件的核心类,应用程序开发者通过这个类来与Apache文件上传组件进行交互.以下介绍DiskFileUp ...
- emeditor 配置教程
1.众多的图形界面配置功能 通过查看EmEditor的安装目录,可以发现,EmEditor有几个配置文件,理论上应该可以通过修改配置文件来达到配置EmEditor的目 的.然而,打开配置文件一看,如果 ...
- android studio 怎样正确导入jar
近期又開始做android,使用android studio中遇到导入jar没有反应的问题,查了下资料实践攻克了,现特地写一下博客.希望对刚刚的使用的android studio的朋友有帮助. 1.先 ...
- 数据结构之计算器的实现(JAVA)(四)
原理: 1.将中序表达式变化兴许表达式 2.当前字符为数字,将该数字放入栈中 3.当前字符为操作符,从栈中取出两个树,依据操作符来运算,将运算结果放入到栈中 4.反复,直到将字符操作完.此时栈中仅仅剩 ...
- WebService 用户名密码验证
原文:WebService 用户名密码验证 在项目开发的过程中,WebService是经常要用的,当调用WebService方法时,需要经过服务的验证才可以调用,一般就是用户名/密码验证,还有一个就是 ...
- Java他们其中一个IO(一)
1.I/O 操作的目标 其中从数据源读取数据,和写数据到的目标位置数据. 2.IO 的分类方法 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMTc ...