我有一个应用程序,它每小时执行大约 20000 次数据操作 数据操作总共有 30 个参数(对于所有 10 个查询)。有些是文本,有些是数字。一些文本参数长达 10000 个字符。
每个数据操作都执行以下操作:
- 单个数据操作,在数据库中插入/更新多个表(大约 10 个)。
- 对于每一个数据操作,我都会使用一个连接,
- 然后我为 DATA-OPERATION 中的每个查询使用新的prepared-statement。
- 每次执行查询时,Prepared-statement 都会关闭。
- 连接被所有 10 个准备好的语句重用。
- 当数据操作完成时连接关闭。
现在执行这个数据操作,
- 10 个查询,10 个准备好的语句(创建、执行、关闭),1 个 n/w 调用。
- 1 个连接(打开、关闭)。
我个人认为,如果我从以上 10 个查询中创建一个存储过程,那将是更好的选择。
在 SP 的情况下,数据操作将具有:
- 1 个连接,1 个可调用语句,1 个 n/w 命中。
我建议这样做,但有人告诉我
- 这可能比 SQL 查询更耗时。
- 它会给数据库服务器带来额外的负载。
我仍然认为SP是更好的选择。请让我知道您的意见。
基准测试是一种选择。将不得不搜索任何可以帮助解决此问题的工具。任何人也可以为此类问题建议已经可用的基准。