• 沒有找到結果。

一個在CORBA架構下的負載平衡演算法

N/A
N/A
Protected

Academic year: 2021

Share "一個在CORBA架構下的負載平衡演算法"

Copied!
8
0
0

加載中.... (立即查看全文)

全文

(1)國 立 交 通 大 學 資訊管理研究所 碩 士 論 文. 一個在 CORBA 架構下的負載平衡演算法. A Loading-Balance Algorithm for Improving Efficiency of CORBA. 研 究 生:紀 浩 仙 指導教授:羅 濟 群 博士. 中 華 民 國 九十三 年 六 月 i.

(2) 一個在 CORBA 架構下的負載平衡演算法 A Loading-Balance Algorithm for Improving Efficiency of CORBA. 研 究 生:紀 浩 仙. Student:Haohsien Chi. 指導教授:羅 濟 群. Advisor:Chi-Chun Lo. 國立交通大學 資訊管理研究所 碩士論文 A thesis Submitted to Institute of Information Management College of Management National Chiao Tung University In Partial Fulfillment of the Requirements For the Degree of Master of Business Administration In Information Management. June 2004 Hsinchu, Taiwan, the Republic of China. 中華民國 九十三 年 六月. ii.

(3) 中文摘要 傳統的分散式環境中,最常被提及的特性之一就是其負載平衡的特點。在以 CORBA 這個由 OMG 提出的架構中,定義且規範了許多分散式環境的標準。其中負載平衡 就是一個重要的特性,因此一些 ORB 發行廠商也將這特性加以實做,多數的廠商是 以一個額外的 agent 來處理 loading balance 的工作,但是我們發現這樣的架構下有 一個根本性的問題:當這個 agent 失敗的時候,所有的工作將全部受到影響。於是 我們提出了這個簡化的架構,雖然我使用的是 Visibroker 所發行的 ORB,但是屏除 了它的目錄和負載平衡服務,純粹以應用層面的模式,來處理這兩個問題。最重要 的一點,我們把這個負載平衡的權利放到 client 端來做,也就是說,只要 client 提出 請求,且不是所有的服務提供者都失敗的情形下,這個系統都可以存活。 藉由模擬實驗中,我們將所提出的架構加以多次反覆測試;並比較其和原先 Visibroker 隱含的架構。希望得到: 1. 在這樣的架構下,系統的表現是否真的能提昇?我們以服務的回覆時間作為測量 的基礎。 2. 相較於以發行的套裝軟體服務,這樣的架構會不會使得應用程式寫作者覺得更困 難、更難以撰寫,抑或沒有顯著的差別?也就是說,隱含性的架構比較方便或是 這樣的應用層面架構無顯著的差異;這裡我們將以質化分析來列舉優劣。 為了解決上述的問題,我們將想法加以實做,並用實驗模擬加以證明。. iii.

(4) Abstract In the traditional distributed systems, the most popular characteristic is loading-balance. In CORBA which is an OMG proposed architecture, this characteristic is also pointed out. In many published ORBs, many vendors used additional agents to handle this characteristic. But we found there will be a problem with this solution, that is, if this agent fails, the whole system will not work . So we proposed a simplified model. We put this characteristic to be implemented on client’s side. That is , if the client stands alive and not all service providers fail, the whole system will still be alive with this charateristic. By simulations and some experiments, we will repeatedly test the proposed model. And compare this model with VisiBorker which is a published ORBs. And hope to get the answers of the following questions: 1. In this proposed model, will the system’s performance be improved?This problem can be divided into two parts:One is system’s loading status, and the other is system’s response time.(efficiency) 2. Compare to the published CORBA software, will this model become more complicated to program?That is , this model is implemented on application layer, and some software embedded them in underlying architectures. What’s difference when coding or programming? To solve the above problem, we implemented this idea and used results of many experiments to get the answers.. iv.

