云计算开发战略个人一点简单见解

随着云计算越来越普及,许多企业开始考虑将系统开发/发布到云计算上,因为与传统软件开发/发布相比,云计算有着以下优点:

1. 降低基建成本。
2. 花费成本根据使用额度来计算。
3. 能够更快速的将软件产品推出到市场。
4. 能够更好的利用资源。
5. 提高系统开发的敏捷程度。

6. 提高系统自我扩展性和伸缩性。

现在在云计算市场上主要有三种平台可以选择,

1.  IaaS  (Infrastructure as aService) 基础架构服务。 顾名思义,基础架构服务给客户提供基建系统。客户不再需要自己组建自己的服务器组,网络系统,数据库系统。这些都可以由基础架构服务供应商来提供。
而且根据系统的实时运用,可以自动添加或者减少提供服务的硬件数量来达到运载和成本的平衡。现在国际上运用最广泛的基础架构服务供应商是AMAZON(亚马逊)的EC2。在普及方面,国内的一些云平台还有一段距离要赶。


2.  PaaS  (Platform as a Service) 平台服务。 所谓平台服务就是指云计算供应商提供了整个从系统开发到发布的平台。优点是所有需要的部件都已经整合在平台服务中了,因此技术开发组很快就能开始进行开发而不需要搭建开发平台。
当然随之而来的缺点就是系统移植性大大降低, 而且因为开发/运行平台是由云计算供应商设计,有些平台在开发过程中会有一些技术方面的限制。最典型平台服务之一就是Google的App Engine。可惜因为业界内众所周知的原因, Google的服务在中国大陆到现在还一直不是很稳定,损失了很大的市场。


3.  SaaS  Software as a Service) 软件服务。简单的来说云计算供应商提供了整个的解决方案,客户只需要使用供应商的解决方案。一个最好的例子就是Salesforce的CRM系统。

对于一个企业来说,根据自己的需求选择最适合自己商业模式的云计算平台非常重要。而正确选择哪一种云计算平台取决于企业本身的战略需要。对比来说,如果企业最主要的目标是尽快将产品推向市场,那么第一步就是寻求是否已经有云计算供应商提供了整个解决方案。
此时选择SaaS平台可以很快的实施解决方案。然而如果市场上还没有类似的产品,那么使用PaaS不失为一个好选择,企业不需要构建底层平台,也不需要太多的考虑如何构建基础框架。技术开发组可以迅速的开始根据需求更快的进入开发模式,整个流程也更加敏捷化。
当然,使用PaaS也是有代价的。比如说整个系统和平台的黏合性比较高,对于以后的系统移植会有一定的影响,而且一些平台的限制也会影响解决方案的具体实施。

当如果企业比较贴近传统化模式,对产品推出市场的时间要求不是那么急切,而且本身技术组有着足够的技术力量来构建整个框架的时候,IaaS也不失为一个很好的考虑。虽然对比其他两个云计算模式,IaaS对云平台管理的要求比较高,而且需要不同的管理人员 (比如系统管理员,数据库管理员),但是对于大中型企业来说,这些技术人员已经存在于企业中了,企业有足够的技术力量来管理IaaS平台。


云计算平台的可自我扩展性是企业选择云计算的一个主要目标。当选择云计算平台时,构架师或者技术人员必须考虑特定云计算平台的系统结构来确定扩展性是否符合将要开发/发布产品的需求。总的来说,云计算平台的扩展性一般有两种:

1. 垂直扩展: 所谓垂直扩展是指当系统压力增大时,平台的系统资源提高,包括CPU,内存等等。而服务器数量不变。

2. 水平扩展: 所谓水平扩展是指当系统压力增大时,云计算平台自动创建新的服务器,并且加入已经建立的服务器组。

在现今云计算平台上,分布式水平扩展在实际运用中占了大多数。对于某些有特定需求的系统来说,当选择云平台的时候云计算系统如何扩展是一个非常重要的考虑因素。


另外,架构师或者技术开发人员在开发/发布产品到云计算平台上,有几点也是需要仔细考虑的:

1.    如何保护数据。数据安全永远是云计算平台上的一个重要话题,建议对于储存在云计算平台上的敏感数据进行加密,在传输过程中使用SSL来进行传输。
2.    系统模块化设计。 在设计和开发过程中,尽量减少各个模块之间的黏合度,一方面整个系统便于修改和维护,另一方面,当某一模块成为整个系统的瓶颈后,可以对这个独立的模块实施扩展,而不需要整个系统进行扩展。
3.    数据备份。 根据不同的云计算平台,数据备份战略也大不相同。建议多个数据备份(包括数据本地备份或不同云计算供应商备份)以防止某个云计算供应商突然无法维持日常经营。
4.    快速访问数据。在云计算平台上,大量的数据会被输入输出。而且根据不同的云计算平台计费方式,大量的数据库操作和CPU使用会导致云计算平台费用的增加。因此对于不经常改变但是经常需要读取的数据一定要放入内存/缓存。这样一方面用户访问速度更快,另一方面平台计算费用也可以降低。
5.    系统崩溃。只要是人类设计的东西,100%的可靠性是几乎不可能的。当企业对系统的重要性和可靠性要求非常之高,可以考虑同时采用几个云计算平台进行整合服务。当一个云计算供应商不能够进行日常运作的时候,企业的核心系统不受影响的运行在另一个云计算供应商平台上。

作者华杰,  从事IT工作15年,做过程序员,首席软件工程师,架构师,IT技术顾问,现为澳大利亚移民和边境保护局Tech lead.
个人电子邮件: jhua04@outlook.com

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/402792/viewspace-2140313/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/402792/viewspace-2140313/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值