如何高效处理物联网中数据与消息

面临爆炸式增长,车联网业务平台问题重重

  • 服务于大量的客户、合作伙伴和生态链的其他企业,用户诉求来源复杂;
  • 需求变化快,不可控因素多;
  • 各种营销手段带来突发的业务访问;
  • 系统越来越复杂,模块越来越多;
  • 市场竞争剧烈,创新不断涌现;


移动互联网规模比传统互联网大10倍,物联网的规模又要再扩大10倍,新时代才刚刚开始。

行车辅助、汽车安全、智能交通、出行服务、生活娱乐等将成为车联网的主要发展方向。面临爆炸式增长,车联网的系统架构需要充分考虑,使性能能够水平、线性扩展,功能满足市场快速变化的需求。

典型客户案例

车联网在技术上具有相当高的门槛,要连接十万、百万量车甚至更多,用传统IT技术很难解决。阿里云在车联网领域具有成熟的解决方案和产品,每个细化领域的龙头企业都采用阿里巴巴的车联网解决方案,不受传统IT技术的局限,随着规模的扩大而水平扩展。

  • 新能源车领先企业
  • 最多监控车辆的城市
  • 新型商业模式:车辆分时租赁领先企业

满足车辆GPS定位,实时查询车辆状况、路况信息、停车站点,远程控制,异场状况报警等需求。

车联网案例分析

以某车辆中心管理车辆和充电桩为例

  • 数据采集:大量的车辆连接,几十万甚至上百万量车,数据要实时双向互通,数据有上传,也有下推数据,需要保证实时高并发可靠传输。
  • 数据处理和数据存储:收上来以后的数据要进行数据处理和存储。例如,车有报警,车的状态信息不符合预期,这些数据要马上输出到告警平台,要及时处理。同时这些数据要存起来,进行后续的业务处理。
  • 数据监控:利用大盘展现,看到车辆的事实情况;对车辆运行轨迹进行实时监控;实时数据分析和告警等。这是传统报表做不到的。

阿里云车联网 3+1 技术方案

阿里云的车联网提供3+1的技术方案,面向车机端的3个平台:车辆实时连接平台、数据存储平台和实时处理和展现平台。除了3个面向车量连接的平台外,我们还提供了面向上层应用的,基于共享能力中心理论的企业互联网+架构和中间件平台产品。

3个面向车机端的平台

车辆实时连接 - 消息队列 MQ

车辆连接,看上去是比较简单的问题,实际上有很高的门槛,要连接数万量车,数据不仅仅要上传,还要下发,这些控制指令必须可靠传输,而且面临的是复杂的网络环境,很多企业就卡在这一步。

  • 支持不同的协议
    车联网连接组件MQ支持多种协议,如808/809协议、新能源车的国家标准协议、物联网标准的MQTT协议等等。
  • 高性能、大容量支持
    有些汽车企业一台服务器只能支持一万量车。 我们能支持约200万量车。
  • 完善的运维功能
    运维功能非常完善,比如能够支持消息轨迹的查询、重置消费点,有助于对实时业务的处理。

数据高效存储 - 分布式数据库 DRDS

  • 支持无限TPS/QPS(仅取决于机器性能和数量)
  • 支持无限数据存储量(只取决于磁盘容量)
  • 应用侧无感知,自动实现数据库的线性扩容,复杂的数据同步和分库工作自动实现

面向万物互联的时序数据库HiTSDB

  • 大规模的物联网设备的时序数据高并发写入
  • 低成本的存储
  • 灵活高效的数据分析能力

大数据实时处理平台 - 实时监控 ARMS

提供业务无侵入性的实时业务监控平台

传统数据库技术很难处理车辆的实时位置,总体实时运行状况,大量的告警处理要求。我们基于流计算核心的车联网大数据实时监控处理平台ARMS可以很好应对这个场景。另外,ARMS对外隐藏了复杂的处理细节,只需要在图形界面上定义规则,定义大盘样式,很快就能得到自己想要的效果。

1个能力中心架构平台

以核心能力服务化为中心,支持快速创新和应对不确定性。

数据化运营 -- 鹰眼监控

基于鹰眼监控平台,提供应用响应时间和吞吐量信息,并提供全链路分析功能,找出系统热点和瓶颈。

  • 完整记录所有故障
  • 准确定位故障源

有效的服务管控

要管理运行在数百台服务器上的上万个业务服务,并处理其中复杂的依赖关系,必须要有系统化的运维,不能靠人工。分布式应用服务(EDAS)内置了强大的数据收集和服务监控功能,可以不间断地收集运行数据,监控系统状态。

申请车联网解决方案架构师咨询
全面了解企业级互联网架构 & 中间件技术及产品,快速复制阿里巴巴互联网架构,助力企业轻松上云

来源:https://yq.aliyun.com/articles/111342


智能推荐

如何高效处理物联网中数据与消息

面临爆炸式增长,车联网业务平台问题重重 服务于大量的客户、合作伙伴和生态链的其他企业,用户诉求来源复杂; 需求变化快,不可控因素多; 各种营销手段带来突发的业务访问; 系统越来越复杂,模块越来越多; 市场竞争剧烈,创新不断涌现; 移动互联网规模比传统互联网大10倍,物联网的规模又要再扩大10倍,新时代才刚刚开始。 行车辅助、汽车安全、智能交通、出行服务、生活娱乐等将成为车联网的主要发展方向。面临爆...

