写点什么

将微服务应用于物联网

  • 2016-01-05
  • 本文字数:1456 字

    阅读完需:约 5 分钟

GOTO 2015 柏林大会上, Fred George 谈了组织应该做些什么来实现微服务的成功部署以及他们可以在物联网领域扮演什么角色。在早些时候的采访中,InfoQ 就应用微服务需要哪些支持采访了他。在本次采访中,Fred George 解释了物联网如何利用微服务及它所带来的挑战和我们可以采取的措施。InfoQ 还请他就微服务在物联网领域的应用向软件行业提出了建议。

InfoQ:您能详细地描述下物联网(IoT)如何应用微服务吗?

George:单体 IT 架构并不适合其中每个设备都有计算机和无线连接的环境。在我家里,我现在有 7 个灯泡和 10 米光条,它们全都有自己的处理器。另外,我还有 Apple TV 和 XBox。在同它们进行交互方面,我所希望的方式可能不同于你所希望的方式。这就需要某种程度的解耦(而不是由 IBM 或 Oracle 或 Google 或 Amazon 或 Apple 来告诉你应该采用什么样的方式)。因此,我希望设备可以自己发布消息,并响应其他设备(或其他人)的操作。我们再次遇到了一个模糊的问题,一个适合微服务的领域。

因此,我设想,有一个微服务可以简单地指出我是否在家(可以通过我的 iPhone 及其地理定位服务)。另一个微服务对此作出响应,并根据一天中的时间开灯或关灯(通过 Apple HomeKit 及我的 Philips Hue 控制器)。借助微服务,我可以通过其他的服务继续增加复杂性,而不需要等着其中某个大型供应商构建出一个具备那种功能的应用程序。

InfoQ:您可不可以谈一下,根据您的观察,物联网所面临的一些挑战?

George:对我来说,现在谈论这个问题还为时尚早,不过我马上就想到了两点。第一个是互操作,即如何让来自不同供应商的设备相互协作。第二个是安全,即如何防止怀有恶意的陌生人(或者就我的情况来说,我所熟悉的黑客)对我家里的系统的访问。

InfoQ:关于如何应对这些挑战,您有什么建议吗?

George:对于互操作,已经出现了几个标准,而且,主要的供应商也已经认识到,如果他们的 Hub 支持多种互操作标准,那么与竞争对手相比,其 Hub 就更可能被使用。安全问题最好是使用锁定的无线网络来解决,并遵循最佳实践来保证其安全。然后,就只需要保护对外的“外观(facade)”免受攻击。Apple TV、Microsoft XBox 及 Amazon Echo 似乎都在争当那个外观。

InfoQ:微服务是解决互操作的一个方案吗?您能举个例子吗?

George:供应商们都发布了他们的协议,并向各种 Hub 暴露了 API。一个微服务可以充当不同协议之间的适配器。它是轻量级的,并可以随意取用,这两个特性是一个快速发展变化的环境所需要的。正在玩这个的同行经常使用 Arduino 处理器板来执行这些任务。最新一代的处理器运行现代化的语言,只需很少的电量,而且可以安装在任何地方。

InfoQ:关于微服务在物联网领域的应用,您有什么建议向软件行业提吗?

George:在这个领域取得成功的供应商会认识到互操作的必要性,而且不是通过在专利产品中逐步增加特性来解决。他们会开放 API,允许同他们的 Hub 及使用标准协议(如使用 HTTP 协议的 RESTful 接口)的设备进行多样化的通信。我期待出现一个多产的开源模型,就像某些玩具机器人和无人机市场那样。在开放协议方面占得先机,就会在市场份额上取得回报。

最近,Amazon 正在努力成为那样的集成供应商(参见 Amazon 将在物联网领域大展身手)。Philips 刚刚撤回了将外部设备排除在其 Hub 之外的决定;这一排外举措在社区引发了激烈的负面反应,Philips 知道,他们这样一个举措会让他们丧失市场份额(参见 Philips Hub 重新支持第三方智能灯)。这个行业似乎明白他们需要做什么。

查看英文原文: Using Microservices in the Internet of Things

2016-01-05 18:002843
用户头像

发布了 1008 篇内容, 共 387.9 次阅读, 收获喜欢 344 次。

关注

评论

发布
暂无评论
发现更多内容

第19届亚运会门票采用区块链技术防伪

CECBC

区块链技术 防伪 溯源

第12周作业

Vincent

极客时间 极客大学

架构师的成长之路

华章IT

CTO 架构师 架构师之道

Java Reference核心原理分析

AI乔治

Java 架构 JVM 性能调优

GO 类型接口及反射间的转换

superman

Go 语言

诸多老牌数据仓库厂商当前,Snowflake如何创近12年最大IPO金额

华为云开发者联盟

数据仓库 数据 存储

分布式系统设计理念这么难学?

架构师修行之路

分布式 微服务

技术实践丨GaussDB(DWS)运维管理功能“升级”的原理和使用

华为云开发者联盟

运维 数据 集群

架构师训练营 - 第 4周课后作业(1 期)

Pudding

甲方日常 33

句子

工作 随笔杂谈 日常

据说99.99%的人都会答错的类加载的问题

AI乔治

Java 架构 JVM 类加载 性能调优

从分布式到微服务成长手册,助我面试跳槽斩获字节Offer

Java架构追梦

Java 学习 架构 面试 微服务

“区块链×多方计算”解决众多难题 将成区块链应用新场景

CECBC

区块链 数据融合

云计算简史(上)- 15分钟读完15年

明道云

京东智联云MySQL数据库如何保障数据的可靠性?

京东科技开发者

MySQL 数据库

5G时代音视频开发王器:WebRTC

华章IT

flutter 音视频 WebRTC React Native

考研须知

时间是一个人最好的证明

考研

让AI人才在产业界闪闪发光:百度之星的“神奇滤镜”是怎样炼成的?

脑极体

“区块链技术创新要植根市场”

CECBC

金融科技 信息安全

微服务架构:基于微服务和Docker容器技术的PaaS云平台架构设计(微服务架构实施原理)

AI乔治

Java 架构 微服务 ,docker

详细分析定制企业应用的价格

Learun

敏捷开发 快速开发 软件架构

“一个APP竟然可以适配这么多设备?!”《优酷响应式布局技术全解析》开放下载

破绽

阿里巴巴 阿里云 开发者 优酷 电子书

架构训练营 - 第4周课后作业 - 学习总结

Pudding

十七、深入Python异常处理

刘润森

Python

有了容器为什么kubernetes还需要Pod?

架构师修行之路

分布式 微服务 pod kubernete

LAXCUS大数据集群操作系统:一个分布式分时共享E级系统软件(三)

陈泽云

人工智能 大数据 计算机网络 操作系统 网络

websocket 是怎么连接的

程序员与厨子

nginx 网络 HTTP websocket

第12周学习总结

Vincent

极客时间 极客大学

关注你自己,如同篮球巨星一样,让身体最佳化,持续投入最爱的事情。

叶小鍵

健康 科普 王立铭 肥胖

NET-Core中的配置文件操作

为体验更多

C# .net .net core ASP.NET Core

CloudQuery v1.1.1 修复版本发布

BinTools图尔兹

数据库 sql 安全 工具软件

将微服务应用于物联网_架构_Ben Linders_InfoQ精选文章