优化ColdFusion的扩展性能
应用软件从底层结构上进行扩展。但在设计应用程序时,还应考虑到一些别的因素以便于提高应用程序的性能。下面将讨论一些硬件和软件选项,看看它们对应用程序扩展性的影响。
软件配置选项
你可以使用ColdFusion 管理器对ColdFusion的功能进行管理,以调节它的性能。例如:
-
可同时连接数
-
数据库连接的控制
-
缓存设置
-
线程设置
-
非高峰时刻预定任务的执行
另外, ColdFusion为开发者提供可以优化性能的工具和方法,开发者可以使用内置工具也可以使用第三方技术。
硬件选项
除了ColdFusion 之外,还有一些关键的配置选项,它们是建立一个可扩展应用的基础。
要建立一个高性能,高可用性的Web应用,构建一个相关的硬件体系也极其重要。此时应考虑下面的一些问题:
-
适当的 CPU和 RAM 的分配
-
在指定的服务器上运行数据库(根据数据库销售人员的推荐进行相应的优化)
-
对服务器进行逻辑分配,将应用软件分布到一组服务器上
-
确保网段流量不影响性能
-
建立故障处理和均衡负载体系
-
通过服务器对共享仓库进行内容复制
系统配置选项
除了对特殊的硬件和软件进行配置选择外,管理员还必须注意整个系统的配置:
-
选择正确的数据库类型
-
必要时在一个专门的服务器上运行数据库
-
优化本地网络性能
-
优化其它系统的性能,这些系统可能对ColdFusion 应用程序产生影响的(如, DNS 服务器, SMTP 和POP 服务器,LDAP 服务器)
代码优化
还有一个可能对ColdFusion应用程序性能产生影响的因素是CFML代码本身。编写代码时应考虑以下因素:
- 优化SQL语句。在ColdFusion应用时经常要执行数据库的访问,尽量让数据库
作到最好。另外,不要使用ColdFusion去作那些数据库自己能完成的工作。
-
避免编写过度复杂的CFML.
-
了解各种状态管理(URL变量, 浏览器 cookies, and DB client 变量 storage 和session 变量)。Session 变量要求在一个单独的服务器上驻留完整的会话过程。 “sticky session” 选项必须在安装了负载均衡硬件或软件上使用.
-
在适当的地方进行查询和页面缓存,可以大大改善性能.