资讯专栏INFORMATION COLUMN

用做WPS的思路重写了一套私有云系统

Achilles / 1594人阅读

摘要:年初,金山启动私有云项目,该项目旨在为向金山提出了私有云网盘存储需求的政府大型企业以及中型企业提供服务,项目组由金山云杨钢牵头组建。中文站对杨钢进行了专访,了解其私有云服务的技术组成和业务状态。

2013年初,金山启动私有云项目,该项目旨在为向金山提出了私有云网盘/存储需求的政府、大型企业以及中型企业提供服务,项目组由金山云CTO杨钢牵头组建。InfoQ中文站对杨钢进行了专访,了解其私有云服务的技术组成和业务状态。

嘉宾介绍:杨钢,金山云CTO,首席架构师。杨钢曾历任金山办公软件公司技术总监、首席架构师、助理总裁。他2007年开始负责筹建互联网服务研发 团队,开展了包括云存储技术在内的多项新技术研发工作。其产品之一便是现在的金山快盘。在他的主导下,快盘推出了开放平台服务,目前已有腾讯(Web QQ)、康佳、创维、金蝶、小米等多个合作伙伴。2012年初金山快盘团队完成拆分时,他作为创始人之一成立金山云公司,现任金山云CTO。 杨钢在2003到2007年的四年时间里担任金山办公软件公司系统架构组长,主持WPS Office 2005(863重大专项课题)及后续版本架构制订和技术攻坚工作。从2008年开始,他又作为技术负责人,参与核高基重大专项《网络化中文办公服务平台 的研发及产业化》课题研发工作。在此期间主持完成了云存储、云计算框架等各个子任务。并推出了WPS Office Web、金山快盘等多个产品。

 

金山云私有云的模式是局域网/客户自建数据中心模式,还是在金山云的数据中心划分一块私有Zone的模式?

杨钢:我们的客户一般选择两种方式,一种是内网部署,另一种是部署在客户自己指定的机房,比如客户自己在电信机房租的空间。大型企业和政府客户都是采取内网部署机制,主要业务就是把公有云上的文档存储、分享、协作功能搬到局域网。

至于放在我们的数据中心私有Zone,目前是没有的。选择私有云的客户都要求环境的可控性,他们要求自己选机房,自己能够看见自己的设备。

 

你对私有云业务的观点是什么?几年内快速盈利的短期模式,还是可以有持续发展的业务?

杨钢:我认为私有云模式是目前比较清晰的可以盈利的模式,在未来两年的发展趋势会比较乐观,而且再往后的持续发展也是不错的业务。

很多客户都接受私有云的这种模式:

  1. 它跟卖软件不同:并不是一次性采购,初期采购价一般远低于传统软件。后续则通过支付服务年费来不断获得功能升级和产品维护。因为是存储型业务,客户对持续维护的需求很高,他希望供应商能保障持续提供服务的能力。
  2. 它跟公有云也不同:公有云的出发点是以低成本满足大部分用户的需求,而私有云则是通过人力来提供定制化服务的模式,精细化满足客户的具体需求。

为什么说私有云是可以长期持续的模式?我认为在很长一段时间内,大型企业对把数据放在公共网络上还是不信任的,尤其棱镜门事件之后,政府和中大型企业对公有云的心理障碍变大。私有云在很长一段时间内仍是办公领域的主流。

 

从技术层面,提供给私有云用户的软件跟金山云公有云的软件是否一致?定制化需求主要在哪些方面?

杨钢:因为上述私有云跟公有云的不同,所以两者在技术上的关注点也是完全不同的。公有云着重于在尽可能低的基础架构成本上提供一些通用性强的服务,而私有云的关注点则在于用较低的人力成本满足定制化需求。

就拿设备这个层面来说,公有云往往是一个专业运维团队管理集中在一起的大量服务器,我们用比较便宜的硬盘和服务器组成存储集群,依赖软件进行冗余, 同时运维人员的质量是很高的,而且就算多加一些运维,这个成本跟上万台服务器相比是不算什么的。而私有云的话,如果存储量不是特别大,我们都建议用户使用 专业存储设备,例如磁盘阵列。实际上,我们对客户那里的环境会做最保守的设计,因为客户那里有可能连机房空调这样的环节都无法保证,所以设备上会倾向于选 择最可靠的。顺便说一句,对存储量需求大的客户,我们有专门为私有云客户设计的私有云存储系统,从性能和架构上我们都有信心跟EMC的Isilon进行 PK,性价比更高。

