本文以Flex直接加载Shp、DWG和MDB为例。

首先看一份现估测数据:

1)  加载Shp文件,目前直接由前台Flex代码完成;

图1 在ArcCatalog里面的Shp文件

图2 直接在前台加载后的Shp文件

结果显示:

Shp文件

大小

加载时间

Shp1

50kb

约3s

Shp2

750kb

约10s

分析:未用后台开发,直接使用前台Flex对SHP开放数据加载,省去通讯时间,速度快捷,速度与客户端配置成正比。

说明:直接加载使用了LibertyGIS.swc组件。

2)  加载Dwg文件,后台开发Web服务,部署发布调用

图3 ArcCatalog里面的Dwg可视化                                        图4 Flex前台加载后的可视化

 结果显示:

Dwg文件

大小

加载时间

dwg1

50kb

约10s以上

分析:后台VS开发,使用了ArcGIS组件及转换方法,最后发布成服务前台调用,本机测试加载速度明显慢;

3)  加载MDB文件,也是后台开发Web服务

图5 ArcCatalog里mdb中要素

图6 Flex前台加载的MDB中的要素

结果显示: 

MDB文件

大小

加载时间

mdb1

1M

20s以上

分析:后台VS开发,使用了ArcGIS组件及转换方法,将图形数据转为轻量的Json/String数据然后传输到前台,速度随MDB大小成反比,而且并发会影响服务器运行。

总结:

加载Shp由于采用的是前台语言,比较快捷,很多基于Flex/Silverlight/JS的GIS系统都有直接加载Shp的功能,比较实用;

加载Dwg和Mdb采用了ArcGIS组件技术,并发布成Web服务,需要服务器后台与前台通讯联合,数据量一大就会出现地图卡死,加载慢,这是通用的弊端;

由此:

BS端GIS运用一般采用的直接发布地图服务的方式,不管什么数据统一使用地图服务转而使用图层的方式来加载,是最便捷快速的;

直接加载一些GIS数据适用于:局域网单独的小型的GIS格式文件,带有少量的属性数据,以便捷查看为主;大量(超过100M)的直接加载不符合BS开发的方式,BS端向来只以发布展现为主, 目前可继续测试在高配置服务器上加载多大文件比较适宜。

算法改进:目前从SOAP的协议以轻量的Json/String来实现,速度还是不尽如人意,可找寻替代开发技术或地图展现方面着手。

说明:测试速度以机子配置有关,本次测试以一般的普通机子为测试,速度较慢,配置好的机子速度会快,但理论思维可参考。

  分析内容与结果仅供参考。

Web前台直接加载GIS格式数据分析的更多相关文章

  1. Web Api试图加载格式不正确的程序,解决方法

    Web Api试图加载格式不正确的程序,错误如下: 问题原因: 出现上述问题的原因是,所加载的程序集中有32位的,也有64位的,IIS 7 程序池 在Windows下.Net FrameWork是64 ...

  2. 如何实现通过Leaflet加载dwg格式的CAD图

    前言 ​ 在前面介绍了通过openlayers加载dwg格式的CAD图并与互联网地图叠加,openlayers功能很全面,但同时也很庞大,入门比较难,适合于大中型项目中.而在中小型项目中,一般用开源的 ...

  3. web.xml文件加载顺序

    1.启动一个WEB项目的时候,WEB容器会去读取它的配置文件web.xml,读取<listener>和<context-param>两个结点. 2.紧急着,容创建一个Servl ...

  4. web.xml 的加载过程

    初始化过程: 在启动Web项目时,容器(比如Tomcat)会读web.xml配置文件中的两个节点<listener>和<contex-param>. 接着容器会创建一个Serv ...

  5. Web Service无法加载协定为“ServiceReference1.xxxxxx”的终结点配置部分,因为找到了该协定的多个终结点配置。请按名称指示首选的终结点配置部分

    Web Service 无法加载协定为“ServiceReference1.xxxxxx”的终结点配置部分,因为找到了该协定的多个终结点配置.请按名称指示首选的终结点配置部分   原因是在web.co ...

  6. web.xml 配置 加载顺序

    web.xml 的加载顺序是:context-param -> listener -> filter -> servlet . 过滤器执行顺序是根据filter-mapping ,不 ...

  7. VS2010 需要缺少的web组件才能加载该项目

    到的问题是解决方案中部分项目无法加载, 提示需要缺少的web组件才能加载该项目,是否通过WEB安装组件来网络安装, 点击确定以后就什么也没有了. 到微软网站去下载Microsoft Web Platf ...

  8. 使用getJSON()方法异步加载JSON格式数据

    使用getJSON()方法异步加载JSON格式数据 使用getJSON()方法可以通过Ajax异步请求的方式,获取服务器中的数组,并对获取的数据进行解析,显示在页面中,它的调用格式为: jQuery. ...

  9. web.xml组件加载顺序

    在配置项目组件的过程中, 了解Tomcat加载组件顺序很有必要. 例如某些框架如Quartz的集群功能需要数据库的支持, 数据库的加载肯定要在框架组件加载之前. 经过查阅和Debug发现, web.x ...

