TWI629882B - A method for achieving a stable selection strategy by a coordinator of distributed communication based on JGroups - Google Patents

A method for achieving a stable selection strategy by a coordinator of distributed communication based on JGroups Download PDF

Info

Publication number
TWI629882B
TWI629882B TW105143810A TW105143810A TWI629882B TW I629882 B TWI629882 B TW I629882B TW 105143810 A TW105143810 A TW 105143810A TW 105143810 A TW105143810 A TW 105143810A TW I629882 B TWI629882 B TW I629882B
Authority
TW
Taiwan
Prior art keywords
coordinator
group
members
new
jgroups
Prior art date
Application number
TW105143810A
Other languages
Chinese (zh)
Other versions
TW201824817A (en
Inventor
曾志翔
陳偉志
Original Assignee
中華電信股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 中華電信股份有限公司 filed Critical 中華電信股份有限公司
Priority to TW105143810A priority Critical patent/TWI629882B/en
Publication of TW201824817A publication Critical patent/TW201824817A/en
Application granted granted Critical
Publication of TWI629882B publication Critical patent/TWI629882B/en

Links

Landscapes

  • Information Transfer Between Computers (AREA)

Abstract

本發明係揭露一種協調者穩固選擇策略,適用於以JGroups為基礎搭建的分散式通訊系統,可依適用環境提供多種選擇策略,在群組成員變動的過程中,動態依據策略挑選出最佳成員擔任協調者的角色。同時我們也提供一種機制,使得協調者得以迅速變更且不影響原本通訊工作的進行。 The invention discloses a coordinator's stable selection strategy, which is suitable for a distributed communication system based on JGroups, and can provide multiple selection strategies according to the applicable environment, and dynamically selects the best members according to the strategy in the process of group member change. Serve as a coordinator. At the same time, we also provide a mechanism to enable the coordinator to change quickly without affecting the original communication work.

Description

基於JGroups達成分散式通訊的協調者穩固選擇策略之方法 A method for achieving a stable selection strategy for coordinators of decentralized communication based on JGroups

本發明屬於一種藉由一個分散式通訊群組中,則會有一個成員擔任協調者(Coordinator)的角色,專門負責維護及發佈成員最新狀態給群組中其他所有成員。 The present invention pertains to a coordinator by having a member in a distributed communication group that is responsible for maintaining and publishing the latest status of members to all other members of the group.

以一美國專利Combined join and state transfer,專利號:US8312084 B2為例,該專利重點聚焦在節點加入時的狀態同步或轉移的維護機制,但並未針對節點加入後,協調者角色是否要轉移以及如何轉移的方法。 Taking a US patent Combined join and state transfer, patent number: US8312084 B2 as an example, the patent focuses on the state synchronization or transfer maintenance mechanism when the node joins, but does not target whether the coordinator role needs to be transferred after the node is joined. How to transfer the method.

如果協調者不幸因為本身或某些環境因素導致效能不彰,但因為角色無法轉移,將導致這種現象會一直持續下去而無法改善。 If the coordinator unfortunately suffers from inefficiency due to itself or certain environmental factors, but because the role cannot be transferred, this phenomenon will continue to improve and cannot be improved.

本案發明人鑑於上述習用方式所衍生的各項缺點,乃亟思加以改良創新,並經多年苦心孤詣潛心研究後,終於成功研發完成本基於JGroups達成分散式通訊的協調者穩固選擇策略之方法。 In view of the shortcomings derived from the above-mentioned conventional methods, the inventors of the present invention have improved and innovated, and after years of painstaking research, they finally succeeded in researching and developing the method for the stable selection strategy of the coordinators based on JGroups to achieve decentralized communication.

為達上述目的,本發明提出提供一種基於程式語 言(JGroups)達成分散式通訊的協調者穩固選擇策略之方法,其包含:步驟1. 新成員要求加入群組或原協調者離開群組;步驟2. 觸發選擇程序;步驟3. 若為處於高負載環境,則包含新成員的所有成員回報給協調者主機各自效能資料後做排序;步驟4. 若為處於高流量環境,則包含新成員的所有成員分別計算至各成員的RTT後,根據平均值做排序;步驟5. 若為偏好自行設定,則根據設定檔做主機優先排序;步驟6. 於選擇程序完成後,根據排序結果選出新協調者;步驟7. 新協調者發佈最終狀態結果給其他所有成員。 In order to achieve the above object, the present invention proposes to provide a program based language JGroups: A method for a coordinator of decentralized communications to securely select a strategy, including: Step 1. A new member asks to join a group or the original coordinator leaves the group; Step 2. Trigger a selection procedure; Step 3. If in In a high-load environment, all the members of the new member are reported to the coordinator host for their performance data. Step 4. If it is in a high-traffic environment, all members including the new member are calculated to the RTT of each member, according to The average value is sorted; Step 5. If the preference is set by itself, the host is prioritized according to the configuration file; Step 6. After the selection process is completed, the new coordinator is selected according to the sorting result; Step 7. The new coordinator issues the final status result Give all other members.

其中高負載環境,是為包含CPU使用率、記憶體使用率及磁碟使用率的綜合評估,以有效穩固群組通訊機制;並以挑選群組成員中負載最低的成員為新協調者。 The high-load environment is to comprehensively evaluate the CPU usage, memory usage, and disk usage to effectively stabilize the group communication mechanism; and to select the lowest-loaded member of the group member as the new coordinator.

其中高流量環境,是指一段時間內某成員到所有其他成員的封包來回時間後做平均,以有效穩固群組通訊機制,並以挑選群組成員中平均RTT最小的為新協調者。 The high-traffic environment refers to the average of a member's packet to the back-to-back time of all other members in a period of time to effectively stabilize the group communication mechanism, and to select the group operator with the lowest average RTT as the new coordinator.

而在觸發選擇程序時,同時提出的四項選擇策略,使用者可以依不同環境特性選擇適合的策略。預設是JGroups的原本機制,一、依生存時間最長,即第一個加入群組的成員,自此之後協調者都不再變動;二、依主機效能,當設定處於高負載(High Loading)的分散式環境時,本發明會根據設定評估所有成員的計算效能後,再從中選擇一台負載最低的作為新協調者;三、依平均RTT回應時間,當設定處於高流量(High Flow)的分散式環境時,本發明會觀察一段時間內每一個成員到所有其他成員的封包來回時間(Round Trip Time)後做平均, 從中選擇一台平均RTT最小的作為新協調者;四、依系統組態設定,使用者可以事先將心目中主機優先順序寫入組態設定檔,系統就會依組態內容順序自動選擇最佳一台擔任協調者的角色。 When the selection process is triggered, the four selection strategies are simultaneously proposed, and the user can select an appropriate strategy according to different environmental characteristics. The default is the original mechanism of JGroups. First, the longest survival time, that is, the first member to join the group, the coordinator will not change after that; Second, according to the host performance, when the setting is at high load (High Loading) In a decentralized environment, the present invention evaluates the computational efficiency of all members according to the settings, and then selects one with the lowest load as the new coordinator; third, according to the average RTT response time, when the setting is in the high flow (High Flow) In a decentralized environment, the present invention observes the average of each member to the Round Trip Time of all other members over a period of time. Select one of the lowest average RTT as the new coordinator; Fourth, according to the system configuration settings, the user can write the host priority in the mind to the configuration profile in advance, the system will automatically select the best according to the configuration content order. A role as a coordinator.

在JGroups的設計機制裡,協調者相較其他成員多了負責維護群組最新狀態的工作,同時也肩負了同步群組資訊至其他成員的責任,群組資訊在JGroups裡的術語叫做View,記載了目前群組有哪些成員、群組協調者是誰以及各成員的最新狀態。協調者會定期發送最新的View給各個成員,以同步最新的群組資訊。原始JGroups機制的協調者是固定的,選擇第一個加入群組的A成員為協調者,之後B成員、C成員和D成員陸續加入,但不論群組成員如何變動,協調者都不會改變,但因為成員A是第一個加入群組的,意即待在群組時間是最長的,一般來說,可以假設它是相對穩定的。另外,在探測所有成員即時狀態的心跳(Heartbeat)程序上,協調者也須做最後確認的動作,一旦某成員探測不到鄰近成員,就會即刻回報協調者探測異常,協調者再詳加確認才能確定異常成員是否真的離線。 In the design mechanism of JGroups, the coordinator has more responsibility for maintaining the latest status of the group than other members, and also shoulders the responsibility of synchronizing group information to other members. The terminology of group information in JGroups is called View. What are the current members of the group, who is the group coordinator, and the latest status of each member. The coordinator will periodically send the latest View to each member to synchronize the latest group information. The coordinator of the original JGroups mechanism is fixed. The first member who joins the group is the coordinator. Then the B members, C members, and D members join, but the coordinator will not change regardless of the group members. However, because member A is the first to join the group, it means that the group time is the longest. In general, it can be assumed that it is relatively stable. In addition, in the heartbeat program that detects the immediate state of all members, the coordinator must also perform the final confirmation action. Once a member fails to detect the neighboring member, the coordinator will immediately report the abnormality, and the coordinator will confirm the details. To determine if an abnormal member is really offline.

本發明所提供一種基於JGroups達成分散式通訊的協調者穩固選擇策略之方法,與其他習用技術相互比較時,更具備下列優點: The invention provides a method for a stable selection strategy of a coordinator based on JGroups to achieve decentralized communication, and has the following advantages when compared with other conventional technologies:

1. 高負載(High Loading)的分散式環境下,本發明會自動選擇一台負載最低的成員擔任協調者的角色。 1. In a highly loaded, highly loaded environment, the present invention automatically selects a member with the lowest load as the coordinator.

2. 高流量(High Flow)的分散式環境下,本發明會自動選擇一台封包來回時間(Round Trip Time)最小的成員擔任協調者的角色。 2. In a high-flow distributed environment, the present invention automatically selects a member with the smallest Round Trip Time as the coordinator.

3. 可依照使用者自訂的選擇順序挑選協調者,將穩定的成員排在優先順序。 3. Coordinators can be selected in order of user-selected order to prioritize stable members.

4. 協調者在整個重新選擇的過程中,不會影響到原本群組通訊工作的進行。 4. The coordinator will not affect the communication work of the original group during the entire re-selection process.

S110~S170‧‧‧流程 S110~S170‧‧‧ Process

210‧‧‧A成員 210‧‧‧A member

211‧‧‧B成員 Member of 211‧‧‧B

212‧‧‧C成員 212‧‧‧C members

213‧‧‧D成員 Member of 213‧‧‧D

220‧‧‧群組資訊 220‧‧‧Group Information

請參閱有關本發明之詳細說明及其附圖,將可進一步瞭解本發明之技術內容及其目的功效;有關附圖為:圖1為本發明基於JGroups達成分散式通訊的協調者穩固選擇策略之方法之流程圖;圖2A、2B、2C、2D為本發明基於JGroups達成分散式通訊的協調者穩固選擇策略之方法之情境示意圖。 The detailed description of the present invention and the accompanying drawings will be further understood, and the technical contents of the present invention and the functions thereof can be further understood. The related drawings are: FIG. 1 is a stable selection strategy of a coordinator who achieves distributed communication based on JGroups. Flowchart of the method; FIG. 2A, FIG. 2B, FIG. 2C and FIG. 2D are schematic diagrams of the method for achieving a stable selection strategy of the coordinator of the distributed communication based on the JGroups.

為了使本發明的目的、技術方案及優點更加清楚明白,下面結合附圖及實施例,對本發明進行進一步詳細說明。應當理解,此處所描述的具體實施例僅用以解釋本發明,但並不用於限定本發明。 The present invention will be further described in detail below with reference to the accompanying drawings and embodiments. It is understood that the specific embodiments described herein are merely illustrative of the invention and are not intended to limit the invention.

以下,結合附圖對本發明進一步說明: Hereinafter, the present invention will be further described with reference to the accompanying drawings:

請參閱圖1所示,為本發明基於JGroups達成分散式通訊的協調者穩固選擇策略之方法之流程圖,包括:步驟1. S110新成員要求加入群組或原協調者離開群組;步驟2. S120觸發選擇程序;步驟3. 若為處於高負載環境,則S130包含新成員的所有成員回報給協調者主機各自效能資料後做排序;步驟4. 若為處於高流量環境,則S140包含新成員的所有成員分別計算至各成員的RTT後,根據平均值做排序; 步驟5. 若為偏好自行設定,則S150根據設定檔做主機優先排序;步驟6. S160於選擇程序完成後,根據排序結果選出新協調者;步驟7. S170新協調者發佈最終狀態結果給其他所有成員。 Please refer to FIG. 1 , which is a flowchart of a method for implementing a stable selection strategy for a coordinator of distributed communication based on JGroups, including: Step 1. S110 new member requests to join a group or the original coordinator leaves the group; Step 2 S120 triggers the selection process; step 3. If it is in a high load environment, S130 includes all the members of the new member to report to the coordinator host's respective performance data and then sorts; Step 4. If it is in a high traffic environment, S140 includes new All members of the member are calculated to the RTT of each member and sorted according to the average value; Step 5. If the preference is set by itself, the S150 performs host prioritization according to the configuration file; Step 6. After the selection process is completed, the S160 selects a new coordinator according to the sorting result; Step 7. The S170 new coordinator issues the final status result to other All members.

其中高負載環境,是為包含CPU使用率、記憶體使用率及磁碟使用率的綜合評估,以有效穩固群組通訊機制;並以挑選群組成員中負載最低的成員為新協調者。 The high-load environment is to comprehensively evaluate the CPU usage, memory usage, and disk usage to effectively stabilize the group communication mechanism; and to select the lowest-loaded member of the group member as the new coordinator.

其中高流量環境,是指一段時間內某成員到所有其他成員的封包來回時間後做平均,以有效穩固群組通訊機制,並以挑選群組成員中平均RTT最小的為新協調者。 The high-traffic environment refers to the average of a member's packet to the back-to-back time of all other members in a period of time to effectively stabilize the group communication mechanism, and to select the group operator with the lowest average RTT as the new coordinator.

綜上所述,協調者選擇過程的觸發時機點有兩個,分別為新成員要求加入群組時,因為新成員有可能更適合擔任協調者的角色,或原協調者離開群組時,原本協調者不見了,自然需要選出新協調者。若是前者新成員要求加入群組時,不論是哪個成員收到新成員要求加入群組的請求,都會轉送給協調者,此時協調者會觸發選擇程序。若是後者原協調者離開群組時,是當負責探測協調者的成員發現協調者已不在群組中了,自然也沒有協調者可以轉達,此成員會逕自觸發選擇程序。不論是哪種觸發方式,我們皆稱觸發選擇程序的成員為觸發成員,且觸發成員可能是群組中任一成員。 In summary, there are two trigger timings for the coordinator selection process, when new members are asked to join the group, because the new members may be more suitable as coordinators, or the original coordinator leaves the group. If the coordinator is gone, it is natural to choose a new coordinator. If the former new member requests to join the group, no matter which member receives the request from the new member to join the group, it will be forwarded to the coordinator, and the coordinator will trigger the selection process. If the original coordinator leaves the group, the member responsible for detecting the coordinator finds that the coordinator is no longer in the group, and naturally no coordinator can convey it. This member will trigger the selection process. Regardless of the trigger method, we call the member of the trigger selection program a trigger member, and the trigger member may be any member of the group.

觸發成員會先檢視環境再決定選擇策略。設定處於高負載的分散式環境時,觸發成員會要求群組成員執行自我效能評估程序,此效能評估程序包含處理器使用率(CPU Utilization)、記憶體使用率(Memory Utilization)及磁碟使用率(Disk Utilization)的綜合評估,並得出一組評估分數後回報給 觸發成員。 The triggering member will first review the environment before deciding on the selection strategy. When setting up a highly loaded, decentralized environment, the triggering member will ask the group members to perform a self-efficacy assessment process that includes CPU Utilization, Memory Utilization, and disk usage. (Disk Utilization) comprehensive assessment, and get a set of evaluation scores and return Trigger member.

設定處於高流量的分散式環境時,觸發成員會要求群組成員執行自我RTT平均時間計算程序,此程序會觀察一段時間內到所有其他成員的封包來回時間後做平均,並轉換成一組評估分數後回報給觸發成員。 When setting up a high-traffic, decentralized environment, the triggering member will ask the group members to perform a self-RTT averaging time calculation program. The program will observe the average time after all other members' packet round-trip time and convert it into a set of evaluation scores. After the return to the trigger member.

設定處於依系統組態設定檔做主機優先排序時,觸發成員不需其他群組成員的資訊,可獨自依據各在線群組成員於設定檔上的次序位置後轉換成一組組評估分數。 When the setting is in the system priority setting according to the system configuration profile, the triggering member does not need the information of other group members, and can be converted into a group evaluation score according to the order position of each online group member on the setting file.

如果都沒有設定,預設就是JGroups的原本機制,即第一個加入群組的成員為新協調者,但我們仍會產生一組評估分數,但顯然是給第一個加入群組的最高分,第二個次高分,即使離線的是第一個成員,也不會影響後續的選擇判斷。 If none is set, the default is the original mechanism of JGroups, that is, the first member to join the group is the new coordinator, but we still generate a set of evaluation scores, but obviously the highest score for the first group. The second high score, even if it is the first member offline, will not affect the subsequent selection judgment.

有些選擇的方式會比較耗時,比如依平均RTT時間最小的方式,但不管是哪一個,在選擇未結束前,觸發成員會暫代協調者的工作,並將此訊息發佈給群組所有成員,以免原先的群組通訊機制停擺。並且在收集群組成員的評估資料回應上,採取盡可能收集(Best Efforts)的原則,如果在單位時間內未回傳就排除候選者資格。 Some options may be time consuming, such as in the least average RTT time, but no matter which one, before the selection is not over, the trigger member will temporarily work for the coordinator and post this message to all members of the group. In order to prevent the original group communication mechanism from shutting down. And in the collection of the assessment information of the group members, the principle of Best Efforts is adopted, and if the return is not returned within the unit time, the candidate qualification is excluded.

觸發成員會依這些收集到的評估分數做評比的排序,選出新協調者,觸發成員再將此訊息告知給新協調者,注意新協調者也可能是觸發成員自己,新協調者會做第一次發佈最新群組資訊後的動作,其他成員也得以認知到新協調者產生了。 The triggering member will sort the evaluation scores based on the collected evaluation scores, select the new coordinator, and trigger the member to inform the new coordinator of the message. Note that the new coordinator may also trigger the member himself, and the new coordinator will be the first. After the release of the latest group information, other members were also aware of the new coordinator.

而在觸發選擇程序時,同時提出的四項選擇策略,使用者可以依不同環境特性選擇適合的策略。預設是JGroups的原本機制,一、依生存時間最長,即第一個加入群組的成員, 自此之後協調者都不再變動;二、依主機效能,當設定處於高負載(High Loading)的分散式環境時,本發明會根據設定評估所有成員的計算效能後,再從中選擇一台負載最低的作為新協調者;三、依平均RTT回應時間,當設定處於高流量(High Flow)的分散式環境時,本發明會觀察一段時間內每一個成員到所有其他成員的封包來回時間(Round Trip Time)後做平均,從中選擇一台平均RTT最小的作為新協調者;四、依系統組態設定,使用者可以事先將心目中主機優先順序寫入組態設定檔,系統就會依組態內容順序自動選擇最佳一台擔任協調者的角色。而其中依主機效能跟依平均RTT回應時間有可能須花費較多的時間,因此本發明所提出的選擇流程中會自動挑一個成員暫代協調者的角色,使得在協調者變更過程中,不影響原本通訊工作的進行。 When the selection process is triggered, the four selection strategies are simultaneously proposed, and the user can select an appropriate strategy according to different environmental characteristics. The default is the original mechanism of JGroups. First, the longest survival time, that is, the first member to join the group. Since then, the coordinator has not changed; Second, according to the host performance, when setting the high load (High Loading) decentralized environment, the present invention will evaluate the computing performance of all members according to the settings, and then select a load from it. The lowest as the new coordinator; Third, according to the average RTT response time, when setting the high-flow (High Flow) decentralized environment, the present invention will observe the packet round-trip time of each member to all other members in a period of time (Round Trip Time), after averaging, select one of the lowest average RTT as the new coordinator; Fourth, according to the system configuration settings, the user can write the host priority in the mind to the configuration profile in advance, the system will follow the group The order of the content content automatically selects the best one to act as a coordinator. However, depending on the host performance and the average RTT response time, it may take more time. Therefore, the selection process proposed by the present invention automatically picks up the role of a member temporary coordinator, so that during the coordinator change process, Affect the progress of the original communication work.

請參閱2A、2B、2C、2D所示,為本發明基於JGroups達成分散式通訊的協調者穩固選擇策略之方法之情境示意圖,在JGroups的設計機制裡,協調者相較其他成員多了負責維護群組最新狀態的工作,同時也肩負了同步群組資訊至其他成員的責任,群組資訊220在JGroups裡的術語叫做View(群組資訊220),記載了目前群組有哪些成員、群組協調者是誰以及各成員的最新狀態。協調者會定期發送最新的View 220給各個成員,以同步最新的群組資訊。原始JGroups機制的協調者是固定的,選擇第一個加入群組的A成員210為協調者,之後B成員211、C成員212和D成員213陸續加入,但不論群組成員如何變動,協調者都不會改變,但因為A成員210是第一個加入群組的,意即待在群組時間是最長的,一般來說,可以假設它是相對穩定的。另外,在探測所有成員即時狀態的 心跳(Heartbeat)程序上,協調者也須做最後確認的動作,一旦某成員探測不到鄰近成員,就會即刻回報協調者探測異常,協調者再詳加確認才能確定異常成員是否真的離線。但若因為環境出狀況而導致Heartbeat回報異常,就會發生網路分裂(Network Partition)的問題。 Please refer to 2A, 2B, 2C, 2D, which is a schematic diagram of the method for achieving a stable selection strategy of the coordinator of distributed communication based on JGroups. In the design mechanism of JGroups, the coordinator is responsible for maintenance compared with other members. The latest state of the group work, but also shoulders the responsibility of synchronizing group information to other members. The terminology of group information 220 in JGroups is called View (Group Information 220), which records which members and groups of the current group. Who is the coordinator and the latest status of each member. The coordinator will periodically send the latest View 220 to each member to synchronize the latest group information. The coordinator of the original JGroups mechanism is fixed. The first member A who joins the group is selected as the coordinator, and then the B member 211, the C member 212, and the D member 213 are successively joined, but regardless of how the group members change, the coordinator Neither will change, but because A member 210 is the first to join the group, meaning that the group time is the longest, in general, it can be assumed to be relatively stable. In addition, in detecting the real-time status of all members In the Heartbeat program, the coordinator must also perform the final confirmation action. Once a member does not detect the neighboring member, the coordinator will immediately report the abnormality. The coordinator will confirm the confirmation to determine whether the abnormal member is offline. However, if Heartbeat returns an abnormality due to environmental conditions, a network partition will occur.

如果因為環境出狀況而導致Heartbeat回報異常,就會發生網路分裂(Network Partition)的問題,請參閱2C、2D所示來說明原本機制在面對這種問題上,群組成員和協調者的變動過程。如圖2C所示,假設是C成員212因為網路異常而與原來群組失去聯繫,B成員211因為探測不到C成員212,就會回報給協調者A成員210,協調者再三確認後確定C成員212真的離線,於是從群組資訊中刪除C成員212,並指定D成員213為B成員新的鄰近成員,B成員211改成探測D成員213的狀態,爾後協調者將最新群組資訊發佈給B跟D成員後,表示跟C成員212完成脫離程序。C成員212因已連繫不到原本的群組成員,只好自立為新的群組,且由於是新群組的唯一成員,毫無疑問是新群組的當然協調者。圖2D接續圖2C情境,假設D成員213聯繫不到原本群組,但與C成員212卻能聯繫。很快地,B成員211發現探測不到D成員213,沿著先前相同的步驟將D成員213也踢出通訊群組,於是原本的通訊群組就只剩A成員210跟B成員211,互相做Heartbeat。分裂出去的D成員213因可以與C成員212溝通,故加入C成員212構成的新通訊群組,協調者仍是選擇第一個分裂出去的C成員212。因此,綜觀以上所述,可以觀察到協調者在計算效能跟網路流量上,相較其他成員有更大的需求。但是在群組成員不斷變動的過程中,卻無法適應情況 做更佳的選擇。 If Heartbeat returns an abnormality due to environmental conditions, Network Partition will occur. Please refer to 2C and 2D to illustrate the original mechanism in the face of this problem, group members and coordinators. The process of change. As shown in FIG. 2C, it is assumed that the C member 212 loses contact with the original group due to a network abnormality, and the B member 211 will report to the coordinator A member 210 because the C member 212 is not detected, and the coordinator confirms and confirms again. The C member 212 is really offline, so the C member 212 is deleted from the group information, and the D member 213 is designated as the new neighbor member of the B member, and the B member 211 is changed to the state of the probe D member 213, and then the coordinator will be the latest group. After the information is released to the B and D members, it indicates that the C member 212 has completed the separation process. C member 212 has no connection with the original group members, but has to stand on his own as a new group, and since it is the only member of the new group, it is undoubtedly the natural coordinator of the new group. Figure 2D follows the scenario of Figure 2C, assuming that the D member 213 does not contact the original group, but is in contact with the C member 212. Soon, the B member 211 finds that the D member 213 is not detected, and the D member 213 is also kicked out of the communication group along the same previous steps, so that the original communication group has only the A member 210 and the B member 211, and each other. Do Heartbeat. The split D member 213 is able to communicate with the C member 212, so joins the new communication group formed by the C member 212, and the coordinator still selects the first split C member 212. Therefore, looking at the above, it can be observed that the coordinator has greater demands on computing power and network traffic than other members. But in the process of changing members of the group, they are unable to adapt to the situation. Make better choices.

上列詳細說明乃針對本發明之一可行實施例進行具體說明,惟該實施例並非用以限制本發明之專利範圍,凡未脫離本發明技藝精神所為之等效實施或變更,均應包含於本案之專利範圍中。 The detailed description of the present invention is intended to be illustrative of a preferred embodiment of the invention, and is not intended to limit the scope of the invention. The patent scope of this case.

綜上所述,本案不僅於技術思想上確屬創新,並具備習用之傳統方法所不及之上述多項功效,已充分符合新穎性及進步性之法定發明專利要件,爰依法提出申請,懇請 貴局核准本件發明專利申請案,以勵發明,至感德便。 To sum up, this case is not only innovative in terms of technical thinking, but also has many of the above-mentioned functions that are not in the traditional methods of the past. It has fully complied with the statutory invention patent requirements of novelty and progressiveness, and applied for it according to law. Approved this invention patent application, in order to invent invention, to the sense of virtue.

Claims (5)

一種基於JGroups達成分散式通訊的協調者穩固選擇策略之方法,包括:步驟1.新成員要求加入群組或原協調者離開群組;步驟2.觸發選擇程序;步驟2-1.若為處於高負載環境,則包含新成員的所有成員回報給協調者主機各自效能資料後做排序;步驟2-2.若為處於高流量環境,則包含新成員的所有成員分別計算至各成員的RTT後,根據平均值做排序;步驟2-3.若為偏好自行設定,則根據設定檔做主機優先排序;步驟3.於選擇程序完成後,根據排序結果選出新協調者,其中該選擇程序,其包括四項選擇策略,係為:依生存時間最長,係為第一個加入群組的成員,自此之後協調者都不再變動;依主機效能,係當設定處於高負載的分散式環境時,會根據設定評估所有成員的計算效能後,再從中選擇一台負載最低的作為新協調者;依平均RTT回應時間,係當設定處於高流量(High Flow)的分散式環境時,會觀察一段時間內每一個成員到所有其他成員的封包來回時間後做平均,從中選擇一台平均RTT最小的作為新協調者;依系統組態設定,係由使用者得以事先將心目中主機優先順序寫入組態設定檔,系統就會依組態內容順序自動選擇最佳一台擔任協調者的角色;步驟4.新協調者發佈最終狀態結果給其他所有成員。 A method for a stable selection strategy based on JGroups to achieve decentralized communication, including: step 1. new members request to join the group or the original coordinator to leave the group; step 2. trigger the selection process; step 2-1. In a high-load environment, all members of the new member are reported to the coordinator host's respective performance data and then sorted; Step 2-2. If it is in a high-traffic environment, all members including the new member are calculated to each member's RTT. Sorting according to the average value; Step 2-3. If the preference is set by itself, the host is prioritized according to the configuration file; Step 3. After the selection process is completed, the new coordinator is selected according to the sorting result, wherein the selection program, Including four selection strategies, it is: the longest survival time, is the first member to join the group, since then the coordinator no longer changes; according to the host performance, when setting a high-load decentralized environment After evaluating the performance of all members according to the settings, select one with the lowest load as the new coordinator; according to the average RTT response time, when the setting is at high flow In the high-flow decentralized environment, it will observe the average time between each member and all other members after the packet is round-trip time, and select one with the smallest average RTT as the new coordinator; according to the system configuration settings, The user can write the priority of the host in the configuration configuration file in advance, and the system automatically selects the best role as the coordinator according to the configuration content order; Step 4. The new coordinator issues the final status result to All other members. 如申請專利範圍第1項所述之基於JGroups達成分散式通訊的協調者穩固選擇策略之方法,其中該高負載環境,係為包含CPU使用率、記憶體使用率及磁碟使用率的綜合評估,以有效穩固群組通訊機制。 The method for stably selecting a strategy for a coordinator based on JGroups to achieve decentralized communication, as described in claim 1, wherein the high load environment is a comprehensive evaluation including CPU usage, memory usage, and disk usage. To effectively stabilize the group communication mechanism. 如申請專利範圍第1項所述之基於JGroups達成分散式通訊的協調者穩固選擇策略之方法,其中該高負載環境,係以挑選群組成員中負載最低的成員為新協調者。 The method for solidifying the selection strategy by the coordinator of the distributed communication based on JGroups, as described in claim 1, wherein the high-load environment is to select the member with the lowest load among the group members as the new coordinator. 如申請專利範圍第1項所述之基於JGroups達成分散式通訊的協調者穩固選擇策略之方法,其中該高流量環境,係指一段時間內某成員到所有其他成員的封包來回時間後做平均,以有效穩固群組通訊機制。 The method for stably selecting a strategy for a coordinator who has reached a decentralized communication based on JGroups as described in claim 1, wherein the high-traffic environment refers to an average of a member's packet to and from all other members in a period of time. To effectively stabilize the group communication mechanism. 如申請專利範圍第1項所述之基於JGroups達成分散式通訊的協調者穩固選擇策略之方法,其中該高流量環境,係以挑選群組成員中平均RTT最小的為新協調者。 The method for solidifying the selection strategy by the coordinator of the distributed communication based on JGroups as described in claim 1 of the patent scope, wherein the high-traffic environment is to select the new average coordinator among the group members as the new RTT.
TW105143810A 2016-12-29 2016-12-29 A method for achieving a stable selection strategy by a coordinator of distributed communication based on JGroups TWI629882B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
TW105143810A TWI629882B (en) 2016-12-29 2016-12-29 A method for achieving a stable selection strategy by a coordinator of distributed communication based on JGroups

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW105143810A TWI629882B (en) 2016-12-29 2016-12-29 A method for achieving a stable selection strategy by a coordinator of distributed communication based on JGroups

Publications (2)

Publication Number Publication Date
TW201824817A TW201824817A (en) 2018-07-01
TWI629882B true TWI629882B (en) 2018-07-11

Family

ID=63639886

Family Applications (1)

Application Number Title Priority Date Filing Date
TW105143810A TWI629882B (en) 2016-12-29 2016-12-29 A method for achieving a stable selection strategy by a coordinator of distributed communication based on JGroups

Country Status (1)

Country Link
TW (1) TWI629882B (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW200742386A (en) * 2006-04-20 2007-11-01 Matsushita Electric Ind Co Ltd Method to generate secure certificate of new secured group, communication method of secured group, computing device having recording medium and network system
US20090219945A1 (en) * 2008-02-28 2009-09-03 Vladimir Blagojevic Combined join and state transfer
US20110113140A1 (en) * 2009-11-10 2011-05-12 Amit Bhayani Mechanism for Transparent Load Balancing of Media Servers via Media Gateway Control Protocol (MGCP) and JGroups Technology
TWI506557B (en) * 2013-10-17 2015-11-01 Chunghwa Telecom Co Ltd Balancing resources management methods in clustering environment

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW200742386A (en) * 2006-04-20 2007-11-01 Matsushita Electric Ind Co Ltd Method to generate secure certificate of new secured group, communication method of secured group, computing device having recording medium and network system
US20090219945A1 (en) * 2008-02-28 2009-09-03 Vladimir Blagojevic Combined join and state transfer
US20110113140A1 (en) * 2009-11-10 2011-05-12 Amit Bhayani Mechanism for Transparent Load Balancing of Media Servers via Media Gateway Control Protocol (MGCP) and JGroups Technology
TWI506557B (en) * 2013-10-17 2015-11-01 Chunghwa Telecom Co Ltd Balancing resources management methods in clustering environment

Also Published As

Publication number Publication date
TW201824817A (en) 2018-07-01

Similar Documents

Publication Publication Date Title
US9614717B2 (en) Method and system for terminal access and management in cloud computing
CN106375420A (en) System and method for intelligently monitoring server cluster based on load balancing
CN110213371A (en) Information consumption method, apparatus, equipment and computer storage medium
KR20150032346A (en) Computer information system and dynamic disaster recovery method therefor
CN105157294B (en) A kind of control method, system and the multiple on-line system of the oil return of multi-connected machine intelligence
US11032144B2 (en) Network control system, method and program
CN103763155A (en) Multi-service heartbeat monitoring method for distributed type cloud storage system
CN109151045A (en) A kind of distribution cloud system and monitoring method
CN104023088A (en) Storage server selection method applied to distributed file system
CN109460339A (en) The streaming computing system of log
US20140075046A1 (en) Information management method and device
TWI629882B (en) A method for achieving a stable selection strategy by a coordinator of distributed communication based on JGroups
Mahjoubi et al. LBFT: Load Balancing and Fault Tolerance in distributed controllers
US9866469B2 (en) Shutdown response system
CN104202386A (en) High-concurrency distributed file system and secondary load balancing method thereof
CN106991070A (en) Real-time computing technique and device
CN107483350A (en) A kind of gateway distribution method and device
CN103401951B (en) Based on the elastic cloud distribution method of peer-to-peer architecture
WO2010101038A1 (en) Destination node selection method, node, and recording medium
CN110445803A (en) A kind of traffic smoothing moving method of isomery cloud platform
CN103888310A (en) Monitor processing method and system
CN115134835B (en) Internet of things networking system and gateway selection method
CN105095315B (en) The methods, devices and systems of dynamic regulation Hash link points
CN113923222B (en) Data processing method and device
CN105630605A (en) Method for dynamically adjusting data service clusters on basis of data service access condition