云计算无处不在,它极大地改变了信息的存储和共享方式。云计算迫使组织采用新的商业模式,而团队必须重新创造他们开发和交付应用程序的方式。在本文中,我将提供您为什么应该在计划创建和部署云应用程序时考虑 IBM Bluemix 的十大理由。通过移动和 Web 应用程序的广泛支持,Bluemix 为您提供了开发下一个绝妙想法所需的所有服务。
1. 云计算是主流
越来越多企业开始迁移到云中,以实现更好的灵活性、降低成本和实现 IT 创新。云计算(云)包括三个主要的层。
基础架构即服务 (IaaS) 是基础层,这里的基础指的是硬件、存储和网络功能。
平台即服务 (PaaS) 构建和交付云应用程序的中间层。
软件即服务 (SaaS) 是顶层,为消费者提供业务服务。
IBM Bluemix 是一个云平台,用于构建、运行和管理应用程序。在 Bluemix 上,移动和 Web 开发人员可以轻松地组合使用来自 IBM 或第三方供应商的现有服务。
作为 Bluemix 的一部分,团队可以使用 Bluemix DevOps Services 在可扩展的开放式集成环境中迅速开发。这种 SaaS 支持协作式规划、持续集成和持续交付,帮助您在云中创建更好的应用程序。
Bluemix 以 Cloud Foundry 为基础,后者是一个开源的 PaaS。该层提供中间件服务,比如数据管理、集成,或工作负载管理。Bluemix 提供企业级服务,可以轻松地与云应用程序集成。Bluemix 还促进和加速了云基础架构(存储、网络、集群、虚拟化等)的配置,使开发团队再也不必担心管道(硬件,存储)。他们可以集中精力解决真正重要的问题:向其客户提供业务价值。
2. 微服务架构
微服务架构 是一个软件架构样式,其中的复杂的应用程序由独立部署的小服务组成。微服务的主要思路是要将单一应用程序拆分成细粒度、松耦合的服务,以便实现更好的灵活性、可部署性和可扩展性。在下图中,您可以看到当组织从单一应用程序迁移到细粒度的微服务,实现更容易的横向扩展时的情况。
3. 丰富的可重用服务目录
0
软件复用是一种很好的节省时间的方式。开发团队想利用其他人已经创建并测试过的资产。通过其目录,Bluemix 提供可重用的服务,以组成或扩展云解决方案的功能。该平台可帮助团队增强其应用程序的安全性、消息传递、事务或集成服务。
在撰写本文时,该目录包含来自 IBM、第三方供应商或云社区的超过 75 项服务。如果您需要构建一个 Web 应用、移动应用(iOS 或 Android)或混合云的解决方案,您会发现有很多的服务可供使用。您需要数据或大数据管理吗? Bluemix 针对不同需求(SQL DB、NoSQL DB、大型分布式存储)提供多个选项。也许您有安全问题。使用扫描服务来查找您的应用程序中的漏洞。您想连接设备或利用认知功能吗?那么,您可以考虑 Bluemix Internet of Things 功能和不同的 Watson 服务。
无论您的目标是什么,Bluemix 都可以为您提供一组丰富的服务,让您方便快捷地交付应用程序。
4. 与 IBM DevOps 方法一致
IBM DevOps 是实现持续软件交付的一种企业功能,使组织能够专注于创新,并加快软件交付。为了让交付过程变得更快、更高效,IBM DevOps 对规划、开发和测试、部署,以及运行应用程序提供了实践建议。
Bluemix 支持整个应用程序生命周期。它为持续规划、协作开发和测试、持续部署、监控和优化提供了服务。有了 Bluemix,您就拥有使用精益和敏捷原则的持续软件交付云解决方案。IBM DevOps 提供了四条采用路径,让您可以让持续软件交付的产品更快上市。
四条 IBM DevOps 采用路径
- 支持混合云战略
大多数组织不会将所有环境都迁移到云中。他们可能会决定让某些系统保持在本地物理服务器上(内部),这样做可能基于安全因素,或网络限制。或者仅仅是因为团队还没有准备好迁移它们。这意味着,混合云是很多组织的实际需求。混合云依赖于内部部署和云服务的组合,以及两个平台之间的协作。
Bluemix 提供了多种模型来支持混合云:
Public 选项提供了在公共云中开发应用程序所需的灵活性。
Dedicated 选项提供由 IBM 托管和管理的私有云所具备的更高安全性和控制水平。
Local 选项(在 2015 年夏季推出)是防火墙后面的一个私有云,适用于最敏感的数据。
通过集成服务,您可以让云应用程序随时与在内部运行的记录式企业系统连接。Bluemix 提供适合您的混合需求的所有云选项。
混合云的公共云、私有云和内部部署解决方案
6. 云中的全面协作环境
云计算和微服务架构提供了大量的重要好处(灵活性、重用和粒度)。但它也产生了新的挑战,特别是随着时间的推移,需要部署、维护和集成多个版本的服务。团队需要一个强大的环境实现高效协作,并交付高质量的应用程序。
利用 IBM Bluemix DevOps Services,您的团队可以在一个地方开发、跟踪、计划和部署软件。您可以从自己的项目访问所需的一切,以构建所有类型的应用程序。在构建应用程序之后,可以将其部署到 IBM Bluemix 云平台。IBM Bluemix DevOps Services 提供了以下核心功能:
通过 Track & Plan 服务实现敏捷规划
一个用于从 Web 浏览器编辑和管理源控制的 Web IDE
通过 Git、Jazz SCM 或 GitHub 实现源控制管理 (SCM),
通过 Delivery Pipeline 服务实现自动化的构建和部署
有了这样一个强大的协作环境中,您可以在几分钟内从运行源代码转换到运行云应用程序。在下面可以看到这四个主要的 IBM DevOps Services 功能。
四个主要的 IBM DevOps Services 功能
- 开发团队的灵活性
正如所有组织都不会将他们的系统迁移到云中那样,所有的开发人员都不会只使用 Web 浏览器来构建和交付应用程序。有些团队可能更喜欢在自己的桌面上的本地环境中执行其开发活动。
如果您的团队目前在使用 IBM Rational Team Concert™,可以很容易地连接到 Bluemix DevOps Services 项目。您可以从自己的桌面访问源代码和您的团队所创建的不同工作项目,以便跟踪工作和进度。
您还可以从任何 Eclipse 客户端连接到 Bluemix,并将您的 JavaScript、WAR(Web 归档)、EAR(企业归档)文件和 Liberty Profile 打包的服务器部署到 Bluemix 云。
不过,一些团队成员在使用他们喜欢的文本编辑器和一组命令行时可能会更高效。Bluemix 也支持这种做法。您可以使用 Cloud Foundry 命令行界面来修改应用程序、服务实例和服务绑定。您还可以使用一个简单的文本编辑器来编写代码。
除了云中的全面协作环境 (Bluemix DevOps Services) 之外,团队还可以在本地工作,使用 Rational Team Concert、Eclipse 环境,或者一个简单的文本编辑器。在同一个项目中,有些成员可以完全在云中工作,而另一些人可以仍然使用他们首选的本地环境。
多个客户端连接到 IBM Bluemix
- 多语言编程
微服务的一个优势是,您可以使用多种编程语言编写应用程序。利用暴露为 REST API 的服务,对使用相同的技术来开发它们并没有限制。您可以混合语言,针对自己需要解决的每一个问题分别采用最适合的语言。
Bluemix 提供了一组运行时,您可以用您首选的语言执行应用程序。Java、Node.js 和 Ruby 是其中一些选项。如果创建移动应用程序,有很多平台可供选择,其中包括 iOS 8、Android、混合或 JavaScript。
利用 Bluemix,您可以组装由不同的团队采用不同的编程语言开发的服务。
IBM Bluemix 的可用运行时
运行时并不限于上述所示那些。随着时间的推移,更多编程语言将得到支持。IBM 刚刚宣布了在 Bluemix 中对 ASP.NET 5 的实验性支持。如果您找不到自己想要的语言,你可以使用 构建包(buildpack) 功能,将您自己的运行时带到 Bluemix 上。多语言编程是很多组织的需求,Bluemix 使多语言编程在您的云解决方案中成为现实。
- 在几分钟内完成应用程序原型
作为一个开发人员,您知道被卡住会多么令人沮丧,因为您必须等待环境完成配置。您已经完成了一段代码,但您不能完全测试它,因为服务器还没有准备好。或者您能够部署,但还没有配置好的数据库,所以无法支持您的需求。
有了 Bluemix,那些日子将会一去不复返了。您可以在几分钟内设置和配置好您的开发环境。需要一台服务器来实现部署,还需要一个消息传递系统或数据库来测试您的代码?不用担心,只需要将相应的服务添加到您的 Bluemix 仪表板,就可以立刻开始使用它。
将多个服务绑定到一个云应用程序
有了 Bluemix,创建开发环境和原型活动从来没有如此容易过。只需单击几下鼠标,将您选择的数据库添加到您的环境中,并立即使用它。如果在云中需要一个业务规则引擎、消息提供程序,或 Java 应用程序服务器,过程也是相同的。
您甚至可以更进一步,自动化完整 Bluemix 环境的配置。试想一下,您有一个应用程序想与他人分享。部署到 Bluemix 服务使这个操作很容易。只需单击一下鼠标,Bluemix 用户就可以复制您的项目,克隆您的源代码库,创建一个交付管道并部署应用程序。
只需一次单击,即可完成项目的创建和部署
10. 轻松部署
就像所有的开发团队那样,那些开发云应用程序的团队需要经常部署和测试。将应用程序推送到云计算的过程必须快速简单。
Bluemix 提供了许多不同的选项来部署云应用程序,从基本的命令行 (Cloud Foundry cf push) 到高级的 Delivery Pipeline。
利用 DevOps 管道,您可以自动化构建和部署,以支持持续集成和持续交付。您可以配置环境,交付给团队存储库的代码变更会自动被构建、测试和部署,这只需几个步骤。
构建、开发和生产阶段
DevOps 方法强调软件开发人员和系统运营团队之间的协作。Bluemix 支持所有 DevOps 需求,使得部署到云中变得轻松而又高效。
结束语
本文向您介绍了使用 Bluemix 和 Bluemix DevOps Services 的十大理由:
云计算是主流
微服务架构
可重用服务目录
与 IBM DevOps Services 方法一致
综合的协作环境
支持混合云战略
开发团队的灵活性
多语言编程
在几分钟内完成应用程序原型制造
轻松部署