Ale*_*lex 2 ubuntu latency amazon-web-services amazon-rds
我需要测试位于我自己的数据中心的服务器和Amazon RDS实例之间的连接.我试过了
time telnet <dns-of-my.instance> 3306
Run Code Online (Sandbox Code Playgroud)
但它追踪自我发出命令以来的时间,直到我结束它,这是不相关的.
有没有办法测量这个?
我的回答并不是假设允许ICMP ping,它使用基于TCP的措施.但是您必须确保有安全组规则允许从运行测试的shell访问RDS实例
首先,确保安装了一些有用的包
apt-get install netcat-openbsd traceroute
Run Code Online (Sandbox Code Playgroud)
检查基本连接是否适用于数据库端口.此示例适用于Oracle,确保您使用控制台中的端点和端口
nc -vz dev-fulfil.cvxzodonju67.eu-west-1.rds.amazonaws.com 1521
Run Code Online (Sandbox Code Playgroud)
然后看看延迟是什么.你想要的数字是最后一个(步骤12)
sudo tcptraceroute dev-fulfil.cvxzodonju67.eu-west-1.rds.amazonaws.com 1521
traceroute to dev-fulfil.cvxzodonju67.eu-west-1.rds.amazonaws.com (10.32.21.12), 30 hops max, 60 byte packets
1 pc-0-3.ioppublishing.com (172.16.0.3) 0.691 ms 3.341 ms 3.400 ms
2 10.100.101.1 (10.100.101.1) 0.839 ms 0.828 ms 0.811 ms
3 xe-10-2-0-12265.lon-001-score-1-re1.interoute.net (194.150.1.229) 10.591 ms 10.608 ms 10.592 ms
4 ae0-0.lon-001-score-2-re0.claranet.net (84.233.200.190) 10.575 ms 10.668 ms 10.668 ms
5 ae2-0.lon-004-score-1-re0.claranet.net (84.233.200.186) 12.708 ms 12.734 ms 12.717 ms
6 169.254.254.6 (169.254.254.6) 12.673 ms * *
7 169.254.254.1 (169.254.254.1) 10.623 ms 10.642 ms 10.823 ms
8 * * *
9 * * *
10 * * *
11 * * *
12 * 10.32.21.12 (10.32.21.12) <syn,ack> 20.662 ms 21.305 ms
Run Code Online (Sandbox Code Playgroud)
更好地衡量"延迟"可能是"典型事务处理没有或很少数据传输的时间".为此,编写一个脚本元素,在循环中执行此操作,可能需要1000次,然后使用高精度计时器计时.但具体细节根据您的需要而有所不同
计时查询。RDS 必须托管 SQL 数据库服务器,因此向其发出简单的 SQL 查询并计算执行时间。
例如,如果您的 RDS 实例是 PostgreSQL,请使用psql并启用进行连接\timing。
psql -h myhost -U myuser
postgres=> \timing
Timing is on.
postgres=> SELECT 1;
?column?
----------
1
(1 row)
Time: 14.168 ms
Run Code Online (Sandbox Code Playgroud)
在此示例中,延迟为 14.168 毫秒。请参阅手册以了解特定 SQL Server 实施的计时。
| 归档时间: |
|
| 查看次数: |
2350 次 |
| 最近记录: |