Omu*_*Omu 1 postgresql ubuntu performance
我在ubuntu服务器上安装了postgres 8.4,配备4 GB Ram和Intel E5504 2Ghz
我创建了一个表
create table foo
(
id serial primary key,
fname varchar(30),
lname varchar(30)
)
Run Code Online (Sandbox Code Playgroud)
插入10 000行需要大约4秒第一次和1秒后,
但选择100 000行总是需要4秒,
select * from foo
Run Code Online (Sandbox Code Playgroud)
这是正常的还是我的配置错了?
可能是我的ubuntu遥控带有限或类似的东西?
小智 6
您的表的100000行使用6.4 MB(如果它们是Unicode,则为12.4 MB).这相当于64 MBits,在10 MBit/s网络中大约需要6.4秒.因此,可用的网络带宽可能会导致您遇到的4秒延迟.
使用 psql 连接到本地数据库:
psql -U username dbname
Run Code Online (Sandbox Code Playgroud)
打开计时信息的显示:
dbname=> \timing
Timing is on.
Run Code Online (Sandbox Code Playgroud)
将输出设置为本地临时文件:
dbname=> \o /tmp/foo.txt
Run Code Online (Sandbox Code Playgroud)
选择表中的所有行到临时文件:
dbname=> select * from foo;
Time: 104.442 ms
Run Code Online (Sandbox Code Playgroud)
(在客户端上 - 我假设是 Linux)暂时禁用防火墙:
# service iptables stop
Run Code Online (Sandbox Code Playgroud)
(在客户端)开始监听端口 10000:
# nc -l 10000 > /dev/null
Run Code Online (Sandbox Code Playgroud)
(在服务器上)使用普通 TCP 将文件发送到客户端:
# time nc client_ip 10000 < /tmp/foo.txt
real 0m0.190s
user 0m0.004s
sys 0m0.078s
Run Code Online (Sandbox Code Playgroud)
(在客户端)启用防火墙:
# service iptables start
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
313 次 |
| 最近记录: |