本發(fā)明涉及數(shù)據(jù)處理,尤其涉及一種數(shù)據(jù)分發(fā)服務(wù)的方法、裝置、電子設(shè)備及車輛。
背景技術(shù):
1、dds(數(shù)據(jù)分發(fā)服務(wù))是一種用于實(shí)時數(shù)據(jù)通信的中間件技術(shù),它可以實(shí)現(xiàn)高性能、低延遲和可靠性強(qiáng)的數(shù)據(jù)分發(fā)。dds的主要特點(diǎn)包括發(fā)布訂閱模型、面向數(shù)據(jù)的通信、實(shí)時性和可擴(kuò)展性。
2、dds具有以下幾種通信技術(shù):
3、1.發(fā)布-訂閱模型:dds使用發(fā)布-訂閱模型來實(shí)現(xiàn)數(shù)據(jù)的分發(fā)。發(fā)布者將數(shù)據(jù)發(fā)布到dds中間件,訂閱者可以訂閱感興趣的數(shù)據(jù),一旦數(shù)據(jù)更新,dds會自動將數(shù)據(jù)發(fā)送給訂閱者。
4、2.數(shù)據(jù)中心通信:dds可以在不同的數(shù)據(jù)中心之間進(jìn)行通信,實(shí)現(xiàn)數(shù)據(jù)的分發(fā)和同步。這使得dds可以用于分布式系統(tǒng)中的數(shù)據(jù)通信。
5、3.實(shí)時通信:dds能夠提供可靠的實(shí)時通信,確保數(shù)據(jù)的及時傳輸和處理。這使得dds在需要高實(shí)時性的應(yīng)用場景中得到廣泛應(yīng)用。
6、4.安全通信:dds支持?jǐn)?shù)據(jù)的加密和認(rèn)證,確保數(shù)據(jù)的安全性和隱私性。這使得dds可以在需要保護(hù)數(shù)據(jù)安全的應(yīng)用中得到應(yīng)用。
7、然而,現(xiàn)有的dds技術(shù)也存在一些問題:
8、1.兼容性:不同dds實(shí)現(xiàn)之間可能存在兼容性問題,導(dǎo)致在不同系統(tǒng)之間進(jìn)行數(shù)據(jù)通信時出現(xiàn)困難。
9、2.性能:盡管dds具有高性能和低延遲的特點(diǎn),但在處理大規(guī)模數(shù)據(jù)時可能會出現(xiàn)性能瓶頸。
技術(shù)實(shí)現(xiàn)思路
1、本發(fā)明旨在至少在一定程度上解決相關(guān)技術(shù)局限性問題。為此,本發(fā)明提出一種數(shù)據(jù)分發(fā)服務(wù)的方法、裝置、電子設(shè)備及車輛,能夠高效實(shí)現(xiàn)數(shù)據(jù)分發(fā)服務(wù)。
2、一方面,本發(fā)明實(shí)施例提供了一種數(shù)據(jù)分發(fā)服務(wù)的方法,包括:
3、響應(yīng)于數(shù)據(jù)發(fā)送方的數(shù)據(jù)發(fā)送操作,獲取數(shù)據(jù)發(fā)送方發(fā)送的目標(biāo)數(shù)據(jù);
4、將目標(biāo)數(shù)據(jù)存儲到共享內(nèi)存;向數(shù)據(jù)發(fā)送方反饋目標(biāo)數(shù)據(jù)在共享內(nèi)存中的存儲指針信息,并將存儲指針信息存儲到共享內(nèi)存;
5、響應(yīng)于數(shù)據(jù)讀取方的數(shù)據(jù)讀取操作,從共享內(nèi)存獲取目標(biāo)數(shù)據(jù)的存儲指針信息;
6、基于存儲指針信息,從共享內(nèi)存中讀取目標(biāo)數(shù)據(jù),將目標(biāo)數(shù)據(jù)保存到數(shù)據(jù)讀取方。
7、在一些實(shí)施例中,共享內(nèi)存包括數(shù)據(jù)內(nèi)存和緩沖內(nèi)存,目標(biāo)數(shù)據(jù)存儲在數(shù)據(jù)內(nèi)存中;向數(shù)據(jù)發(fā)送方反饋目標(biāo)數(shù)據(jù)在共享內(nèi)存中的存儲指針信息,并將存儲指針信息存儲到共享內(nèi)存,包括以下步驟:
8、當(dāng)目標(biāo)數(shù)據(jù)在數(shù)據(jù)內(nèi)存完成存儲,記錄目標(biāo)數(shù)據(jù)存儲在數(shù)據(jù)內(nèi)存中的存儲指針信息;存儲指針信息包括存儲位置信息和長度信息;
9、通過數(shù)據(jù)內(nèi)存向數(shù)據(jù)發(fā)送方反饋目標(biāo)數(shù)據(jù)存儲在數(shù)據(jù)內(nèi)存中的存儲指針信息,進(jìn)而從數(shù)據(jù)發(fā)送方獲取存儲指針信息存儲到緩沖內(nèi)存。
10、在一些實(shí)施例中,共享內(nèi)存包括數(shù)據(jù)內(nèi)存和緩沖內(nèi)存,存儲指針信息存儲在緩沖內(nèi)存中,存儲指針信息從緩沖內(nèi)存中獲取得到;基于存儲指針信息,從共享內(nèi)存中讀取目標(biāo)數(shù)據(jù),包括以下步驟:
11、基于存儲指針信息,從數(shù)據(jù)內(nèi)存的目標(biāo)位置讀取目標(biāo)長度的數(shù)據(jù)獲得目標(biāo)數(shù)據(jù)。
12、在一些實(shí)施例中,當(dāng)數(shù)據(jù)發(fā)送方和數(shù)據(jù)讀取方分別為第一通信端和第二通信端,將目標(biāo)數(shù)據(jù)存儲到共享內(nèi)存這一步驟之前,方法還包括以下步驟:
13、通過數(shù)據(jù)處理模塊對目標(biāo)數(shù)據(jù)進(jìn)行數(shù)據(jù)格式重組;
14、其中,第一通信端表征基于信號的通信端,第二通信端表征面向服務(wù)的通信端。
15、在一些實(shí)施例中,當(dāng)數(shù)據(jù)發(fā)送方為第一通信端,對目標(biāo)數(shù)據(jù)進(jìn)行數(shù)據(jù)格式重組,包括以下步驟:
16、將目標(biāo)數(shù)據(jù)中的第一參數(shù)轉(zhuǎn)換成數(shù)據(jù)分發(fā)服務(wù)的消息配置參數(shù);第一參數(shù)包括端口參數(shù)和信號參數(shù);
17、將目標(biāo)數(shù)據(jù)中的服務(wù)化id轉(zhuǎn)換成數(shù)據(jù)分發(fā)服務(wù)的服務(wù)質(zhì)量配置參數(shù)。
18、在一些實(shí)施例中,當(dāng)數(shù)據(jù)發(fā)送方為第二通信端,對目標(biāo)數(shù)據(jù)進(jìn)行數(shù)據(jù)格式重組,包括以下步驟:
19、將目標(biāo)數(shù)據(jù)中面向服務(wù)的通信協(xié)議的第一配置信息轉(zhuǎn)換成數(shù)據(jù)分發(fā)服務(wù)的第二配置信息;
20、其中,第一配置信息包括服務(wù)接口設(shè)計(jì)信息,第二配置信息包括服務(wù)集成參數(shù)和參與者配置參數(shù)。
21、在一些實(shí)施例中,方法還包括以下步驟:
22、通過mpu服務(wù)代理和dds客戶代理建立第一通信端和第二通信端的跨域通信;
23、其中,mpu服務(wù)代理設(shè)置在第二通信端和數(shù)據(jù)處理模塊之間,dds客戶代理設(shè)置在第一通信端和數(shù)據(jù)處理模塊之間。
24、另一方面,本發(fā)明實(shí)施例提供了一種數(shù)據(jù)分發(fā)服務(wù)的裝置,包括:
25、第一模塊,用于響應(yīng)于數(shù)據(jù)發(fā)送方的數(shù)據(jù)發(fā)送操作,獲取數(shù)據(jù)發(fā)送方發(fā)送的目標(biāo)數(shù)據(jù);
26、第二模塊,用于將目標(biāo)數(shù)據(jù)存儲到共享內(nèi)存;向數(shù)據(jù)發(fā)送方反饋目標(biāo)數(shù)據(jù)在共享內(nèi)存中的存儲指針信息,并將存儲指針信息存儲到共享內(nèi)存;
27、第三模塊,用于響應(yīng)于數(shù)據(jù)讀取方的數(shù)據(jù)讀取操作,從共享內(nèi)存獲取目標(biāo)數(shù)據(jù)的存儲指針信息;
28、第四模塊,用于基于存儲指針信息,從共享內(nèi)存中讀取目標(biāo)數(shù)據(jù),將目標(biāo)數(shù)據(jù)保存到數(shù)據(jù)讀取方。
29、在一些實(shí)施例中,當(dāng)數(shù)據(jù)發(fā)送方和數(shù)據(jù)讀取方分別為第一通信端和第二通信端,裝置還包括:
30、第五模塊,用于通過數(shù)據(jù)處理模塊對目標(biāo)數(shù)據(jù)進(jìn)行數(shù)據(jù)格式重組;
31、其中,第一通信端表征基于信號的通信端,第二通信端表征面向服務(wù)的通信端;第五模塊在第二模塊之前執(zhí)行。
32、在一些實(shí)施例中,裝置還包括:
33、第六模塊,用于通過mpu服務(wù)代理和dds客戶代理建立第一通信端和第二通信端的跨域通信;
34、其中,mpu服務(wù)代理設(shè)置在第二通信端和數(shù)據(jù)處理模塊之間,dds客戶代理設(shè)置在第一通信端和數(shù)據(jù)處理模塊之間。
35、另一方面,本發(fā)明實(shí)施例提供了一種電子設(shè)備,包括:處理器以及存儲器;存儲器用于存儲程序;處理器執(zhí)行程序?qū)崿F(xiàn)上述數(shù)據(jù)分發(fā)服務(wù)的方法。
36、另一方面,本發(fā)明實(shí)施例提供了一種計(jì)算機(jī)存儲介質(zhì),其中存儲有處理器可執(zhí)行的程序,處理器可執(zhí)行的程序在由處理器執(zhí)行時用于實(shí)現(xiàn)上述數(shù)據(jù)分發(fā)服務(wù)的方法。
37、另一方面,本發(fā)明實(shí)施例提供了一種車輛,車輛包括上述的數(shù)據(jù)分發(fā)服務(wù)的裝置或上述的電子設(shè)備。
38、本發(fā)明實(shí)施例通過響應(yīng)于數(shù)據(jù)發(fā)送方的數(shù)據(jù)發(fā)送操作,獲取數(shù)據(jù)發(fā)送方發(fā)送的目標(biāo)數(shù)據(jù);將目標(biāo)數(shù)據(jù)存儲到共享內(nèi)存;向數(shù)據(jù)發(fā)送方反饋目標(biāo)數(shù)據(jù)在共享內(nèi)存中的存儲指針信息,并將存儲指針信息存儲到共享內(nèi)存;響應(yīng)于數(shù)據(jù)讀取方的數(shù)據(jù)讀取操作,從共享內(nèi)存獲取目標(biāo)數(shù)據(jù)的存儲指針信息;基于存儲指針信息,從共享內(nèi)存中讀取目標(biāo)數(shù)據(jù),將目標(biāo)數(shù)據(jù)保存到數(shù)據(jù)讀取方。本發(fā)明實(shí)施例通過引入共享內(nèi)存,在數(shù)據(jù)發(fā)送方和數(shù)據(jù)讀取方間實(shí)現(xiàn)了高效的數(shù)據(jù)傳輸機(jī)制(共享內(nèi)存零拷貝),能夠在大規(guī)模數(shù)據(jù)傳輸時保持較高的傳輸效率,只需要進(jìn)行一次數(shù)據(jù)寫入就能實(shí)現(xiàn)零拷貝數(shù)據(jù)讀寫,降低了數(shù)據(jù)傳輸?shù)难舆t,提高實(shí)時性,解決了大數(shù)據(jù)傳輸延遲大的問題。
1.一種數(shù)據(jù)分發(fā)服務(wù)的方法,其特征在于,包括以下步驟:
2.根據(jù)權(quán)利要求1所述的數(shù)據(jù)分發(fā)服務(wù)的方法,其特征在于,所述共享內(nèi)存包括數(shù)據(jù)內(nèi)存和緩沖內(nèi)存,所述目標(biāo)數(shù)據(jù)存儲在所述數(shù)據(jù)內(nèi)存中;所述向所述數(shù)據(jù)發(fā)送方反饋所述目標(biāo)數(shù)據(jù)在所述共享內(nèi)存中的存儲指針信息,并將所述存儲指針信息存儲到所述共享內(nèi)存,包括以下步驟:
3.根據(jù)權(quán)利要求1所述的數(shù)據(jù)分發(fā)服務(wù)的方法,其特征在于,所述共享內(nèi)存包括數(shù)據(jù)內(nèi)存和緩沖內(nèi)存,所述存儲指針信息存儲在所述緩沖內(nèi)存中,所述存儲指針信息從所述緩沖內(nèi)存中獲取得到;所述基于所述存儲指針信息,從所述共享內(nèi)存中讀取所述目標(biāo)數(shù)據(jù),包括以下步驟:
4.根據(jù)權(quán)利要求1所述的數(shù)據(jù)分發(fā)服務(wù)的方法,其特征在于,當(dāng)所述數(shù)據(jù)發(fā)送方和所述數(shù)據(jù)讀取方分別為第一通信端和第二通信端,所述將所述目標(biāo)數(shù)據(jù)存儲到共享內(nèi)存這一步驟之前,所述方法還包括以下步驟:
5.根據(jù)權(quán)利要求4所述的數(shù)據(jù)分發(fā)服務(wù)的方法,其特征在于,當(dāng)所述數(shù)據(jù)發(fā)送方為所述第一通信端,所述對所述目標(biāo)數(shù)據(jù)進(jìn)行數(shù)據(jù)格式重組,包括以下步驟:
6.根據(jù)權(quán)利要求4所述的數(shù)據(jù)分發(fā)服務(wù)的方法,其特征在于,當(dāng)所述數(shù)據(jù)發(fā)送方為所述第二通信端,所述對所述目標(biāo)數(shù)據(jù)進(jìn)行數(shù)據(jù)格式重組,包括以下步驟:
7.根據(jù)權(quán)利要求4所述的數(shù)據(jù)分發(fā)服務(wù)的方法,其特征在于,所述方法還包括以下步驟:
8.一種數(shù)據(jù)分發(fā)服務(wù)的裝置,其特征在于,包括:
9.一種電子設(shè)備,其特征在于,包括處理器以及存儲器;
10.一種車輛,其特征在于,所述車輛包括如權(quán)利要求8所述的數(shù)據(jù)分發(fā)服務(wù)的裝置或者如權(quán)利要求9所述的電子設(shè)備。