【问题标题】:php call mysql procedure performancephp调用mysql程序性能
【发布时间】:2022-11-11 02:11:34
【问题描述】:

a、b 和 c 中哪个是最佳选择?

一个案例一个电话很多更新

test procedure
{
update table1
update table2
update table3
update table4
update table5
update table6
}

b case 3调用多次更新

test1 procedure
{
update table1
update table2
}
test2 procedure
{
update table3
update table4
}
test3 procedure
{
update table5
update table6
}

c case 每次调用每次更新

test1 procedure
{ 
update table1
}
...
...
...

谢谢 :)

I hate calling too many procedures for one action, so I'm looking for multiple options.

【问题讨论】:

  • 显然,没有区别。你应该按照你的应用程序逻辑来做,而不是突然冒出一些关于“性能”的模糊想法

标签: mysql stored-procedures


【解决方案1】:

您的 3 个选择中没有并行性。即使有,也可能不值得付出努力。

“更新 tableN”是单行的吗?如果是这样,我喜欢(a);通过查看该列,我看到了语法相似性。

还是20行?如果可以,能不能做成子程序?在这种情况下,我使用 (a) 加上一个 20 行的子程序。 (总共 2 个函数。)一个 PHP 函数调用是微不足道的——可能远小于 1微秒.

或者,如果数字很容易在一个变量中,考虑这个 22 行的单个函数 (a') 的主体:

foreach(range(1,6) as $n) {
    ... the 20 lines of code to do the Update ...
}

在上述所有情况下,MySQL UPDATE 将是最慢的部分,您无法通过 PHP 对其进行优化。 (除非避免使用UPDATE。)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-01-12
    • 2014-02-25
    • 2012-07-25
    • 1970-01-01
    • 2013-05-16
    • 2016-10-16
    相关资源
    最近更新 更多