Oracle中的中间件体系结构多层调整
2007-05-11 12:21:46 来源:WEB开发网Edwards 指出,这些复杂性给预见性的应用程序监视和容量计划造成了困难,并影响对已发现性能问题的处理。“如果您的最终用户说:‘咦,我的某些特定功能好象运行很慢。’假如没有数据库以外的补充信息,很难进行调查,并且很难了解该功能当前正在哪个连接上执行和涉及到多少个语句 — 而且难以判断问题的根源。SQL 效率不高?数据库或应用服务器有问题?如果偶尔有争用和某种类型的等待事件,则可能很难进行识别和归类。判断性能为何没有达到最佳的原因已经成为复杂、曲折的过程,并且您必须使用更多的手段。”
调整的提示和技巧
Edwards 认为,有效调整多层体系结构的关键是以下三项策略:采取全局的观点、使用科学的方法论、采用从 SQL 开始工作的调整策略。
全局的方法
Edwards 说,由于多层体系结构中有许多级,常见的调整错误是每次只关注一级,而忽视了全局。“您需要具有更普遍、更全面的观点,因为您需要能够解释最终用户操作的时间。各层间通信的等待时间经常成为问题,并且这种问题不容易测量、隔离或再现。我们可以独立查看每一层 — 应用服务器层、RDBMS 层、客户端层 — 而且可能每一层在其自身范围中都表现得很高效,但最终用户的体验仍然很糟。因此,您必须能够在所有不同层中以及在层间通信方面监视和估计时间。”
查看全局可能需要将不同小组的人们集合在一起,以便他们能够增加相互的了解。Edwards 说:“在大多数机构中可能出现的情况是,DBA、UNIX 或系统管理员团队和网络团队都属于不同的组,他们没有必要了解其他人的事。操作系统工作人员不了解数据库工作负载,而数据库工作人员不了解操作系统的资源。网络团队也有自己单独的领域。我认为您确实需要全面了解 I/O、内存、CPU 以及网络的情况。您需要能够解释所有这些信息,了解它们,知道何时饱合或何时出故障,并知道选择什么方法来增加资源或减少问题。您越是能够使不同的团队在这方面协同工作并相互了解,效果就越好。”
更多精彩
赞助商链接