现在在做一个网站项目,oracle数据库,我为对数据插入等操作,写了存储过程和函数,其间用到了一些系统递归函数。
然后我们boss说,数据库计算占用数据库的cpu,最好把计算在服务器端完成,我深以为然。
但现在仍然有个疑惑,那就是如果只进行简单的操作,比如查出某一项的最大值,加1后赋给新插入的项,那么显然用一个存储过程比两次I/O要快捷和安全。
那么又没有一个量化的标准,可以判断分布式系统,哪些时候用存储过程好,哪些时候用服务器事务管理好?呃,不知道我说清楚没有?

解决方案 »

  1.   

    貌似没有量化标准,因为任何事物都不是绝对的,你boss说的没错,数据库计算会占用数据库的cpu但是过多的业务计算还会影响页面响应速度,这东西只能总这两个方面找一个平衡点。最终原则就是系统稳定快速运行。。
      

  2.   

    我boss说的是没错,不过我觉得过多的数据I/O访问也会影响数据库的响应速度,但多少条访问连接会影响,应该有个大概的量化吧。
    记得在算法优化时,比如冒泡排序和快速排序,好像就有大概的一个量化区分。