中国IDC圈12月14日报道,在JavaOne大会上,Pivotal的首席技术专家Mark Heckler介绍了一些快速在云计算中开发新的物联网(IoT)应用程序的最佳实践。他的做法让我们更容易地尝试不同的用例,一旦其商业价值得到证实,我们就可以具体实施。

作为一个例子,Heckler解释了如何为一个可再生能源监控和控制应用开发基本框架。他为他位于圣路易斯的房子开发了一个基本框架,但是同样的原理也可被应用于可在云计算中快捷部署的多种物联网应用中。

其关键在于创建一个软件开发工具链,这个工具链可以尽可能地为物联网设施和云计算后端实现代码生成自动化。Spring Boot 将有助于引入各种各样的服务以供通信、监控、数据库以及应用程序逻辑等应用使用。这个初始模板可被传输至Cloud Foundry以便于为在云计算运行的不同服务器平台自动生成代码。

确保物联网物理端的简单化

虽然物联网的物理端在开发物联网应用程序中只占据了二成,但它却是非常重要的。工程师和架构师需要密切关注后端物联网软件,Heckler说。这恰恰正是其大部分价值的来源之处。

在物理端,Heckler建议其物理基础设施应当是易于快速配置的。一个最小的物理和逻辑组件都应支持良好的可靠性、沟通方案和标准。例如,Heckler的能源监控应用使用了一个包括Arduino板、Raspberry Pi网关以及供通信使用的无线网络连接和WebSockets协议在内的物理基础设施。

Heckler表示,为设备思考如何提供足够的性能而不是最佳的性能将是非常重要的,这是因为更高的性能表现往往需要更强的处理能力和提高端点的复杂性。这一策略意味着大部分的繁重处理任务都需要在云计算中完成。Heckler说,Arduino平台是用于验证概念设计的一个不错选择,但是它缺乏低成本的通信能力。他推荐使用Raspberry Pi作为节点,因为它支持Linux和Java,而且它还具有较好的低成本通信方案。

关注标准

Heckler说,你应当尽可能地基于现有支持标准的基础设施和工具来开发云计算物联网应用程序。Heckler展示了他是如何能够通过使用Cloud Foundry来快速地开发出一个云计算应用程序环境,从而在基于云计算的门户网站、节点和独立物联网设备之间确保交互通信都可通过REST和WebSockets实现。

Heckler使用这种方法在很短时间内就完成了他的可再生能源监控和控制系统的开发工作。这一应用的输入包括多种不同的传感器,而其控制输出涉及冷却、加热和通风等。

尽可能多的配置

由使用一组强大的软件工具入手,多尝试一些不同的方法,将更易于开发和重新部署一个应用程序架构,这样你就可以找出一个最佳方案,Heckler说。他曾在Cloud Foundry平台上尝试过GlassFish、WebLogic和WildFly 服务器。Heckler说,与手工自定义改写代码来实现现有应用程序的跨平台移植相比,以这些服务器为目标使用现有工具来编程生成代码是一个更好的方法。

将CloudFoundry作为后端将更易于使用相同的方法来实现在本地、内部部署或者云计算环境中的处理和部署。这将有助于减少在开发概念设计验证阶段以及之后迁移至以生产为目的的最佳环境阶段的工作量。

另一个很好的做法就是使用Spring Boot来提供自动配置和外部绑定功能,从而更易于生成Cloud Foundry初始代码。这也更有助于选择组件来快速集成应用程序,可部署应用程序以便于在不同目标环境中运行。从本质上来说,Spring Boot 可有助于设置被传送至Cloud Foundry的核心框架,它可为GlassFish、WebLogic 或 WildFly服务器生成代码。这使得开发人员能够把更多的时间和精力关注于针对物联网用例应用程序背后的逻辑开发中。

选择合适的组件