由于两者之间在运营模式(通用 vs 定制)和设备上的区别,这就决定了在软件层面上,我们的私有云软件是重新开发的,没有直接拿公有云的软件来用。实现上当然参考了很多公有云的技术,但都是重新写的。

说到软件实现,这里还是很有意思的。金山私有云这套软件是在C++语言的基础上开发的,但服务端和部分客户端代码是使用我自己维护的一个叫做C--的编码风格实 现的。这个C--项目是我在06、07年那会儿做的,因为一直觉得C++程序员特别难找,甚至于我自己对C++的一些特性也会感到困惑,所以做的这个 C--是一个类似C#和Java的语言风格,仍然基于C++的编译器,工具和库跟C++都是共用的,可以无缝的进行跟C++的混合编程。这样做的好处在于 一般的程序员只需要一个星期的培训就可以上手,在性能上又有可媲美C++的优化空间,在开发效率和运行效率之间达成一个很好的平衡。当时本来是想用这个改 写WPS的,但是WPS的代码量太大,折腾的代价太大,结果用在了这个私有云项目上。

其实我觉得严格来说,私有云并不是互联网产品,而是软件产品。互联网团队和软件团队在研发思路、运营思路上是完全不同的。我本人之前是WPS的技术 总监兼架构组组长,后来做云,所以能够兼顾这两种不同的文化,这事儿说来也挺有意思的。而且因为我本人负责技术工作,所以两套技术上的共享可以协调,代码 之间可以互相借鉴,还能够根据实际情况做联合开发。

 

一般愿意做私有云项目的都是资金方面给的比较多的大客户,当然给客户做多带带的服务,成本是要比公有云高很多的。就你的经验,服务一个大客户,需要投入多少研发,多少运维,多少客服?

杨钢:我们目前提供的服务主要有三种:

第一种,面向大型企业和政府部门。这类客户的特点是定制要求非常多,尤其是在安全方面(这里的安全是指国家保密制度相关的安全功能)。公有云在这个需求上几乎没有覆盖,而私有云对保密要求是很多的。

不同的客户会有各种功能需求,而且要和客户本身的系统做深度集成。我们要给每个客户提供产品化的方案,那怎么办呢?我们做了一个非常弹性、灵活的引 擎,功能以插件的方式提供,融合到一个架构里面。因为客户持续支付服务费,我们都会提供免费升级的服务,这个升级的思路是给引擎升级,而插件不动。这样 子,客户可以不断获得新的功能,同时我们团队也不需要维护大量版本分支。这其实是Office和VBA的思路:Office的很多功能是固定的,但是加上 VBA就可以做出很多东西来。当然,这个技术实现难度是很高的。

因为有这样一套灵活的架构,涉及到定制化方面的插件代码量其实不多,所以架构成熟后,未来预期平均服务一个大客户只需要投入三个人就可以满足定制、运维、客服的需求。

第二种,面向中型客户。这类客户一般是民营的行业用户,对定制功能的需求很少,他们会问,跟他们同一行业的国有企业那边是怎么用的,直接抄过来一份用就可以。这类客户我们只需要投入运维和客服即可。

第三种服务是培训,就是要教客户怎么使用这套系统。培训一般是集中式培训,一般一个客户需要一两次集中培训。

 

所以,私有云的产品目前是一个什么状态?我们是用什么机制来做私有云软件的管理、持续集成、自动化测试、分支合并的?

杨钢:现在的版本我们叫做金山私有云2.0,这套引擎是从今年年初立项后开始开发的,现在功能开发已经完成,还在做界面美化、bug修正、测试等完善工作。有十几个客户已经在使用了。