(5) Table of contents: Introduction 1.1 Motivation and background 1.2 Purpose and Contribution 1.3 Research Method 1.3.1 Define research direction 1.3.2 Related works and survey 1.3.3 Problem Definition 1.3.4 Design the blueprint 1.3.5 Assumption and restriction 1.3.6 Implementation 1.3.7 Analysis and conclusion. 1 1 3 4 4 4 4 5 5 5 5. Related Work 2.1 CORBA Model 2.2 The steps of creating CORBA Applications 2.2.1 Define the remote interface 2.2.2 Compile the remote interface 2.3.4 Implement the server 2.2.4 Implement the client 2.2.5 Start the applications 2.3 Loading balance in distributed system 2.3.1 The loading balance method 2.4 Gathering real-time information of each node 2.4.1 The mechanism of interval shrinks 2.4.2 The model and algorithm symbols 2.4.3 The experiments and derived results 2.5 Synchronize the clock in each node. 6 6 7 8 8 9 9 9 9 10 11 11 12 13. 13 2.6 WSDL 15 2.7 Load Distribution and balance support in a workstation-based distributed system 16 2.7.1 The load balancing System (LBS) 16 2.7.2 Performance metrics selection 17 2.7.3 Data gathering strategies 18 2.7.4 The assumptions and scenario of this design 18 2.8 Loading Balancing in Visibroker’s smart agent 19 2.8.1 The loading balance and scalability in smart agent 19 v.

(6) 2.9 Comparing Loading balancing algorithm between each other. 20. Model of study 3.1 Define the problem 3.1.1 Main Problem 3.1.2 Data Gathering problem 3.1.3 Dynamic information 3.1.4 Synchronizing work 3.2 The assumption and solution to simulation restriction 3.3 The information gathering algorithm 3.4 The scenario and algorithm of one invocation 3.5 Main idea of this architecture 3.6 Splitting functions to subsystems. 22 22 22 22 23 23 23 24 24 25 26. Implementation and experiments 4.1 Hardware and Software architecture 4.1.1 Hardware 4.1.2 Software and implementing language 4.2 Interface Definition Language 4.3 IDL Compiled files 4.4 Big number factor computation 4.5 Define the host information 4.6 URL Naming interface 4.6.1 The IDL of URL Naming Simulation Results and Analysis 5.1 WSDL binding time 5.2 The value interval 5.3 Time for binding an object with its URL String 5.4 Overall execution time of big number factor computation. 27 27 27 27 27 28 28 30 34 34 36 36 36 37. 5.5 Ease of programming 5.5 Analysis of simulation Conclusion and future works 6.1 Conclusion 6.2 Future works References. vi. 38 39 40 41 41 41 42.

(7) List of figures: 1 2 3 4 5 6 7 8 9 10. My research method flow ORB Communication The development life cycle of CORBA-based systems Cost rate and refresh probability Load Balancing System The flow of one invocation The functions and splitting service part of codes in information data transferring interface (IDL) Server side skeleton implementation class diagram Client side stub application. 5 6 8 13 17 25 26 27 29 30. 11 12 13 14 15 16 17. Information structure WSDL file, defined the operation and type Generated stub codes for client side A test case to use a WSDL service IDL Definition of URL Naming Simulation for optimal width The execution time of computation. 31 32 33 34 35 37 38. vii.

(8) List of tables 1. Model and algorithm symbols 2. The comparison of each models 3. Average WSDL binding time 4. Average binding time of URL Naming service 5. Average binding time of Visibroker Smart Agent directory service 6. Summary of results 7. The records of System’s resource usage 8. Qualified analysis of the model. viii. 12 21 36 37 37 38 39 39.

(9)

參考文獻

相關文件

[r]

[r]

Quality kindergarten education should be aligned with primary and secondary education in laying a firm foundation for the sustainable learning and growth of

[r]

For pedagogical purposes, let us start consideration from a simple one-dimensional (1D) system, where electrons are confined to a chain parallel to the x axis. As it is well known

[r]

„ An adaptation layer is used to support specific primitives as required by a particular signaling application. „ The standard SS7 applications (e.g., ISUP) do not realize that

[r]