AUTOSAR_EXP_PlatformDesign - 08 RESTful Communication

2024-01-06 12:18

本文主要是介绍AUTOSAR_EXP_PlatformDesign - 08 RESTful Communication,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

AUTOSAR_EXP_PlatformDesign - 08 RESTful Communication

【translated by sky8336, 2019.06.07, Shanghai】

8 RESTful Communication 

8.1 Overview 

通信栈ara::com和ara::rest都可以在自适应应用程序之间建立通信路径。ara: rest是一个框架,用于在这样的API之上构建RESTful API以及特定的服务。它没有定义一个特定的开箱即用API来直接构造RESTful服务。这个框架是模块化的,它允许开发人员直接访问RESTful消息事务中涉及的不同层。相比之下,ara::com的重点是提供一个传统的函数调用接口,并隐藏事务的所有细节。另一个重要的区别是ara::rest确保了与非autosar对等体的互操作性。例如,ara::rest服务可以与移动HTTP/JSON客户机通信,反之亦然。

 

8.2 Architecture 

rest的体系结构基于模块化设计,它支持API级别的开发人员和服务设计。下图说明了它的总体设计。它描述了服务应用程序如何在ara::rest中组成。

ara::rest 的通用REST层只提供三个基本抽象:树形结构的消息有效负载(对象图)、URI和请求方法(像HTTP中知名的GET或POST)。通过这些基本的原语,可以组成特定于领域的RESTful API,它定义了通过对象图、URI和方法进行交互的具体高级协议。它的目的是定义访问特定领域的数据模型的规则,并为应用程序提供抽象(c++) API。当不需要进一步抽象时,自适应应用程序也可以直接使用ara::rest,而不是使用这个Domain API。

 

8.3 Components 

ara: rest由以下组件组成。

对象图(Object Graph)是独立于协议绑定的树状数据结构,是所有ara::rest通信的基础。它的目的是映射到协议格式如JSON和C结构体。这最大化了与non-ARA通信对等点和经典AUTOSAR的兼容性。对象图在消息中传输,这些消息完全抽象自具体的底层协议绑定。如果需要,它们仍然允许用户访问特定于协议的细节。

 

消息将请求/应答通信周期的整个上下文封装在ara::rest的异步编程模型中。

 

路由概念提供了将请求(包括请求方法和URI)映射到用户定义的处理函数的方法。路由是将抽象从通用REST提升到特定类型RESTful API的基石。

 

Uri是一种与RFC兼容的(RFC-compliant)且效率很高的通用URL表示。

 

ara: rest为服务器和客户机通信提供了所谓的(网络)端点,它们都提供了相当程度的资源控制。两者都是为了在单核和多核系统上提供快速和高效的通信能力而设计的。

 

整个框架设计严格面向最大限度的资源控制。可以严格控制所有计算和分配,并根据应用程序(部署)的精确需求进行定制。

 

---------------------

【end-2019.06.08】

这篇关于AUTOSAR_EXP_PlatformDesign - 08 RESTful Communication的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/576332

相关文章

【前端学习】AntV G6-08 深入图形与图形分组、自定义节点、节点动画(下)

【课程链接】 AntV G6:深入图形与图形分组、自定义节点、节点动画(下)_哔哩哔哩_bilibili 本章十吾老师讲解了一个复杂的自定义节点中,应该怎样去计算和绘制图形,如何给一个图形制作不间断的动画,以及在鼠标事件之后产生动画。(有点难,需要好好理解) <!DOCTYPE html><html><head><meta charset="UTF-8"><title>06

Restful API 原理以及实现

先说说API 再说啥是RESRFUL API之前,咱先说说啥是API吧。API大家应该都知道吧,简称接口嘛。随着现在移动互联网的火爆,手机软件,也就是APP几乎快爆棚了。几乎任何一个网站或者应用都会出一款iOS或者Android APP,相比网页版的体验,APP确实各方面性能要好很多。 那么现在问题来了。比如QQ空间网站,如果我想获取一个用户发的说说列表。 QQ空间网站里面需要这个功能。