为什么从2.0版本开始,这事儿说起来也挺有意思的。其实金山快盘团队最早是从珠海搬到北京的,当时有一部分人选择留在珠海,然后做了1.0版本。 今年我们团队在之前的经验上,重新设计架构开发了现在2.0版本。新版本较大的特色有三个:一是新加入的远程网盘客户端,不占本地空间,而且因为客户端没 有数据留存,可以提高安全性;二是为定制化而生的引擎加插件设计,可以大批量满足定制需求;三是提供了独立的集群存储产品,给需要大量存储的用户提供一个 高性价比的选择。

同时今年过年之后,我们会给所有1.0的客户进行升级,把客户也都合并到2.0上。

软件维护这一块,因为我们只定制插件开发,不定制引擎,所以引擎是统一开发维护的,这是大部分的代码量。插件代码量相对很少,把插件开发落实到各个小组上,每个小组维护几个插件。在软件开发管理上,基本上跟之前做WPS的方式是一样的。

 

 

 

 

本文转载自:http://www.infoq.com/cn/news/2013/12/wps-private-cloud

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/4068.html

相关文章

  • 100%移植阿里云移动测试技术,竟仅需1周?! ——移动测试专有云(1)

    摘要:无论是因为移动是企业内部应用无法外部使用,还是要求测试数据绝对私有化,专有云解决方案都可以支持。降低成本自动化测试技术减少手工测试工作量。 摘要: MQC专有云解决方案是MQC测试体系的完全移植版,目标是帮助客户短期内在搭建一套专业的、系统的自动化测试平台,实现测试服务、测试数据的完全本地化、私有化。无论是因为移动App是企业内部应用无法外部使用,还是要求测试数据绝对私有化,MQC专有...

    MiracleWong 评论0 收藏0
  • 腾讯云推FPGA云IP市场服务 助力FPGA云服务落地

    摘要:年月,腾讯云推出国内首款高性能异构计算基础设施,并致力于整个云服务生态圈的建设。基于此,腾讯云在市场上带来了一系列创新举措。图市场提供行业解决方案腾讯云云服务市场已在基因图片视频教育等行业和场景中落地。FPGA云服务,作为云计算产品中一种新型的行业解决方案,具有性能优越、开发便捷、计费灵活等红利,加之其具有低延迟,高吞吐等能力,在基因、人工智能、金融等计算密集型领域得到广泛使用。2017年1...

    defcon 评论0 收藏0
  • 云计算加速中国企业发展 华三通信演绎云计算未来方向

    摘要:在大会上,华三通信立足云计算发展趋势与挑战,全面介绍了华三通信云计算融合架构产品及解决方案,利用新技术,挖掘更多价值,推动中国企业快速发展。对于华三通信云计算未来演进方向,王玮表示,华三通信会朝技术生态交付三大方向迈进。    1月6日,杭州华三通信技术有限公司(简称华三通信)以云计算加速中国企业为主题,精彩亮相第十届中国IDC产业年度大典(IDCC2015)。在大会上,华三通信立足云计算发...

    Richard_Gao 评论0 收藏0
  • 100%移植阿里云移动测试技术,竟仅需1周?!——移动测试专有云(2)——架构详解

    摘要:云盒可以给智能设备提供稳定的电源供应网络环境安全保障,是智能设备接入云服务的载体,具有低成本,高可靠,安全性高的特点。每个云盒都是管理智能终端的最小单元,多个云盒之间可以完美堆叠,可以灵活适应各种复杂的机房环境以及各种规模的智能终端接入。 摘要: 移动测试的应用架构 作为一整个庞大的移动测试解决方案,MQC专有云系统内部包含了非常多的软硬件模块,整个系统紧密高效的互相连接稳定配合。从模...

    Bowman_han 评论0 收藏0
  • 100%移植阿里云移动测试技术,竟仅需1周?!——移动测试专有云(2)——架构详解

    摘要:云盒可以给智能设备提供稳定的电源供应网络环境安全保障,是智能设备接入云服务的载体,具有低成本,高可靠,安全性高的特点。每个云盒都是管理智能终端的最小单元,多个云盒之间可以完美堆叠,可以灵活适应各种复杂的机房环境以及各种规模的智能终端接入。 摘要: 移动测试的应用架构 作为一整个庞大的移动测试解决方案,MQC专有云系统内部包含了非常多的软硬件模块,整个系统紧密高效的互相连接稳定配合。从模...

    curlyCheng 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<