決策節點

​ 決策節點就是指在運行(xíng)時(shí)根據為(wèi)其下流出連接配置的條件來(lái)決定究竟應該走哪條連接的節點,所以根據這一特性,決策節點下流出連接至少(shǎo)要有(yǒu)兩條,否則決策節點就沒有(yǒu)意義了。

​ 選中決策節點,在其右邊屬性面闆中就可(kě)以看到針對決策節點的配置,如下圖所示:

​ 需要重點介紹的是“決策類型”屬性,決策節點的有(yǒu)兩種決策類型,分别是"條件"和(hé)"百分比"。

​ 當選擇決策類型為(wèi)條件時(shí),就會(huì)看到如上(shàng)圖所示效果。選擇“條件”類型時(shí),在下面出現的在決策項當中,可(kě)以根據當前決策節點下流出連接的數(shù)量添加對應的決策項,對于每條決策項,都有(yǒu)兩個(gè)屬性,分别是"條件腳本"和(hé)“流向”,在條件列當中,我們可(kě)以編寫具體(tǐ)的條件,在流向列中選擇當條件列中定義的條件滿足時(shí)要流出連線名稱,所以對于決策節點下流出的連線,我們必須要為(wèi)其設置名稱,否則就無法為(wèi)其定義決策項。

為(wèi)連線定義名稱,需要首先用拖選的方式選中它,然後就可(kě)以在屬性面闆上(shàng)為(wèi)其定義名稱。

​ 在條件表格中,點擊條件編輯按鈕,就會(huì)彈出條件編輯窗口,在這個(gè)窗口裏,可(kě)以為(wèi)流轉到該條路徑定義條件。

​ 如果将決策類型改為(wèi)“百分比”,則可(kě)以看到如下圖所示效果:

​ 如上(shàng)圖所示,一旦将決策類型改為(wèi)“百分比”,那(nà)麽就可(kě)以為(wèi)每個(gè)流向設置流量百分比,如上(shàng)圖當中,在實際規則流運行(xíng)時(shí),将有(yǒu)30%走"c1"連線,70%走"c0"連線。配置時(shí)無論決策節點下有(yǒu)多(duō)少(shǎo)離開(kāi)連線,最終所有(yǒu)的百分比加在一起要達到100%, 百分比這裏一定要是一個(gè)合法的整數(shù),否則會(huì)出現錯誤。

​ 百分比模式下還(hái)有(yǒu)一個(gè)名為(wèi)“作(zuò)用範圍”的選項,默認值為(wèi)“批處理(lǐ)”,表示“百分比”類型的計(jì)算(suàn)有(yǒu)效期為(wèi)當前線程,一旦有(yǒu)新線程開(kāi)啓,那(nà)麽這個(gè)百分比的值将開(kāi)始重新計(jì)算(suàn);如果将“作(zuò)用範圍”改為(wèi)“每次調用”,那(nà)麽生(shēng)效就不再局限于當前線程,每次調用在經過這個(gè)決策節點時(shí)都會(huì)根據百分比進行(xíng)分流計(jì)算(suàn)。

​ 值得(de)注意的時(shí),當選擇決策類型為(wèi)“條件”,在運行(xíng)時(shí),當決策流流轉到當前節點時(shí),如果決策項中定義的各個(gè)條件都不滿足,那(nà)麽規則流到此就結束了,相反,如果有(yǒu)多(duō)個(gè)決策項滿足時(shí),那(nà)麽系統将取第一條滿足條件的決策項對應的流向連線進行(xíng)向下流轉,而不會(huì)選擇所有(yǒu)滿足條件的連線向下流轉。

需要注意的是,百分比類型的“批處理(lǐ)”作(zuò)用範圍下決策方式,必須要在代碼中通(tōng)過批處理(lǐ)的方式執行(xíng)才會(huì)生(shēng)效,必須要使用後面章節裏介紹的BatchSession來(lái)一次性處理(lǐ)一批數(shù)據,或者一個(gè)KnowledgeSession一次性處理(lǐ)一批數(shù)據,否則規則流永遠都隻會(huì)走默認的百分比占比最高(gāo)的那(nà)條路徑。 當然如果百分比類型的作(zuò)用範圍改為(wèi)“每次調用”,那(nà)麽規則的每次調用都會(huì)根據百分比來(lái)計(jì)算(suàn)分流。

​ 決策節點出入連接線下如下表所示:

流入的連接線 流出的連接線
1~n 1~n

results matching ""

    No results matching ""