Science|癌症中三级淋巴结构的免疫调节作用与治疗潜力|顶刊精析·24-09-08

小罗碎碎念 Science文献精析 今天精析的这一篇综述,于2022-01-07发表于Science,主要讨论了癌症中的三级淋巴结构(Tertiary Lymphoid Structures, TLS)及其在肿瘤免疫反应中的作用。 作者类型作者姓名单位名称(中文)通讯作者介绍第一作者Ton N. Schumacher荷兰癌症研究所通讯作者之一通讯作者Daniela S. Thomm

08 增删查功能

划重点: lable 标签keyup:键盘事件标签内添加样式:style使用事件修饰符:preventforEach :遍历 数组indexOf: 可以返回要查询的某个字符串值在整个字符串中首次出现的位置下标findIndex:返回传入一个测试条件(函数)符合条件数组的首个元素的位置splice:向/从数组中添加/删除项目,然后返回被删除后的新的项目数组 黑椒蟹 一对: <!DOCTYPE

2021-08-14 react笔记-1 安装、环境搭建、创建项目

1、环境 1、安装nodejs 2.安装react脚手架工具 //  cnpm install -g create-react-app 全局安装 2、创建项目 create-react-app [项目名称] 3、运行项目 npm strat  //cd到项目文件夹    进入这个页面  代表运行成功  4、打包 npm run build

linux 内核提权总结(demo+exp分析) -- 任意读写(四)

hijack_modprobe_path篇 本文转自网络文章,内容均为非盈利,版权归原作者所有。 转载此文章仅为个人收藏,分享知识,如有侵权,马上删除。 原文作者:jmpcall 专栏地址:https://zhuanlan.kanxue.com/user-815036.htm     原理同hijack_prctl, 当用户执行错误格式的elf文件时内核调用call_usermod

linux 内核提权总结(demo+exp分析) -- 任意读写(三)

hijack_prctl篇 本文转自网络文章,内容均为非盈利,版权归原作者所有。 转载此文章仅为个人收藏,分享知识,如有侵权,马上删除。 原文作者:jmpcall 专栏地址:https://zhuanlan.kanxue.com/user-815036.htm   prctl函数: 用户态函数,可用于定制进程参数,非常适合和内核进行交互 用户态执行prctl函数后触发prctl系统

linux 内核提权总结(demo+exp分析) -- 任意读写(二)

hijack_vdso篇 本文转自网络文章,内容均为非盈利,版权归原作者所有。 转载此文章仅为个人收藏,分享知识,如有侵权,马上删除。 原文作者:jmpcall 专栏地址:https://zhuanlan.kanxue.com/user-815036.htm     vdso: 内核实现的一个动态库,存在于内核,然后映射到用户态空间,可由用户态直接调用 内核中的vdso如果被修改

linux 内核提权总结(demo+exp分析) -- 任意读写(一)

cred篇 本文转自网络文章,内容均为非盈利,版权归原作者所有。 转载此文章仅为个人收藏,分享知识,如有侵权,马上删除。 原文作者:jmpcall 专栏地址:https://zhuanlan.kanxue.com/user-815036.htm   每个线程在内核中都对应一个线程结构块thread_infothread_info中存在task_struct类型结构体 struct t

linux 内核提权总结(demo+exp分析) -- ROP(二)

ret2usr CR4篇 本文转自网络文章,内容均为非盈利,版权归原作者所有。 转载此文章仅为个人收藏,分享知识,如有侵权,马上删除。 原文作者:jmpcall 专栏地址:https://zhuanlan.kanxue.com/user-815036.htm   smep: smep是内核的一种保护措施, 使得内核不可执行用户态代码 内核通过CR4寄存器的第20位来控制smep,