Flex应用程序性能:改善客户端应用程序和服务器性能的技巧与技术2004年5月版权所有©2004Macromedia,Inc.保留所有权利。本文所包含信息代表了Macromedia在发表日期当时对文中所讨论问题的看法。由于Macromedia必须对市场情况的变化作出反应,本文不应当被认为是Macromedia的承诺,而且Macromedia也不保证在发表日期后文中信息的准确性本白皮书的目的仅仅是提供信息。MACROMEDIA在本文中未做任何明白表述的或者暗示的保证。Macromedia可能对本文中的主题拥有专利权、专利应用权、商标权、版权或其它知识产权。除非有Macromedia提供的书面许可协议,本文的提供并为给您任何使用这些专利权、商标权、版权或其它知识产权的许可。Macromedia®、MacromediaColdFusion®、MacromediaDreamweaver®、MacromediaFireworks®、MacromediaFreeHand®和MacromediaFlash®是Macromedia公司在美国和/或其它国家的商标或注册商标。本文中涉及到的真实公司名称或产品名称的商标权归它们各自拥有者所有。Macromedia,Inc.600TownsendStreet,Suite500SanFrancisco,CA94103415–252–2000目录概述.....................................................................................................................................1架构性能良好的Flex应用程序..............................................................................................2关于FlashPlayer...............................................................................................................2恰当地使用布局、继承和包含.................................................................................................3避免多层嵌套容器.........................................................................................................3绝对定位和缩放.............................................................................................................4灵活地使用Grid容器....................................................................................................5应避免的常见容器冗余示例.............................................................................................7用推迟实例化改善性能感受....................................................................................................9导航条容器内置推迟实例化.............................................................................................9渐进式布局..................................................................................................................10推迟动作.....................................................................................................................16处理大数据集......................................................................................................................16平滑地显示复杂效果.............................................................................................................16通过使用运行时样式得到良好性能..........................................................................................17改善Repeater对象的性能..................................................................................................18关于Flex表示服务器中缓存的探讨.......................................................................................19修改flex-config.xml配置文件中的设置.............................................................................20访问Flex数据服务..............................................................................................................21使用JSP标签库................................................................................................................23预编译MXML页...............................................................................................................25部署选项............................................................................................................................27Flex应用程序性能的调整和状况记录....................................................................................27使用ActionScriptProfiler...........................................................................................28计算应用程序初始化时间...............................................................................................28使用getTimer()对组件和数据动作计时...........................................................................29负载测试Flex应用程序................................................................................................29负载测试工具.........................................................................................................29负载测试示例场景...................................................................................................30关于未来.............................................................................................................................31反馈与支持.........................................................................................................................32关于作者............................................................................................................................323Flex应用程序性能:改善客户端应用程序和服务器性能的技巧与技术概述MacromediaFlex是提供创建RichInternetApplication(RIA)能力的强大平台。其强大功能如果未被正确使用,就会造成多方面的性能不佳。本文探讨了一些性能问题,并给出了如何昀大程度发挥Flex应用程序效能的提示。本文涉及到应用程序的两层:Flex客户端和Flex表示服务器。关于客户端,Flex像任何其它编程模型一样,应用程序的整体性能会受到某些编码习惯的损害。本文描述了在客户端影响应用程序性能的一些MXML编码习惯,并示范了提高Flex应用程序性能的简单技巧。更详细地,本文探讨了如何:缩短启动时间利用推迟实例化改善性能流畅地显示复杂效果改善Repeater对象的性能进行大数据集操作对Flex应用程序进行性能测试关于服务器端,本文涵盖的内容包括:flexconfig.xml文件及其对性能的影响Flex缓存模型向Flex客户端的高效率数据发送高效率地使用JSP标签库预编译MXML页面对JVM进行性能调整Flex部署选项注意,本文所建议的技巧并不适用于所有Flex应用程序。重要的是分析自己的应用程序,并对建议作出改动以适应需要。如需获取昀新的编码与概念上的帮助,可使用Flex支持论坛(=60)和Flex开发者中心()。另外,欲昀大程度地利用本文,需要:MacromediaFlex(