TW201619847A - 分散式運算方法及系統 - Google Patents
分散式運算方法及系統 Download PDFInfo
- Publication number
- TW201619847A TW201619847A TW103131285A TW103131285A TW201619847A TW 201619847 A TW201619847 A TW 201619847A TW 103131285 A TW103131285 A TW 103131285A TW 103131285 A TW103131285 A TW 103131285A TW 201619847 A TW201619847 A TW 201619847A
- Authority
- TW
- Taiwan
- Prior art keywords
- host
- subtasks
- mobile terminal
- mobile terminals
- subtask
- Prior art date
Links
Abstract
一種分散式運算方法,包括:主機藉由網路與複數移動終端建立遠端連接;主機根據移動終端的數量,將資料計算任務分割為複數子任務分配給所述複數移動終端;所述複數移動終端執行所述複數子任務,獲得複數子任務的計算結果,藉由網路將所述複數子任務的計算結果發回給所述主機;所述主機整合所述複數子任務的計算結果,獲得所述資料計算任務的計算結果。本發明還公開了一種分散式運算系統。
Description
本發明涉及運算領域,尤指一種分散式運算方法及系統。
隨著現代社會的不斷發展,人們越來越傾向於方便、高效、快捷的生活節奏,為適應這樣的發展,智慧移動終端(如智慧手機和平板電腦)在消費市場中獲得了極大的普及,強大的性能和豐富的應用使得智慧移動終端幾乎成為人們的必配品。智慧移動終端的處理器從單核發展到雙核,再到四核甚至八核,其資料計算能力不斷提高,作業系統也不斷完善,從某種意義來講,這些智慧移動終端已經成為了可移動的小型電腦。可是,擁有強大資料計算能力的智慧移動終端,對我們來說只是用戶體驗上操作更加流暢,這只佔用了處理器很小一部分的計算能力,而大部分計算能力處於閒置狀態,這在一定程度上造成了計算資源的浪費。
鑒於以上內容,有必要提供一種可有效利用閒置計算資源的分散式運算方法及系統。
一種分散式運算方法,所述方法包括:
主機藉由網路與複數移動終端建立遠端連接;
所述主機計算所述複數移動終端的數量;
所述主機根據所述複數移動終端的數量,將資料計算任務分割為複數子任務;
所述主機藉由網路將所述複數子任務分配給所述複數移動終端;
所述複數移動終端執行所述複數子任務,獲得複數子任務的計算結果;
所述複數移動終端藉由網路將所述複數子任務的計算結果發回給所述主機;及
所述主機整合所述複數子任務的計算結果,獲得所述資料計算任務的計算結果。
優選地,所述方法還包括:
每一移動終端向所述主機報告自己的計算能力;及
所述主機根據每一移動終端的計算能力,分配一定數量的子任務給該移動終端。
優選地,所述方法還包括:
所述主機在存儲區中建立未分配任務池和已分配任務池;及
所述主機將未分配的子任務放置在所述未分配任務池中,將已分配的子任務放置在所述已分配任務池中。
優選地,所述方法還包括:
所述主機給每一子任務設定一交付時間;及
當超過交付時間,所述主機尚未收到該子任務的計算結果時,所述主機向分配到該子任務的移動終端發送一撤銷該子任務的消息,並將該子任務重新分配給另一移動終端。
優選地,所述方法還包括:
當一移動終端接收到使用者的拒絕服務指令時,所述移動終端向所述主機發送一拒絕服務消息;
當所述主機接收到所述拒絕服務消息時,所述主機斷開與所述移動終端的連接。
一種分散式運算系統,包括主機及複數移動終端,所述主機藉由網路與所述複數移動終端建立遠端連接,所述主機計算所述複數移動終端的數量,並根據所述複數移動終端的數量,將資料計算任務分割為複數子任務,所述主機藉由網路將所述複數子任務分配給所述複數移動終端,所述複數移動終端執行所述複數子任務,獲得複數子任務的計算結果,並藉由網路將所述複數子任務的計算結果發回給所述主機,所述主機整合所述複數子任務的計算結果,獲得所述資料計算任務的計算結果。
優選地,每一移動終端向所述主機報告自己的計算能力,所述主機根據每一移動終端的計算能力,分配一定數量的子任務給該移動終端。
優選地,所述主機在存儲區中建立未分配任務池和已分配任務池,將未分配的子任務放置在所述未分配任務池中,將已分配的子任務放置在所述已分配任務池中。
優選地,所述主機給每一子任務設定一交付時間,當超過交付時間,所述主機尚未收到該子任務的計算結果時,所述主機向分配到該子任務的移動終端發送一撤銷該子任務的消息,並將該子任務重新分配給另一移動終端。
優選地,當一移動終端接收到使用者的拒絕服務指令時,所述移動終端向所述主機發送一拒絕服務消息,所述主機在接收到所述拒絕服務消息後,斷開與所述移動終端的連接。
與習知技術相比,上述分散式運算系統及方法,藉由將普及廣泛、數量眾多、計算閒置率高的移動終端接入分散式運算網路,由主機分配任務給移動終端,移動終端執行任務獲得計算結果,再由主機整合計算結果,從而可以完成巨大資料量的計算任務,並且有效利用了閒置的計算資源。
圖1為本發明的一實施方式中的分散式運算系統的框圖。
圖2為本發明的一實施方式中的分散式運算方法的流程圖。
請參閱圖1,圖中示意性的示出了根據本發明一種實施方式的分散式運算系統。所述分散式運算系統包括主機11及複數移動終端12。所述主機11可以是伺服器、工作站、個人電腦等計算設備,所述移動終端12可以是智慧手機、平板電腦、個人數位助理(PDA)等可擕式計算設備。
所述主機11藉由網路與所述複數移動終端12建立遠端連接,所述網路可以是有線網路、Wifi網路、3G網路或其他網路。
所述主機11在接收到一個資料計算任務後,計算所述複數移動終端12的數量,並根據所述複數移動終端12的數量,將所述資料計算任務分割為複數子任務,再將所述複數子任務分配給所述複數移動終端12。
在一些實施方式中,在與所述主機11建立遠端連接後,所述移動終端12還向所述主機11報告自己的計算能力,所述計算能力可以參考所述移動終端12的硬體設備,例如中央處理器(CPU)、記憶體(Memory)、存儲空間等的性能,和所述移動終端12當前正在處理的其他任務的數量來綜合評定。所述移動終端12還可以根據使用者的設定,指定用於參與分散式運算的資源配額,所述資源配額也影響所述移動終端12報告給所述主機11的計算能力。
當所述主機11獲知所述複數移動終端12的計算能力後,所述主機11根據每一移動終端12的計算能力向其分配與其計算能力相適應的子任務數量,若該移動終端12的計算能力較強大,則所述主機可以分配較多或較複雜的子任務給該移動終端12,若該移動終端12的計算能力較小,則所述主機可以較少或較簡單的子任務給該移動終端。在一些實施方式中,所述主機11在存儲區中建立未分配任務池和已分配任務池,將未分配的子任務放置在所述未分配任務池中,將已分配的子任務放置在所述已分配任務池中。
所述複數移動終端12接收到所述複數子任務後,執行所述複數子任務,獲得所述複數子任務的計算結果,並藉由網路將所述複數子任務的計算結果發回給所述主機11。
所述主機11在接收到所述複數子任務的計算結果後,整合所述複數子任務的計算結果,獲得所述整個資料計算任務的計算結果。
在一些實施方式中,所述主機11給每一子任務設定一交付時間,當超過交付時間,所述主機11尚未收到該子任務的計算結果時,所述主機11向分配到該子任務的移動終端12發送一撤銷該子任務的消息,並將該子任務重新分配給另一移動終端12。
當所述移動終端12的使用者需要在所述移動終端12上運行使用資源較多應用程式(例如3D遊戲)時,所述用戶可以向所述移動終端12下達拒絕服務指令,當所述移動終端12從使用者那裡接收到該拒絕服務指令時,所述移動終端12向所述主機11發送一拒絕服務消息,當所述主機11接收到所述拒絕服務消息時,所述主機11斷開與所述移動終端12的連接。這樣可以保證所述移動終端12的使用者對設備的使用優先順序更高。
請參閱圖2,圖中示意性的示出了根據本發明一種實施方式的分散式運算方法的流程圖。所述方法包括以下步驟:
步驟S201,所述主機11藉由網路與所述複數移動終端12建立遠端連接,所述網路可以是有線網路、Wifi網路、3G網路或其他網路。
步驟S202,每一移動終端12向所述主機11報告自己的計算能力,所述計算能力可以參考所述移動終端12的硬體設備,例如中央處理器(CPU)、記憶體(Memory)、存儲空間等的性能,和所述移動終端12當前正在處理的其他任務的數量來綜合評定。所述移動終端12還可以根據使用者的設定,指定用於參與分散式運算的資源配額,所述資源配額也影響所述移動終端12報告給所述主機11的計算能力。
步驟S203,所述主機11在接收到一個資料計算任務後,計算所述複數移動終端12的數量,並根據所述複數移動終端12的數量,將所述資料計算任務分割為複數子任務。
步驟S204,所述主機11根據每一移動終端12的計算能力向其分配與其計算能力相適應的子任務數量,若該移動終端12的計算能力較強大,則所述主機可以分配較多或較複雜的子任務給該移動終端12,若該移動終端12的計算能力較小,則所述主機可以較少或較簡單的子任務給該移動終端。在一些實施方式中,所述主機11在存儲區中建立未分配任務池和已分配任務池,將未分配的子任務放置在所述未分配任務池中,將已分配的子任務放置在所述已分配任務池中。
步驟S205,所述複數移動終端12接收到所述複數子任務後,執行所述複數子任務,獲得所述複數子任務的計算結果。
步驟S206,所述複數移動終端12藉由網路將所述複數子任務的計算結果發回給所述主機11。
步驟S207,所述主機11在接收到所述複數子任務的計算結果後,整合所述複數子任務的計算結果,獲得所述整個資料計算任務的計算結果。
在一些實施方式中,所述主機11給每一子任務設定一交付時間,當超過交付時間,所述主機11尚未收到該子任務的計算結果時,所述主機11向分配到該子任務的移動終端12發送一撤銷該子任務的消息,並將該子任務重新分配給另一移動終端12。
當所述移動終端12的使用者需要在所述移動終端12上運行使用資源較多應用程式(例如3D遊戲)時,所述用戶可以向所述移動終端12下達拒絕服務指令,當所述移動終端12從使用者那裡接收到該拒絕服務指令時,所述移動終端12向所述主機11發送一拒絕服務消息,當所述主機11接收到所述拒絕服務消息時,所述主機11斷開與所述移動終端12的連接。這樣可以保證所述移動終端12的使用者對設備的使用優先順序更高。
與習知技術相比,上述分散式運算系統及方法,藉由將普及廣泛、數量眾多、計算閒置率高的移動終端接入分散式運算網路,由主機11分配任務給移動終端12,移動終端12執行任務獲得計算結果,再由主機11整合計算結果,從而可以完成巨大資料量的計算任務,並且有效利用了閒置的計算資源。
綜上所述,本發明確已符合發明專利之要件,遂依法提出專利申請。惟,以上所述者僅為本發明之較佳實施方式,自不能以此限制本案之申請專利範圍。舉凡熟悉本案技藝之人士爰依本發明之精神所作之等效修飾或變化,皆應涵蓋於以下申請專利範圍內。
11‧‧‧主機
12‧‧‧移動終端
無
11‧‧‧主機
12‧‧‧移動終端
Claims (10)
- 一種分散式運算方法,所述方法包括:
主機藉由網路與複數移動終端建立遠端連接;
所述主機計算所述複數移動終端的數量;
所述主機根據所述複數移動終端的數量,將資料計算任務分割為複數子任務;
所述主機藉由網路將所述複數子任務分配給所述複數移動終端;
所述複數移動終端執行所述複數子任務,獲得複數子任務的計算結果;
所述複數移動終端藉由網路將所述複數子任務的計算結果發回給所述主機;及
所述主機整合所述複數子任務的計算結果,獲得所述資料計算任務的計算結果。 - 如申請專利範圍第1項所述之分散式運算方法,其中所述方法還包括:
每一移動終端向所述主機報告自己的計算能力;及
所述主機根據每一移動終端的計算能力,分配一定數量的子任務給該移動終端。 - 如申請專利範圍第1項所述之分散式運算方法,其中所述方法還包括:
所述主機在存儲區中建立未分配任務池和已分配任務池;及
所述主機將未分配的子任務放置在所述未分配任務池中,將已分配的子任務放置在所述已分配任務池中。 - 如申請專利範圍第1項所述之分散式運算方法,其中所述方法還包括:
所述主機給每一子任務設定一交付時間;及
當超過交付時間,所述主機尚未收到該子任務的計算結果時,所述主機向分配到該子任務的移動終端發送一撤銷該子任務的消息,並將該子任務重新分配給另一移動終端。 - 如申請專利範圍第1項所述之分散式運算方法,其中所述方法還包括:
當一移動終端接收到使用者的拒絕服務指令時,所述移動終端向所述主機發送一拒絕服務消息;
當所述主機接收到所述拒絕服務消息時,所述主機斷開與所述移動終端的連接。 - 一種分散式運算系統,所述系統包括主機及複數移動終端,所述主機藉由網路與所述複數移動終端建立遠端連接,所述主機計算所述複數移動終端的數量,並根據所述複數移動終端的數量,將資料計算任務分割為複數子任務,所述主機藉由網路將所述複數子任務分配給所述複數移動終端,所述複數移動終端執行所述複數子任務,獲得複數子任務的計算結果,並藉由網路將所述複數子任務的計算結果發回給所述主機,所述主機整合所述複數子任務的計算結果,獲得所述資料計算任務的計算結果。
- 如申請專利範圍第6項所述之分散式運算系統,其中每一移動終端向所述主機報告自己的計算能力,所述主機根據每一移動終端的計算能力,分配一定數量的子任務給該移動終端。
- 如申請專利範圍第6項所述之分散式運算系統,其中所述主機在存儲區中建立未分配任務池和已分配任務池,將未分配的子任務放置在所述未分配任務池中,將已分配的子任務放置在所述已分配任務池中。
- 如申請專利範圍第6項所述之分散式運算系統,其中所述主機給每一子任務設定一交付時間,當超過交付時間,所述主機尚未收到該子任務的計算結果時,所述主機向分配到該子任務的移動終端發送一撤銷該子任務的消息,並將該子任務重新分配給另一移動終端。
- 如申請專利範圍第6項所述之分散式運算系統,其中當一移動終端接收到使用者的拒絕服務指令時,所述移動終端向所述主機發送一拒絕服務消息,所述主機在接收到所述拒絕服務消息後,斷開與所述移動終端的連接。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW103131285A TW201619847A (zh) | 2014-09-11 | 2014-09-11 | 分散式運算方法及系統 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW103131285A TW201619847A (zh) | 2014-09-11 | 2014-09-11 | 分散式運算方法及系統 |
Publications (1)
Publication Number | Publication Date |
---|---|
TW201619847A true TW201619847A (zh) | 2016-06-01 |
Family
ID=56755010
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW103131285A TW201619847A (zh) | 2014-09-11 | 2014-09-11 | 分散式運算方法及系統 |
Country Status (1)
Country | Link |
---|---|
TW (1) | TW201619847A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107135272A (zh) * | 2017-06-03 | 2017-09-05 | 苏州科技大学 | 分布式数据处理方法 |
TWI655549B (zh) * | 2017-12-28 | 2019-04-01 | 李耀庭 | 分散式運算系統 |
CN109976899A (zh) * | 2017-12-28 | 2019-07-05 | 李耀庭 | 一种分布式运算系统 |
-
2014
- 2014-09-11 TW TW103131285A patent/TW201619847A/zh unknown
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107135272A (zh) * | 2017-06-03 | 2017-09-05 | 苏州科技大学 | 分布式数据处理方法 |
TWI655549B (zh) * | 2017-12-28 | 2019-04-01 | 李耀庭 | 分散式運算系統 |
CN109976899A (zh) * | 2017-12-28 | 2019-07-05 | 李耀庭 | 一种分布式运算系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105471950A (zh) | 分布式计算方法及系统 | |
Varghese et al. | Challenges and opportunities in edge computing | |
US10911373B2 (en) | Smart autoscaling of a cluster for processing a work queue in a distributed system | |
US9332039B2 (en) | Method, apparatus, and system for establishing voice communication | |
WO2020019519A1 (zh) | 任务分配方法及装置 | |
KR101612390B1 (ko) | 호스트 디바이스의 능력들의 증강 | |
JP2015133133A5 (zh) | ||
WO2018223786A1 (zh) | 云桌面系统、及其图像序列压缩编码方法和介质 | |
US10728050B2 (en) | Method of terminal-based conference load-balancing, and device and system utilizing same | |
SG11201810195VA (en) | Exclusive agent pool allocation method, electronic device, and computer readable storage medium | |
CN105468513B (zh) | 一种基于移动终端的测试方法、装置及系统 | |
MY193309A (en) | Resource processing method and apparatus | |
CN109729115B (zh) | 实现分布式计算的方法、装置、代理服务器、终端设备 | |
CN108234659B (zh) | 数据处理方法、装置及系统 | |
WO2019072208A1 (zh) | 应用程序运行控制方法及设备 | |
CN112925607A (zh) | 一种系统扩缩容方法及装置、电子设备 | |
TW201619847A (zh) | 分散式運算方法及系統 | |
WO2019072180A1 (zh) | 应用程序的资源配置方法及设备 | |
TW201810148A (zh) | 區塊鏈負載平衡系統及其方法 | |
US10158896B2 (en) | Video channel allocation management method and related device, and communication system | |
EP4221153A1 (en) | Method, apparatus and system for scheduling computing instance | |
CN102404388A (zh) | 一种应用虚拟化的负载分担方法及装置 | |
CN111224824B (zh) | 一种边缘自治模型构建方法 | |
JP2014146322A (ja) | 画面割り当て方法 | |
WO2023020432A1 (zh) | 算力请求、算力分配、算力执行方法、终端及网络侧设备 |