`
chen.fa
  • 浏览: 962 次
文章分类
社区版块
存档分类
最新评论

关于openlaszlo用法的一些体验

 
阅读更多

在开发openlaszlo应用过程中,往往考虑的是功能是否能正常实现,除了遵守openlaszlo开发规范外,对性能方面考虑的比较少,但是随着应用规模的增加,到了后期测试的时候就会发现性能问题已经很严重了,这时要对系统进行性能调整,这是openlaszlo开发过程中不可缺少的一部分。

系统未优化前,初始化时间6.37秒(含debug窗口),主程序总共有10个对话框窗口(modaldialog),代码总行数近千行。

第一阶段:初步优化

1。将所有的modaldialog设置其initstage="defer"
初步优化后初始化时间为2秒

2。当主题数据取来后,进行初始化themetreedialog
canvas.themetreedialog.completeInstantiation();

3。在所有操作按钮上添加对应的窗口初始化声明:
canvas.adddirdialog.completeInstantiation();
...
4。窗口内打开过滤器设定窗口时,进行初始化:
canvas.addconditiondialog.completeInstantiation();

5。单击表格行打开修改过滤窗口时,进行初始化:
canvas.filterModWin.completeInstantiation();

优化结果:
系统在2.09秒之内初始化完成(含debug窗口),不包括debug窗口的初始化时间与包括时非常接近,但是包含debug的swf文件尺寸要大142K。

所有的窗口延迟初始化设置完成,进行测试发现,当对话框内容较少时,初始化过程非常短暂,但是过滤器设定窗口的初始化过程稍微长点在1秒左右,但是初始化一次以后,再打开就非常快,由此可见openlaszlo的初始化过程只进行一次,不会重复进行。
此外,这种利用开启窗口的前夕来初始化对话框的方法还有局限性,如果窗口内容比较多,那么初始话
过程足以造成相应迟钝,造成体验不好,还应该进行继续探索。

第二阶段:深度优化

经过仔细分析发现,在获取远程数据过程中有少许间隙时间,可以利用这个间隙来初始化比较大的modaldialog,选择其中一个只获取一次数据的dataset来初始化过滤器窗口,经过反复测量初始化时间,认定该步优化后的应用初始化时间与上一个过程时间一致。
去掉原来加在按钮上的初始化过滤器窗口声明,完成整个优化过程。

调整过程原则总结:

1。当前不显示的窗口不在系统初始化时生成
2。只在需要的时候才生成窗口或者视图
3。充分利用事件进行completeInstantiation
4。充分利用系统闲暇时间 

分享到:
评论

相关推荐

    OpenLaszlo-SAMSIG-05.ppt

    ### OpenLaszlo:领先的开源富互联网应用开发平台 #### 一、项目概述与历史 OpenLaszlo 是一个开放源代码平台,旨在为全球范围内的互联网提供丰富的应用程序开发及交付服务。它由 Laszlo Systems 公司于 2001 年...

    openlaszlo本地帮助文档

    《OpenLaszlo本地帮助文档》是一份详细阐述OpenLaszlo平台使用的英文手册,以HTML格式呈现。OpenLaszlo是一种开源的 Rich Internet Application (RIA) 开发框架,它提供了一种高度灵活的方式来创建交互式的、富媒体...

    Applet & Openlaszlo

    Applet和Openlaszlo是两个在Web开发领域中用于创建动态、交互式用户体验的技术。本文将深入探讨这两个概念以及它们之间的通信机制。 首先,Applet是Java编程语言的一个组成部分,它允许开发者创建可以在Web浏览器中...

    OpenLaszlo —— 一个快速构建和部署富 Internet 应用程序的平台

    OpenLaszlo —— 一个快速构建和部署富 Internet 应用程序的平台 -- Linux,C,C++,Java,Ajax,XML,perl,php,python,ruby,MySQL,Gnome,KDE,Qt,Gtk,bash,shell,嵌入式,网络,信息安全,操作系统,数据结构,编译原理

    openlaszlo-4.9.0-windows-dev-install.part2.rar

    openlaszlo应用程序开发使用的是基于XML的LZX语言,它可以被编译成DHMTL,SWF等格式。 openlaszlo可作为openmeetings客户端的编译。 因安装程序90+MB,所以切分为两个压缩包。 openlaszlo-4.9.0-windows-dev-install....

    openlaszlo-4.9.0-windows-dev-install.part1.rar

    openlaszlo应用程序开发使用的是基于XML的LZX语言,它可以被编译成DHMTL,SWF等格式。 openlaszlo可作为openmeetings客户端的编译。 因安装程序90+MB,所以切分为两个压缩包。 openlaszlo-4.9.0-windows-dev-install....

    openlaszlo-4.7.3-windows-dev-install (1).exe

    openlaszlo应用程序开发使用的是基于XML的LZX语言,它可以被编译成DHMTL,SWF等格式。 是openmeetings视频会议系统的默认开发编译工具。

    openlaszlo计算器

    这是用Openlaszlo开发的计算器程序,可以实现基本的计算操作。 我是刚学openlaszlo,欢迎朋友们提出宝贵意见!

    Laszlo技术手册续

    1. **迁移编译环境**:为了在Struts应用中使用Laszlo,需要将LPS的相关组件库(lps文件夹)复制到Struts应用的上下文中。 2. **配置文件迁移**:从OpenLaszlo Server的WEB-INF目录中,将lib下的所有jar包复制到Web...

    论文研究-使用OpenLaszlo构建J2EE中的RIA程序 .pdf

    使用OpenLaszlo构建J2EE中的RIA程序,高春阳,龚群侃,当前,Web 应用程序就要进入了一个新的时期,富互联网客户端(RIA ,Rich Internet Application) 以其极大地用户交互性、优秀的外观设计、良好��

    OpenLaszlo-开源

    该项目的官方站点在http://openlaszlo.org,这是一个宝贵的资源库,包含了文档、示例代码和社区支持,对于学习和使用OpenLaszlo的人来说是非常有用的。 OpenLaszlo的核心是其基于LZX的声明式编程语言,这是一种类似...

    geoar:WMSWFS OpenLaszlo 客户端

    Geoar - WMS/WFS OpenLaszlo 客户端GeoAr 是 WMS 和 WFS 服务的富客户端实现。 它是在 LZX (OpenLaszlo) 上开发的,因此它向用户的浏览器提供 dhtml 或 flash,从而提供在它们之间进行选择的机会,但只有一个服务器...

    Openlaslzo+jsf

    ### Openlaszlo+JSF:SWF动画制作与Struts框架...通过以上步骤,就可以在Struts框架中充分利用OpenLaszlo的功能,从而实现复杂的SWF动画制作和丰富的用户交互体验。这对于开发高质量的Web应用程序来说是非常有价值的。

    Laszlo技术手册

    手册提供了创建动态基础效果、复杂动画以及自由拖放功能的方法,使开发者能够创造出丰富的用户体验。 在技术开发部分,手册探讨了OpenLaszlo的语法结构,包括两种部署方式、组件系统、事件处理、约束机制和动画。...

    改造OpenMeetings成为Flash视频会议室(三)

    对于不想深入学习OpenLaszlo的“懒人”,以下是一些简单的改造步骤,可以帮助快速定制OpenMeetings: 1. **移除邮件注册**:在服务器端的Usermanagement类中,将`this.registerUserInit()`方法的最后一个参数true改...

    spket1.6.18

    OpenLaszlo结合了XML和脚本语言,允许开发者使用单一的源代码在Flash和HTML5之间进行部署。Spket对OpenLaszlo的支持意味着开发者可以享受到与JavaScript同样的代码辅助功能,如智能感知、代码导航和重构,这使得...

    Laszlo与web工程

    LZX内部的跳转应使用 `LzBrowser.loadURL` 方法。 3. **调用Action** - 在LZX文件中,通过引入Action并设置参数来调用Struts Action。例如,使用 `<dataset>` 标签定义数据源,指向Action(如 `regAction.do`),...

    openmeeting安装

    由于其客户端采用SWF格式,无需额外安装,只需支持Flash的浏览器即可使用,这大大简化了用户的参与流程。 安装OpenMeeting之前,你需要确保计算机上已经安装了一系列必要的软件组件: 1. **Java JDK**: 首先,你...

    huoyan.zip_火焰识别c++

    如果这个项目与OpenLaszlo有关,那么可能是将C++编写的火焰识别算法集成到OpenLaszlo应用中,以提供更丰富的视觉体验。 文件列表中的“实例77”可能是一个示例项目或者代码片段,展示了如何使用提供的C++ API来实现...

    改造OpenMeetings成为Flash视频会议室(一)

    完成上述步骤后,你可以通过浏览器访问OpenMeetings,使用管理员权限进行管理,体验视频会议、白板绘图和桌面共享等功能。 改造OpenMeetings成Flash视频会议室主要是为了利用Flash的广泛兼容性和丰富的交互性,同时...

Global site tag (gtag.js) - Google Analytics