最新版的APEX Listener修复了很多bug,并且提供了一个非常管用的新特性。 使用Listener最大的好处就是它支持各种主流应用服务器,比如WebLogic或Apache Tomcat,可以启用WEB服务器的压缩功能(HTTP Compress)。早先的版本对中文的支持很差,可以正常展示,但是一旦保存就会乱码,这导致我曾在一段时间内,开发和管理使用数据库内置XDB服务,普通用户则通过Listener访问,并且不提供中文字符的保存。这个版本完美解决了乱码问题。 此外,该版本最醒目的新特性是提供了一个管理界面: 以Tomcat为例,配置好后会在temp/apex 目录下生成 apex-config.xml 配置文件。该配置界面只在第一次使用时有效,如果之后需要修改参数,则需要先配置好WEB服务器的用户权限(admin role)。编辑tomcat-users.xml 文件: <tomcat-users> <role rolename=”Admin” /> <user username=”admin” password=”admin” roles=”Admin” /> </tomcat-users> Listener 参数修改后会立即生效。 基本上,APEX Listener 测试版已经相对完善了,希望下一个版本可以改进会话管理功能,省得时间久了一堆死进程非得重启才能清理干净。 P.S: 如果已经存在apex-config.xml,又需要登录管理界面,则请访问 http://host/apex/listenerAdmin
Archives for April 2010
为什么Oracle 11g R2最低内存要求是1G?
Oracle公司最近采取了一些措施来保证只有真正的专家才能使用Oracle,这些措施包括: Oracle 11g R2 的所需内存至少1G 磁盘空间至少要达到10G 一些额外的特性,比如ASM和Oracle Restart需要额外的1G内存 很多名不副实的所谓Oracle专家,他们的知识可能仅仅来源于个人电脑上的单用户的Oracle系统,很多人甚至没有接触过真正的上规模的企业环境。Oracle将会继续贯彻这种政策来减少越来越多的半吊子和没有资格认证的外行人士,以避免行业陷于低水平境地。 我的看法是,今后所有企业版所需内存至少2G,ASM之类则需要额外的1G内存,这样效果会更好一些。 Joke (注:本消息可信度自行判断 )
案例:主物料界面性能问题
案例: 物料查询主界面(Master Item Screen)更新速度极慢,有时候需要数分钟才能保存。 诊断: 做Form Trace,诊断日志中可以发现下面一段SQL执行效率很低: Trace file: /……/udump/test_ora_16779_XZB.trc Sort options: fchela ******************************************************************************** count = number of times OCI procedure was executed cpu = cpu time in seconds executing elapsed = elapsed time in seconds executing disk = number of physical reads of buffers from disk query = number of buffers gotten for consistent [...]
三种有效的优化措施
Oracle EBS作为一款打包好的ERP应用产品,绝大多数情况下是无法通过修改程序来实现优化目的。因而对于多数人而言,提到优化往往意味着成本,意味着投入,比如购买更好更多地硬件,设计N层(通常是两层,数据库和Apps分开)架构,通过BI将报表负担和日常业务剥离开来,上点层次的企业或许可以考虑弄个高可用性方案(RAC/DG)等等,这些投入从某种意义上来说,是昂贵的。很多没有想通的用户,往往在3年、5年这些坎上活得非常痛苦,好不容易磨合的差不多了,可偏偏这系统似老牛破车慢得不行了。等想通这个环节了,又可以迎来新的春天。 我们知道,经过优化的OLTP应用,毫无疑问可支持TB级的数据量,但是这种优化是需要一定功夫的。Oracle EBS宣称其本身便是经过优化的,这是常规而言,实际应用下来,却还有不小的调整余地。如何在当前的IT预算之内,做出显著的性能提升呢?其实从DBA的角度来看,还是有一些免费的实用的优化方案可供选用的: Purging/Archive,清理或归档过期数据。Oracle EBS内置了很多过期数据删除程序,比如删除过期工作流数据、日志、接口表数据等。11i中有将近214个类似程序,R12中约有260个。可以在Purge Portal配置一些常规的清理/归档程序。 Partition,数据表分区。合理的分区,可以优化大多数查询语句访问路径,减少备份、恢复时间,更合理的分配存储空间。比如总帐数据按会计期间进行分区,工作流数据按类型进行分区等。 ILM,信息生命周期管理。Oracle ILM方案是免费的,可以通过APEX提供一个图形化的助理界面。所谓生命周期是指数据按照时间线索区分的重要性分级,比如三年前的数据,本月的数据等,将一些很久以前的基本不访问但是又必须保留的数据存放到相对廉价的存储设备上。 Oracle EBS中已经对于某些类型的表进行了分区,还有一些则提供了备选的分区方案(比如工作流相关表,参考《工作流之大表分区》),这些都是常见的情形。每家企业情况不同,某一类数据在一些企业里数据量很小,但是在另一些企业里却极大,这时就需要自行分析功能和相关表结构,针对数据访问特点进行分区。一般而言,一个表的数据如果超过了2G,应当开始考虑一下分区方案。 Oracle ILM方案向对于很多第三方解决方案而言,虽然简单了些,但是无需额外费用。作为代价之一,Oracle EBS没有现成的解决方案,所以也需要技术顾问自行分析功能特点将数据进行分类,这是有点难度的工作。 在这些方面,一个不了解Oracle EBS产品的DBA很难提供有针对性的优化建议,所以技术顾问们,或许可以在这个领域深入一把。