本技術涉及計算機網絡技術,尤其涉及一種路由地址的存儲方法、裝置、電子設備、計算機可讀存儲介質及計算機程序產品。
背景技術:
1、在內部業(yè)務以及外部業(yè)務訪問服務時,需要通過預先設置的業(yè)務路由網關查詢到訪問的服務的路由地址,進而將訪問請求傳輸到路由地址對應的服務中,由該服務返回訪問結果,由業(yè)務路由網關在接收到訪問結果后將訪問結果轉發(fā)到訪問的終端。
2、在業(yè)務路由網關存儲各服務的路由地址的過程中,隨著注冊服務的數量增加,會增加業(yè)務路由網關的存儲壓力以及影響到業(yè)務路由網關查詢路由地址的效率。
技術實現思路
1、本技術實施例提供一種路由地址的存儲方法、裝置、計算機可讀存儲介質及計算機程序產品,能夠提高查詢路由地址的效率。
2、本技術實施例的技術方案是這樣實現的:
3、本技術實施例提供一種路由地址的存儲方法,所述方法包括:
4、對第二服務的路由地址進行分割處理,得到所述第二服務的第二地址信息序列;
5、將第一服務的第一地址信息序列和所述第二地址信息序列進行序列匹配,所述第一地址信息序列存儲于地址樹的第一路徑;
6、若所述第二地址信息序列包括所述第一地址信息序列和第一元素,則將所述第一元素以及所述第一路徑的最后一個節(jié)點存儲的地址信息,組成新增地址信息;
7、在所述第一路徑的最后一個節(jié)點的父節(jié)點增加第一子節(jié)點,將所述新增地址信息存儲于所述第一子節(jié)點。
8、本技術實施例提供一種路由地址的存儲裝置,包括:
9、地址分割模塊,用于對第二服務的路由地址進行分割處理,得到所述第二服務的第二地址信息序列;
10、序列匹配模塊,用于將第一服務的第一地址信息序列和所述第二地址信息序列進行序列匹配,所述第一地址信息序列存儲于地址樹的第一路徑;
11、地址確定模塊,用于若所述第二地址信息序列包括所述第一地址信息序列和第一元素,則將所述第一元素以及所述第一路徑的最后一個節(jié)點存儲的地址信息,組成新增地址信息;
12、地址存儲模塊,用于在所述第一路徑的最后一個節(jié)點的父節(jié)點增加第一子節(jié)點,將所述新增地址信息存儲于所述第一子節(jié)點。
13、在上述方案中,所述地址存儲模塊,還用于響應于針對所述第二服務的訪問請求,查詢所述地址樹中第一路徑包括的目標節(jié)點中存儲的目標地址信息、以及所述第一子節(jié)點存儲的新增地址信息,其中,所述目標節(jié)點是所述第一路徑中不包括所述最后一個節(jié)點的節(jié)點;對所述目標地址信息以及所述新增地址信息進行拼接處理,得到所述第二服務的路由地址。
14、在上述方案中,所述地址分割模塊,還用于確定所述路由地址中包括的分隔符;基于所述分隔符,將所述路由地址分割為多個第二地址信息;基于所述第二地址信息在所述路由地址中的位置,對所述多個第二地址信息進行排序,得到所述第二地址信息序列。
15、在上述方案中,所述地址存儲模塊,還用于若所述地址樹包括具有一個子節(jié)點的第一節(jié)點,則將所述第一節(jié)點存儲的地址信息以及所述第一節(jié)點的子節(jié)點存儲的地址信息合并,得到合并地址信息;利用所述合并地址信息更新所述第一節(jié)點存儲的地址信息,并刪除所述第一節(jié)點的子節(jié)點。
16、在上述方案中,所述地址存儲模塊,還用于響應于在預設的時長內對第三服務的訪問次數超過訪問次數閾值,則從所述地址樹中獲取所述第三服務對應的目標地址信息序列,并將所述目標地址信息序列合并為所述第三服務的路由地址;將所述第三服務與所述第三服務的路由地址對應存儲在緩存中。
17、在上述方案中,所述地址存儲模塊,還用于響應于接收到對所述第三服務的訪問請求,從所述緩存中查詢所述第三服務的路由地址,并基于所述第三服務的路由地址執(zhí)行對所述第三服務的訪問。
18、在上述方案中,所述地址存儲模塊,還用于若第三服務的路由地址具有唯一標識符,則將所述第三服務的路由地址以及所述唯一標識符存儲至第一葉節(jié)點內,其中,所述第一葉節(jié)點是所述地址樹中與所述根節(jié)點直接相連的子節(jié)點。
19、在上述方案中,所述地址存儲模塊,還用于響應于針對第二環(huán)境的目標服務的注冊請求,在所述地址樹中對所述第一環(huán)境的目標服務進行第一環(huán)境打標處理;將所述第二環(huán)境的目標服務的路由地址存儲至所述地址樹,并在所述地址樹中對所述第二環(huán)境的目標服務進行第二環(huán)境打標處理。
20、在上述方案中,所述地址存儲模塊,還用于從所述地址樹中獲取所述第一環(huán)境的目標服務對應的第一路徑,并將表征所述第一環(huán)境的第一環(huán)境標簽存儲至所述第一路徑中最后一個的節(jié)點內。
21、在上述方案中,所述地址存儲模塊,還用于在所述第一路徑的最后一個的節(jié)點的父節(jié)點內增加指向第二子節(jié)點的指針,以將所述第一路徑的最后一個的節(jié)點存儲的地址信息存儲在所述第二子節(jié)點內;將表征所述第二環(huán)境的第二環(huán)境標簽存儲至所述第二子節(jié)點內。
22、在上述方案中,所述地址存儲模塊,還用于響應于對目標環(huán)境的目標服務的訪問請求,從所述地址樹中查詢到所述目標環(huán)境的目標服務對應的目標路由地址以及所述目標環(huán)境對應的環(huán)境標簽;將所述目標環(huán)境對應的環(huán)境標簽寫入所述目標路由地址中,得到包括所述環(huán)境標簽的目標路由地址;基于所述包括所述環(huán)境標簽的目標路由地址,將所述訪問請求發(fā)送至所述目標環(huán)境的目標服務。
23、本技術實施例提供一種電子設備,所述電子設備包括:
24、存儲器,用于存儲計算機可執(zhí)行指令;
25、處理器,用于執(zhí)行所述存儲器中存儲的計算機可執(zhí)行指令時,實現本技術實施例提供的路由地址的存儲方法。
26、本技術實施例提供一種計算機可讀存儲介質,存儲有計算機可執(zhí)行指令,用于被處理器執(zhí)行時實現本技術實施例提供的路由地址的存儲方法。
27、本技術實施例提供一種計算機程序產品,包括計算機可執(zhí)行指令,所述計算機可執(zhí)行指令被處理器執(zhí)行時,實現本技術實施例提供的路由地址的存儲方法。
28、本技術實施例具有以下有益效果:
29、對第二服務的路由地址進行分割處理,得到第二服務的第二地址信息序列,將第一服務的第一地址信息序列和第二地址信息序列進行序列匹配,第一地址信息序列存儲于地址樹的第一路徑若第二地址信息序列包括第一地址信息序列和第一元素,則將第一元素以及第一路徑的最后一個節(jié)點存儲的地址信息,組成新增地址信息,在第一路徑的最后一個節(jié)點的父節(jié)點增加第一子節(jié)點,將新增地址信息存儲于第一子節(jié)點。相關技術中存儲第二服務的第二地址信息序列時,會對第一路徑的最后一個節(jié)點新增一個子節(jié)點,將上述第一元素存儲到新增的子節(jié)點中,這樣用于存儲第二地址信息序列的第二路徑相當于是在第一路徑的基礎上延長一個節(jié)點,這種方式增加了地址樹的樹高,因此降低后續(xù)的查詢效率,而本技術通過在第一路徑的最后一個節(jié)點的父節(jié)點內增加指向第一子節(jié)點的指針,相當于在第一路徑的最后一個層級中增加子節(jié)點(第一子節(jié)點),將新增地址信息存儲在第一子節(jié)點內,即存儲到第一路徑的最后一個節(jié)點的父節(jié)點的另一個子節(jié)點中,這樣通過增大第一路徑的最后一個子節(jié)點數目,降低了地址樹的樹高,進而提高了查詢效率。