Heckler还推荐使用Spring Boot Actuator,它可在Spring Boot配置过程中从价格成本角度提供监控和管理应用程序的功能。这将有助于检查环境、查看类路径和内存使用情况,这些功能在开发和测试阶段都是非常有用的。

超文本应用程序语言可以帮助我们探索和解决与应用程序相关的API。同样重要的是,囊括一个数据库,或者将数据存储在应用程序中,以便于在发生网络中断事件时应用程序仍能够掌控数据。

一旦这些Spring Boot 单元被选中,那么开发人员就能够使用Spring Boot代码生成工具快速地生成一个全功能(虽然可能用处也不大)的应用程序。这个应用程序可被快速导入一个Java集成开发环境中,以便于进一步实现针对某一用例的定制化。那么,最后的结果就可以很容易地推送至一个开放工具以生成一个Gradle 或 Maven 项目。

弃用REST,使用WebSockets

REST 和 JSON非常适用于开发网络应用程序,但是它们为物联网应用程序带来了相当可观的开销。REST消息有时候会增加数百字节的头信息,而物联网应用程序本身通常只会发送与测量或控制消息相关的几个字节的信息。Heckler 建议使用WebSockets来代替前者。其开销要小得多,此外在必要时可实现双工通信。

你还需要开发一个WebSocket类来处理数据,这些数据可以通过扩展WebSocket处理程序来完成。Heckler说,他仍然有一个可通过REST来访问云计算系统的参数,但是他说,“使用它的代价如此高昂,所以我不会使用它。”

基于Spring Boot的基本框架、Cloud Foundry和一个开发工具将有助于在较短时间内针对物联网设备完成一个云计算应用程序的开发工作。Heckler表示,他已经把同样的一个框架重新用于各种与企业应用相关的应用中。他建议企业重点关注使用现有工具来为物联网应用程序开发基本的逻辑功能。而最终识别出能够推动物联网应用发展的用例将是一项极具挑战性的任务。从组件入手将更易于最初的业务识别,之后就可以使用合适的架构对其进行优化。

关注中国IDC圈官方微信:idc-quan 我们将定期推送IDC产业最新资讯

查看心情排 行你看到此篇文章的感受是:


  • 支持

  • 高兴

  • 震惊

  • 愤怒

  • 无聊

  • 无奈

  • 谎言

  • 枪稿

  • 不解

  • 标题党
2019-07-31 12:13:13
云资讯 京东云发布《私有云&混合云白皮书》 构建客户想要的云平台
伴随着人工智能、大数据、物联网等技术的不断发展,以及5G时代的来临,企业IT系统的云化成为大势所趋。客户多样化、个性化的应用需求对云厂商提出更多要求。 <详情>
2019-07-31 10:31:00
边缘计算 企业必须进入云端吗?可以进入边缘计算
如今物联网的应用越来越广泛,但需要具有企业的视角。这意味着垂直行业应用程序、开发生态系统、产品设计、硬件、部署等。 <详情>
2019-07-31 10:19:00
云资讯 谷歌牵手VMware将虚拟化工作负载引入谷歌云
彭博社报道称,谷歌与VMware正在展开合作,帮助企业更轻松地在Google Cloud Platform上运行VMware vSphere虚拟化软件和网络工具。 <详情>
2019-07-31 09:52:00
云资讯 谷歌与戴尔旗下云计算公司VMware建立新合作 试图追赶竞争对手
据国外媒体报道,当地时间周一,谷歌宣布与戴尔旗下的云计算公司VMware建立新的合作伙伴关系,帮助更多企业迁移到云端,从而试图追赶其竞争对手。 <详情>
2019-07-31 09:41:00
国际资讯 英特尔公布Q2财报:数据中心压力陡增,物联网业务实现较大增长
日前,英特尔公布了 2019 年第二季度的盈利报告,实现营收 165 亿美元,同比下降3%;净利润为 42 亿美元,同比下降 17%。报告称,下降主要出现在数据中心业务,而在客户计 <详情>