解决Flex4 发布后访问 初始化极其缓慢的问题
原文http://blog.163.com/vituk93@126/blog/static/170958034201282222046364/
昨天找了个免费.net空间,想测试一下做的一个简单Flex4 上传项目的效果。上传所有文件到网站之后,访问项目页面,进度条一点一点艰难的向前移动,到了100%后却不出现程序界面,等待一会儿还是没有出现,于是 我去做了别的事情,N分钟之后再来看的时候界面才终于出来了。程序倒是没有问题,可以上传文件。但是这慢到令人发指的初始化加载速度却令人吃惊,很难想象 如果用户需要等待这么长时间才能成功访问一个页面是多么可怕的事情。
在网上搜索发现也有朋友遇到了类似的问题,就是初始化太慢。有人评论说Flex4 不如3,还有说退回到flash吧。。我于是就怀疑flex4 是不是真的就是这么个速度。。当然,后来经过不断探索,发现Flex4也是可以很快的(不然谁还用flex4)。
今天早上先上传了个Flex3项目,测试一下速度,果然很快。。几秒钟就加载完毕了。而之前的Flex4
却依然缓慢。我突然想到去找找网上的Flex4
站,看看他们的速度怎么样,结果鼓舞人心,速度很快也是几秒钟的事er。那不可怀疑的,说明我们的程序(编译)还是有问题。
搜索找到了一
篇文章关于FLex 4 framework 框架加载的感受(http://docs.iteye.com/blog/521568
)然后又找到了Adobe的论坛So long time to download flex4
framework!!!(http://forums.adobe.com/message/2428795#2428795)弄明白了原因和解决方
案。之所以加载缓慢是因为在Flash
builder默认使用了RSL(运行时共享链接),Flex4为了加快加载速度使用了RSL,即把可以共享的框架、类库单独生成文件,并在请求时缓存到
Flash
cache中,这样只要是同域的Flex项目就都可以使用而不必重新加载从而加快了加载时间。而问题也恰恰处在这个默认设置上,这些共享文件的优先位置是
从Adobe的服务端上下载,正是这个请求下载过程造成了加载奇慢。解决的办法就是将这些文件的位置优先指向自己的服务器(本地),Flash
builder的Release 发布也可以生成这些文件,只要将这些.swz文件上传至服务器即可。
如何设置RSL路径。网上找了半
天,大多数是flex-config.xml,但这个是Flex3的,Flex4
默认是不使用这个文件了。在Adobe的帮助文档上找到了Customize the deployment location of the
framework RSLs(http://help.adobe.com/en_US/flex/using/WS2db454920
e96a9e51e63e3d11c0bf69084-7add.html)设置方法如图,
打开项目--属性--flex构建路径--库路径标签,点开
Flex4.1 选择framework.swc的链接类型--编辑--弹出库路径选项框。
可以看到默认的adobe的server路径在第一个,第二个是本地路径(要求与swf在同目录),将第二个调到第一位置(图中已调整)。当然也可以自定义路径,可以是相对的或绝对地址。点击确定保存设置。
这样依次设置
framework_4.0.0.14159.swz
osmf_flex.4.0.0.13495.swz
rpc_4.0.0.14159.swz
spark_4.0.0.14159.swz
sparkskins_4.0.0.14159.swz
textLayout_1.0.0.595.swz
(这篇文章也很有用http://devgirl.org/2010/04/08/framework-rsls-in-fl ex-builder-vs-flash-builder-performance-and-importa nt-info/)
最后点击项目--导出发行版,在bin-releas下可以看到生成的.swz文件,第一次要把所有的文件上传到网站,以后只要是同域的其他Flex项目指定好RSL路径,就不必再上传.swz文件了,这样大大减小了swf文件的大小,加快了加载速度。
到此解决了开始的问题,同时使得RSL的优点也得到体现。
解决Flex4 发布后访问 初始化极其缓慢的问题的更多相关文章
- 解决Jira和Confluence访问打开越来越缓慢问题
Jira和Confluence部署在同一台服务器上,跑一段时间后,发现访问jira和confluence时,打开越来越缓慢.这是因为根据主机物理内存不同,默认的java虚拟机内存也会不同(一个较低值) ...
- 引用静态资源的url添加版本号,解决版本发布后的浏览器缓存有关问题
在日常的工作中,我们经常会遇到页面文件(html,jsp等)中引用的js,css,图片等被修改后,而浏览器依然缓存着老版本的文件,客户一时半会看不到修改后的效果,同时也给生产环境的版本发布带来了一些问 ...
- maven项目发布后访问jsp页面报错
type Exception report message java.lang.NullPointerException description The server encountered an i ...
- IIS6.0发布后对路径“D:\xxx\xxxx\web.config”的访问被拒绝问题的解决方法
原来我本机发布后还是可以直接通过浏览器访问,这几天不知道怎么就不行,终于在网上找到解决方法 IIS发布后访问xxx/xxx/web.config路径被拒绝的问题截图如下: 解决方法: 1.在本地或服务 ...
- solr6.4.1搜索引擎(4)tomcat重启后数据加载缓慢或丢失
解决tomcat重启后数据加载缓慢或丢失 我们在首次全量导入和第二次增量导入数据都成功后,在研究solr过程中,会反复重启tomcat. 我们会发现在重启tomcat后,core的data目录下明明已 ...
- asp.net 发布后用IP访问正常,用机器名访问布局出错
问题如题[发布后IP访问正常,用机器名访问布局出现问题] 出现此问题的原因:IE文档模型发生变化,比如ip访问时IE文档模型为:IE10,换用机器名访问时,文档模型变为IE7 解决方法:设置默认IE版 ...
- 为 VUE 项目添加 PWA 解决发布后刷新报错问题
为什么要给 VUE 项目添加 PWA 为什么要添加?因为不管是部署在 IIS,还是 nginx,每次应用部署后,再次访问因为旧的 js 已经不存在,所以页面访问的时候会整个报错,报错的结果就是一个白屏 ...
- ASP.NET MVC 发布后 IE 访问出现布局错乱问题
ASP.NET MVC 网页debug启动跑一切正常,[Chrome],[FireFox],[Edge],[IE11] 发布后,使用机器名访问,[IE11]出现布局不正常的问题, 在head里:加↓可 ...
- dedecms 后台发布后的文章不能编辑出现一片空白的解决办法
dede后台无法写新文章也无法编辑以前的文档,文章编辑的地方无法写入,出现无法显示该页面的问题,这是怎么回事?我的dede在ftp中换过文件夹,是不是跟这个有关?该如何解决这个问题? 以下修改是针对d ...
随机推荐
- 制作与使用静态链接库(.lib)文件
(一)制作.lib文件 (1)打开vs,选择“新建项目”,选择“Visual C++“,选择”Win32 控制台应用程序“. (2)点击”确定“,点击”下一步“,设置如下 (3)点击”完成“,然后就可 ...
- iOS的推送机制APNs:本地推送&远程推送
本地推送: 本地推送主要应用在备忘录,闹钟等本地的,基于时间定时的消息提醒.本篇不做详细描述. 远程推送:APNS(苹果推送通知服务) iOS远程推送机制的原理及流程: 注册推送(橙色部分):若该Ap ...
- spring 源码之 ioc 容器的初始化和注入简图
IoC最核心就是两个过程:IoC容器初始化和IoC依赖注入,下面通过简单的图示来表述其中的关键过程:
- Application Loader下载安装和上传IOS app程序
如果您安装了最新版的XCode开发环境.对于在4.2及以上版本,Developer/Applications/Utilities目录中已经有ApplicationLoader程序,无需执行以下单独安装 ...
- php页面相互调用的知识点
目前我们有这样一个需求: (1) a.php 页面要使用 b.php 定义的函数,我们可以使用 如下指令 require require_once include include_once 举 ...
- verilog中阻塞复制,非阻塞复制,顺序块,并行块之间的关系
这几个概念是不一样的 顺序块:顺序块中的语句是按顺序执行的,每条语句中的延迟值是与其前一条语句执行的仿真时间有关. 并行块:并行块语句是并行执行的,它里面的每条语句中指定的延迟值都是相对于语句块开始执 ...
- 提示text还能输入多少字节
1.添加jQuery自定义扩展 $(function($){ // tipWrap: 提示消息的容器 // maxNumber: 最大输入字符 $.fn.artTxtCount = function( ...
- B. Wet Shark and Bishops(思维)
B. Wet Shark and Bishops time limit per test 2 seconds memory limit per test 256 megabytes input sta ...
- 【G-BLASTN 1.0正式发布】
[G-BLASTN 1.0正式发布]G-BLASTN使用GPU来加速NCBI-BLAST里的BLASTN模块,单块GTX780比四核CPU平均快6倍. http://www.comp.hkbu.edu ...
- SurfaceView 和 View 区别
android.view.View 和 android.view.SurfaceView SurfaceView 是从 View 基类中派生出来的显示类,直接子类有 GLSurfaceView和Vid ...