一个使用Ruby on Rails开发LBS网站的简单实例(5)

FTP地址:ftp://www.linuxidc.com

用户名:

密码:

在 2011年LinuxIDC.com\7月\使用Ruby on Rails开发LBS网站初探示例代码

下载方法见这里

8.1 安装并配置RoR环境

1) 下载InstantRails-2.0-win.zip:

       

2) 解压到 C:\ 下. 主目录名默认为:C:\InstantRails-2.0-win\InstantRails.exe

3) 此步可以忽略,下面的cpy-mysql-db.bat批处理中执行了这个过程:复制libmySQL.dll. 开始->运行 cmd:

        copy C:\InstantRails-2.0-win\mysql\bin\libmySQL.dll C:\InstantRails-2.0-win\ruby\bin\

4) 运行 C:\InstantRails-2.0-win\InstantRails.exe, 如果提示Apache端口被占用, 如下图:

一个使用Ruby on Rails开发LBS网站的简单实例

图11:Apache端口错误消息

编辑修改下面的文件:

        C:\InstantRails-2.0-win\apache\conf\httpd.conf
将80改为81
        Listen 80=>81
        ...
        Port 80=>81

8.2 部署gis网站1) 把gis.rar解压到 C:\InstantRails-2.0-win\rails_apps\ 目录下, 运行下面的批处理文件:

一个使用Ruby on Rails开发LBS网站的简单实例


        C:\InstantRails-2.0-win\rails_apps\gis\cpy-mysql-db.bat
    这样我们的gis站点和MySQL数据库就部署好了.

2) 启动gis网站. 运行 C:\InstantRails-2.0-win\InstantRails.exe

一个使用Ruby on Rails开发LBS网站的简单实例


图12:InstantRails主界面

选择[I.]->Rails Applications->Manage Rails Application...,弹出下面的对话框,左边勾选 gis 检查框, 右边按 Start with Mongrel 启动gis网站服务。

一个使用Ruby on Rails开发LBS网站的简单实例

图13:Rails程序管理器

3) 打开浏览器, 输入网址 :3000/:3000/,即可看到网站主页.

一个使用Ruby on Rails开发LBS网站的简单实例


图14:gis网站主页

8.3 使用gis网站打开2个浏览器A和B, 都定位到网站主页: :3000/

1) 浏览器A(IE7)模拟GPS点生成过程

按浏览器A的页面上部的 Draw Point 按钮, 然后在地图上的某个位置处点击, 再按页面上部的 Sumbit 按钮, 即把当前的记录提交到了后台数据库, 过几秒, 就可以看到这个黑点出现在地图上的点击处, 同时右边的表格中多了一条记录.

一个使用Ruby on Rails开发LBS网站的简单实例

图15:模拟生成GPS点的过程

2)浏览器B(FireFox5)模拟监控者的画面

对于浏览器A中的操作, 5秒之后都会出现在浏览器B的主页上. 反之亦然.

一个使用Ruby on Rails开发LBS网站的简单实例


图16:模拟监控者届面

9 关于Ruby、RoR的一些展望 本文写作时采用的是Ruby1.8.6和Rails2.0.2。显然这个版本已经过时了。但是因为InstantRails的存在,这个版本对于初学者特别合适。

Ruby是一门特别简单而功能强大的解释型语言。它一经推出,即风靡了整个业界。它是一个解释型语言。在脚本语言家族中,早期的Ruby版本,据说速度较慢。对于高性能、高度保密的需求上,可以用C语言的库来扩展它。2009年1月30日,ruby 1.9.1的正式版本如期发布! 1.9.1是ruby 1.9系列以来的第一个production ready的版本,这也标志着Ruby社区从此迈向了1.9的时代。ruby 1.9是ruby发展历史上的一个里程碑版本:

    1)ruby 1.9首次引入字节码即时编译技术,可以大大提高ruby本身的性能。根据之前的综合评测来看,1.9的性能大约是1.8.6的三倍左右,性能追上了Python

    2)ruby 1.9正式支持内核多线程机制,可以大大提高ruby作为服务端程序的并发处理能力。

    3)ruby 1.9还引入了纤程这样的多任务并发处理机制,提供了轻量级并发处理能力。

因此,Ruby的一门很有潜力的新语言。Ruby on Rails(RoR)是近几年开始流行的新一代Web开发框架语言,其易用、敏捷的特性受到很多Web开发人员的瞩目。Rails是基于Ruby之上的开发动态Web的首选框架。在Web2.0时代,RoR是快速开发RIA应用的首选语言。RoR尤其适合于快速架构跨平台的各种类型的Web网站、开发云计算平台的RIA入口等等。

Ruby可以用于书写RoR的服务页面程序;也可以用Ruby脚本管理网络、服务器;Ruby也用于对象胶,组合各种系统服务、功能模块等等。

RoR结合Nginx(Nginx已经成为世界第三大Web服务器)在Linux平台上,可以以极小的代价开发和部署支持海量并发请求的、高性能的、可扩展的网站和云计算服务。利用C语言扩展Ruby后台模块,利用多核、异步、线程池等技术,可以满足高可靠性、可扩展性、服务逻辑隐藏等需求,同时使实现异步的、长时间、高负载的Web后台运算或云计算服务成为可能。
附录1: gis 主页源代码清单15: ...\gis\app\views\home\index.html.erb

附录2: 参考文献1) AgileWebDevelopmentWithRails-3rdEd.pdf
2) building_dynamic_web_2.0_websites_with_ruby_on_rails.pdf
3) OReilly.Ajax.on.Rails.Dec.2006.chm
4) Enterprise Integration with Ruby - A Pragmatic Guide.pdf
5) OReilly.Dojo.The.Definitive.Guide.Jun.2008.pdf
6) ArcGIS JavaScript API开发—初级篇_白明.pdf

全文完 作者:张亮

linux

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://127.0.0.1/wyyssx.html