随机推荐

  1. linux服务器下添加字体

    版权声明:本文为楼主原创文章,未经楼主允许不得转载,如要转载请注明来源. 引言:这两天在开发一个动态生成海报的东西(图片拼接,图片水印),开发在windows下没有问题,图片和文字都能正常的生成出来. ...

  2. 服务器间打通ssh无密钥

    1 打通无密钥 配置HDFS,首先就得把机器之间的无密钥配置上.我们这里为了方便,把机器之间的双向无密钥都配置上. (1)产生RSA密钥信息 ssh-keygen -t rsa 一路回车,直到产生一个 ...

  3. 一千行MySQL学习笔记

    以下为本人当年初学MySQL时做的笔记,也从那时起没再更新过,但还是囊括了基本的知识点,有时还翻出来查查.是不是干货,就看亲们了~ 如果哪天笔记有更新了,我还是会更新该文章滴,其实笔记已经放到了Git ...

  4. zedboard如何从PL端控制DDR读写(七)

    前面已经详细介绍了从PL端如何用AXI总线去控制DDR的读写,并且从AXI_BRESP的返回值来看,我们也是成功写入了的.但是没有通过别的方式来验证写入的数据的话,总是感觉差了点什么. 今天试了一把从 ...

  5. objective c, category 和 protocol 中添加property

    property的本质是实例变量 + getter 和 setter 方法 category和protocol可以添加方法 category 和 protocol中可以添加@property 关键字 ...

  6. css设置中文字体(font-family:"黑体")后样式失效问题

    做项目时偶遇的一诡异问题,同样的代码,在ff和IE7以上页面显示正常,但IE6无论怎么改都不起作用,本来以为是IE6的某些浮动bug所致,结果弄了很长时间也不行,后来不经意间把原来设定的font-fa ...

  7. 动端逐渐出了许多的移动端的框架,比如Sencha Touch、JQTouch、Jquery-moblie、jqMobi等等。这些框架都有优缺点,不同的框架应用在不同的项目中。现简单阐述一下各框架的优缺点:

    移动前端工作的那些事---前端制作之微信小技巧篇   (2013-11-15 15:20) 转载▼ 标签: it css3/javascript html5 webapp 手机网站搭建 分类: 前端制 ...

  8. C#获取操作系统是32位或64位的代码

    注意需添加引用System.Management) public static string Distinguish64or32System() { try { string addressWidth ...

  9. __iter__

    [__iter__] 如果一个类想被用于for ... in循环,类似list或tuple那样,就必须实现一个__iter__()方法,该方法返回一个迭代对象,然后,Python的for循环就会不断调 ...

  10. [转载] Genymotion 解决虚拟镜像下载速度特别慢的问题

    本文转载自: http://blog.csdn.net/qing666888/article/details/51622762 Genymotion号称Android模拟器中运行最快的,但是服务器在国 ...