springboot idea配置自动部署

1.引入jar包,链接 2.Idea配置如下图。windows快捷键Ctrl+Alt+S,即File—Setting 3.Idea配置,快捷键 Ctrl+Shift+Alt+/ ,点击 1.Registry,勾选如下图。重启项目即可。热部署的配置在application.yml或application.properties中写配置语句。可以不写,使用默认配置...

Linux更改命令提示符信息

听语音 分步阅读 百度经验:jingyan.baidu.com 一般情况下,Linux 的命令提示信息类似于以下样子,显示为[当前用户名@短主机名  当前短路径]提示符,例如 [zxb@www Desktop]$ 。 不过,有时候我们可能想自定义命令提示符的显示信息,比如显示完整的主机名和完整的路径。 那么该怎么做呢,下面就来向大家介绍。 步骤阅读 百度经验:jingyan.b...

使用Navicat Premium 12远程连接阿里云MySQL8.0

使用Navicat Premium 12远程连接阿里云MySQL8.0 1.先登陆mysql: mysql -u root -p 2.再输入: grant all privileges on *.* to 'root'@'%' identified by 'yourPassword';#填密码 3.然后就报了这个错: ERROR 1290 (HY000): The MySQL server is ...

28.通过学习曲线诊断偏差和方差 翻译自 吴恩达新书-Machine Learning Yearning

更多好玩的机器学习教程: 进入袋马学院领一份 ,全部免费?. 我们已经了解了一些方法,可以算出有多少错误是来自于可避免得方差和偏差了。这些方法包括评估最优错误率、计算模型在训练样本集和开发样本集上的错误率。下面我们讨论两外一项可获得更多信息得方法:绘制学习曲线。 学习曲线显示出模型在开发数据集上的错误率与训练样本数量的关系。绘制这个曲线时,你需要设置不同的训练样本集大小。比如你有1000个样本,你...

猜你喜欢

分布式系统测试那些事儿——错误注入

2019独角兽企业重金招聘Python工程师标准>>> 接上篇: 当然测试可能会让你代码变得没有那么漂亮,举个例子: 这是知名的 Kubernetes 的代码,就是说它有一个 DaemonSetcontroller,这 controller 里面注入了三个测试点,比如这个地方注入了一个 handler ,你可以认为所有的注入都是 interface。比如说你写一个简单的 1+1=...

消息中间件:RocketMq部署

分布式消息中间件rocketmq   架构图   消息中间件和RPC最大区别: Broker Cluster存储   首先来提问下: 我们为什么要用消息中间件? 什么是消息中间件,有哪些中间件了? 3、为什么是rocketmq     大家可以先尝试部署下rocketmq环境,并且我会在课上把这些问题告诉大家。 1、环境 192.168.0.31 ...

无向/有向邻接矩阵 《大话数据结构》 c++代码实现

邻接矩阵:        逻辑结构分为两部分:V和E集合。因此,用一个一维数组存放图中所有顶点数据;用一个二维数组存放顶点间关系(边或弧)的数据,这个二维数组称为邻接矩阵。邻接矩阵又分为有向图邻接矩阵和无向图邻接矩阵 无向图邻接矩阵代码为:   参考输入为:   有向图的邻接矩阵与无向图相似,代码如下:  ...

【360开源】Pika最佳实践

奇技指南: Pika是360 热门的c++开源项目,基于rocksdb开发的大容量类Redis存储,力求在完全兼容Redis协议、继承Redis便捷运维设计的前提下通过持久化存储方式解决Redis在大容量场景下主从同步代价高、恢复时间慢、单线程相对脆弱、内存成本高等问题。 开源地址:https://github.com/Qihoo360/pika 我们根据360内部的Pika使用经验及社区用户的问...

免安装php环境

转载自phpcustom官网   软件介绍: PHPCUSTOM是首款windows系统下完全绿色的全能自定义PHP集成环境,集成了Apache、Nginx、IIS等Web服务器,是目前最专业也是最快速的PHP集成开发环境,多功能站点管理支持高并发,不仅适用于本地开发环境,也更适用于windows服务器环境。PHPCUSTOM兼容各种windows系统。拥有高并发承压、分权限添加数据库、...

问答精选

different templates - how to connect via landing page to next layout

I am developing a site for a friend of mine. The startpage should only contain her name, a slogan and a link (something like Enter Site) to the next template. I can't figure out on how this can be acc...

How to stop loading when web page is loading by use jquery?

Here is my use-case - I want in my web page, after user clicks a submit button to load a webpage, It will show a message box ( with a stop-loading button). I want after user click "stop loading &...

NullPointerException when declaring method from another class

I've been trying to work around this NullPointerException issue: through researching, I found that this exception occurs when you declare a reference type but don't create an object. In my case it is ...

How to set Magento store config data programmatically?

To get store config data, I would use this code: Now, how could I save to that node? I tried Alans suggestions from Override Magento Config, but it did not work for me. Thanks! Try following: OR...

How to convert a String that looks like JSON or a JS object, to an actual JS object?

The String I am talking about was initially a part of a JS object like: The variable I am interested in is favNumbersVal. Please notice that the starting and ending " around the value of favNumbe...

相关问题

相关文章

热门文章

推荐文章

相关标签

推荐问答