原先地图瓦片服务器采用的是arcgisserver发布的地图服务并进行切片,但ags发布的地图服务很占内存,发布太多的话服务器压力很大.再一个就是ags价太高了. 学习Nodejs之后,发现这是一个可以开发高并发服务器,类似游戏服务器.视频聊天服务器等.因此想如果用它来开发一个地图服务器也是一个不错的想法. 我的设计思路是这样的: 1)mongodb采用集合-文档来存储地图瓦片文件.在mongodb1.8版本以后文档最大可存储16MB,由于地图瓦片不可能太大,因此采用文档来存储而不是大文件存储方…
这篇主要说的是Google地图采用的投影方式,瓦片划分方式以及如何从给定的经纬度获取瓦片的数据的网址.所有资料均来自于网络,并亲自试验可行. Google地图投影 首先是地图投影问题,因为地球本身是一个球体,理论上不可能将球面展开成一个没有裂缝的平面(就像圆柱侧面可以展开成一个矩形,但是球面不可能展开成类似的无缝平面),因此需要采用投影的方式将地球展开成一张平面,方面使用者阅读.地图投影有很多种方法,来实现不同的应用目的(等角投影,等面积投影,等长度投影等),可以从地图学相关数据中进行了解.这里…
项目背景 最近有一个使用全球地图展示数据的项目,用地图展示数据本身没什么难度,但出于安全和保密的考虑,甲方单位要求项目不能连接外网,只能在内网使用,也就是说,我们不得不在内网中部署一个地图服务器,在这个地图服务器的基础上进行开发. 由于之前没有这方面的技术积累,在经过一番搜素和比较后,发现了几个解决方案. 不过,甲方不愿意再花钱购买任何第三方的软件和服务了,所以,我的解决方案就只能在开源方案中寻找了,商业的解决方案都被排除在外. 几个方案 GeoServer GeoServer是一个功能齐全,遵…
前言 本文讲解的是:做为前端开发人员,对服务器的了解还是小白的我,是如何一步步将 node+mongodb 项目部署在阿里云 centos 7.3 的服务器上,并进行性能优化,达到页面 1 秒内看到 loading ,3 秒内看到首屏内容的. 搭建的项目是采用了主流的前后端分离思想的,这里只讲 服务器环境搭建与性能优化. 效果请看 https://biaochenxuying.cn 1. 流程 开发好前端与后端程序. 购买服务器与域名 服务器上安装所需环境(本项目是 node 和 mongodb…
什么是地图瓦片? 地图瓦片是包含了一系列比例尺.一定地图范围内的地图切片文件.地图瓦片按照金字塔结构组织,每张瓦片都可通过级别.行列号唯一标记.在平移.缩放地图时,浏览器根据金字塔规则,计算出所需的瓦片,从瓦片服务器获取并拼接.地图瓦片,是一种改善地图浏览用户体验的优化策略. 随着测绘技术的发展,地图数据的体量越来越大,一般情况下,电子地图生成地图瓦片(以下简称切图)少则需要几天,多则一个月乃至更长时间.如何才能高效地生成地图瓦片,是众多技术人员共同关心的问题. 多任务切图原理 多任务切图是将地…
索引能够极大的提高查询的效率.在数据库中简历索引必不可少. 在MongoDB中可以很轻松的创建索引. 默认索引_id_ 开启MongoDB服务器,创建数据库cnblogs,创建集合Users .(关于这部分知识请看上一篇MongoDB开发学习(1)开天辟地,经典入门) 在shell窗口键入如下命令查询集合中所有索引: > db.Users.getIndexes() 从输出的结果我们可以看到,系统已经默认为Users集合创建了一个索引_id_. MongoDB在每个集合里有个默认的“_id”的“字…
推荐一个前端开发的使用服务器环境开源项目 D2Server 可替代Apache   攻欲善其事,必先利其器.前端开发,编辑器我们有了Sublime Text2,配置Server环境用……你可能会选择Apache,为什么呢?因为能供选择的选项实在太少.而现在,我向大家推荐一个针对前端开发页面而设计的服务器环境开源项目——D2Server. D2Server使用NodeJS编写的,所以基本可以通杀前端使用的系统类型.D2Server除了处理文件输出之外,还能辅助进行项目管理. 使用项目配置文件管理项…
一个实际项目(OA系统)中的部分功能.这个demo中引入了数据库,数据库使用了mongodb.安装mongodb才能运行完整的功能.要看完整的项目可以移步我的github 技术栈 React v15.6.2 react-redux redux react-router-dom webpack nodeJs mongodb axios 项目结构 ``` . ├─ exampleImg/ # 截图 ├─ note/ # 学习笔记 ├─ my-app/ # 源码目录(开发都在这里进行) │ ├─ co…
由于要在内网开发地图项目,不能访问在线的地图服务了,就想把地图瓦片下载下来,网上找了一些下载器都是需要注册及收费的,否则下载到的图都是打水印的,如下: 因为地图瓦片就是按照层级.行.列规则组织的一张张图片(如下图,14是瓦片的级别,13478是行号,6202是列号),所以想到可以试试用python把这些图爬取下来. 主要可以分为三步: 1.确定要下载的瓦片的级别,经度和纬度范围(可以通过百度坐标拾取获得,http://api.map.baidu.com/lbsapi/getpoint/index…
原文链接:结合MongoDB开发LBS应用 简介 随着近几年各类移动终端的迅速普及,基于地理位置的服务(LBS)和相关应用也越来越多,而支撑这些应用的最基础技术之一,就是基于地理位置信息的处理.我所在的项目也正从事相关系统的开发,我们使用的是Symfony2+Doctrine2 ODM+MongoDB的组合. 我们将这些技术要点整理成文,希望能够通过本文的介绍和案例,详细解释如何使用MongoDB进行地理位置信息的查询和处理.在文章的开头,我们也会先介绍一下业界通常用来处理地理位置信息的一些方案…