- 主题:golang操作postgres速度只有rust的1/3-1/2正常吗?
很简单的操作:
result, err := db.Exec("update xyz set x=$1 where y=$2", hashStr, h)
数据库是postgres 13。
golang用的sqlx。
rust用的rust-sqlx。
各执行2万次,计算总耗时,rust比golang快2-3倍。
这种纯IO操作怎么会差别这么大?
--
修改:cn62 FROM 175.42.43.*
FROM 175.42.43.*
做 profile 了吗?
【 在 cn62 (cn62) 的大作中提到: 】
: 很简单的操作:
: result, err := db.Exec("update xyz set x=$1 where y=$2", hashStr, h)
: 数据库是postgres 13。
: golang用的sqlx。
: rust用的rust-sqlx。
: 各执行2万次,计算总耗时,rust比golang快2-3倍。
: 这种纯IO操作怎么会差别这么大?
--
FROM 27.38.197.*
你这总的时间是多少?如果 10MS VS. 30MS,啥也说明不了
干活的是数据库,传数据的是底层的库,一个语言能差出一些微秒来很正常,差了一些毫秒来已经很大了,
--
FROM 47.144.172.*
go的网络调用涉及协程调度,不过和网络开销比起来应该可以忽略。
【 在 cn62 的大作中提到: 】
: 很简单的操作:
: result, err := db.Exec("update xyz set x=$1 where y=$2", hashStr, h)
:
: 数据库是postgres 13。
: golang用的sqlx。
: rust用的rust-sqlx。
:
: ..................
发自「今日水木 on 键盘侠」
--
FROM 124.65.9.*