8月中旬,微软宣布将Powershell这个强大的工具开源并移植到了Linux等系统上,这一消息在业界引起不小的波澜。
事实上,这已经不是微软第一次向Linux倾斜了。早在今年年初,微软就发布了 SQL Server for Linux。3月,微软宣布将在2017年发布其旗舰数据库管理软件——Linux SQL Server。
正如此前微软 CEO 萨提亚·纳德拉所说,“微软热爱 Linux”!
Linux为何受青睐?
“出生”于25年前的Linux由芬兰电脑科学专业学生李纳斯·托沃兹(Linus Torvalds)打造。如今,它已成为世界上最重要的电脑程序之一。即使是不懂IT的普通人,Linux也常常伴在左右:手机、平板的操作系统通常是基于Linux构建的。全球知名的网站如谷歌、脸谱、维基百科等,其服务器全是基于Linux搭建。当今世界,用户生存在一个多平台、多重云端、多操作系统的世界,这样的世界带来了新的挑战──跨各种平台的工具需要能很好地在一起合作。
这一趋势无人能够抵挡。看吧,就连最初对Linux怀有敌意的微软也放下芥蒂,表示“微软爱Linux”。不管是真爱也好,顾忌也罢,Linux已经从最初的“下里巴人”荣登大雅之堂,得到越来越多用户的青睐。
Linux之所以如此所向披靡,业界将它的优势总结为“四高”:高性能、高稳定性、高安全、高性价比。
高性能主要体现在Linux对高并发的支持,可以使多个程序同时独立运行,对内存等硬件消耗远远低于Windows。
Windows用户早已习惯了蓝屏和重启,大型应用系统如果部署在Windows系统下经常需要重启设备,而部署在Linux上往往几个月也无需重启,在运行稳定性上Linux远远胜出Windows。
Linux的高安全性表现在:对读和写拥有权限控制、审计跟踪、核心授权等安全技术措施,由于其是开源的,系统漏洞能得以被很快发现并出现补丁,很少给病毒、木马或者黑客作乱的机会。
最后,由于Linux系统是开源和免费的,虽然有一些厂商通过提供商业版本的服务和技术支持收取费用,但总体来说,选择Linux比Windows具有更高的性价比。
正是因为拥有如上诸多优势,Linux正在占领越来越多的市场。而在移动端的出色表现,则让人们更是对其刮目相看。如今,Linux的触角已经延伸到智能手机、电视、电子阅读器甚至是汽车等领域当中。现在被火热讨论的自动驾驶汽车,其复杂的自动化操控程序也大量运行在Linux下。
GIS与Linux的故事缘起
Linux如此火爆,在GIS领域情况如何?
如果你不知道答案,那你就不能算是一个真正意义上的GISer。
二十世纪末本世纪初,随着Internet技术的兴起,软件模式出现了新的潮流:B/S模式(Brower/Server,浏览器/服务器)取代C/S模式(Client/Server,客户端/服务器)成为应用软件的首选体系结构。
这里有必要先插播一下B/S模式和C/S模式概念。
C/S:Client/Server(客户端/服务器端) 需要在本地计算机上安装,例如QQ。C/S模式开发是具有针对性的,对客户端有一定的要求,因此缺少通用性,移植性,业务变更不灵活,在维护、系统升级方面都有很大的麻烦而且兼容性较差,对于不同的开发工具,相互之间很难兼容,具有较大的局限性,新技术不便于使用。另外,它的开发成本较高,需要具有一定专业水准的技术人员才能完成。
B/S:Browser/Server(浏览器/服务器端)则无需本地安装,是在浏览器上运行的程序架构。B/S模式首先大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本;能有效地保护数据平台和管理访问权限,服务器数据库也很安全;而B/S结构最大的优点就是只要有一台能上网的电脑就能使用,客户端零维护。
对比看来,B/S模式显然比C/S更能代表未来发展潮流。而选择B/S模式,则要求将GIS软件功能从PC端重新转向服务器端。客户端计算机操作系统基本是Windows一统天下的局面;而服务器端操作系统则是Windows、Unix、Linux三分天下的格局。
在这种情况下,GIS平台软件光支撑Windows系统显然不够,跨平台迫在眉睫!
超图团队的选择
2001年,刚刚发布全组件式GIS平台软件SuperMap 2000的超图团队,开始审视这一问题。彼时,SuperMap 2000经历了4年的漫长研发终于发布,超图发展也刚起步,在技术上还处于追赶阶段,后续的产品服务尚且需要跟进,在这个时候要派分一半人力研发跨平台技术体系方案,这无疑是在团队内部投下了一枚重磅炸弹。
是保持原有技术线路继续前行,还是“换血”建设强大的跨平台技术?
据超图总裁宋关福所述,起初内部争议非常大。但是经过多轮激烈的争论,超图团队还是认清GIS应用跨平台是未来的重要发展方向,抓住这个机遇,有可能能改写GIS软件发展和应用的进程。
2001年起,超图团队正式提出了跨平台技术体系方案,即基于标准C++完全重构GIS功能内核,全部重写GIS平台的代码。
宋关福表示,回想起来,超图软件当初做跨平台选择标准C++全部重写GIS内核的方案,是开发代价最高的解决方案。虽然各操作系统都支持标准C++,但用标准C++“编写一次,到处编译”的特点使得开发跨平台软件远不如Java方便,不仅需要在每个操作系统上编译调试,而且不少跨平台的问题要自行处理,工作量非常很大。但采用标准C++编写内核,远远比采用Java编写的内核性能更高,能够支撑超大的GIS数据运行,非常流畅和稳定。
过程是艰辛而漫长的。超图软件从2001年开始启动跨平台计划之后,直到2005年才发布第一个版本的C++内核。在这期间,很多业界的朋友都在密切关注研发进展。“一些朋友说,没有看到成功的消息,还以为这个工作失败了”,宋关福回忆说,“但它的好处也非常明显的,让所有的操作系统都具有C++的高性能。在以服务器端计算为特点的云计算时代,高性能的跨平台GIS技术意义十分重大。 ”
云计算的发展也呼唤跨平台技术的支持。云计算有基于Windows的云,如微软的公有云和私有云,亚马逊提供的Windows版本公有云。但更多的云计算平台是基于Unix或Linux的,如IBM、红帽、谷歌等提供的云计算平台。因此,在云计算的建设和应用方面,选择的GIS平台软件必须支持多种操作系统。
历经十年的打磨,如今超图已推出一套完备的跨平台SuperMap GIS 基础平台软件体系,不仅能支持Windows,还能支持Linux和Unix等操作系统,为高端用户和大规模计算用户提供专业的GIS 平台支撑。
跨平台技术大有可为
目前,跨平台SuperMap GIS 软件体系已经成为SuperMap GIS平台的差异化优势之一。其最大的价值就在于让用户随心所欲在各个操作系统间灵活选用,而不是换一个系统就抓瞎。
跨平台SuperMap GIS 软件体系也得到了Linux和Unix用户的拥趸——很多在全社会对信息安全越来越重视的趋势下,IT界普遍认为Linux和Unix比Windows提供了相对更好的安全性。超图的跨平台SuperMap GIS 软件则满足了这一群体用户的需求。
现在,不只是GIS基础平台软件支持跨平台,在应用方面,超图应用事业群统计GIS系统、水利“一张图”系统、气象服务平台、环保“一张图”系统,以及专用事业部的相关系统等,都是基于Linux系统而构建,系统安全系数高,非常稳定。也就是说,从平台软件到应用系统,超图的跨平台技术体系已经非常成熟,能够很好地进行相应的支撑与开发。
对比一组超图2011年和2012年SuperMap iServer产品Linux版的出货量,也大概能说明一些问题:2011年同比增长56%,2012年同比增长1800%,可见Linux版出货量增长非常迅速,尤其在一些对安全和稳定性要求高的行业,比如:电力、金融、保险、通信、应急、气象、邮政、交通等等。2015年,超图SuperMap iServer产品Linux版出货量已占这一产品总体出货量的20%以上,并且还呈逐年增长态势。
可以预见,越来越多行业的GIS服务器会从Windows服务器转换为Linux服务器,部分客户还将采用Unix服务器。在云GIS应用中,这种替换比例将会更大。因此,回到文章开头所说,就连微软这样的巨头也开始大象转身,未来Linux大有可为,跨平台技术大有可为。