International Journal of Digital Content Technology and its Applications Volume 4, Number 5, August, 2010
Research on Dynamic Web Services Management Based on QoS 1
Rongjie Liu, 2 Guangsheng Cao, 3 Jie Zhang, 4 Pingjian Song, 5 Binge Cui First Institute of Oceanography, SOA, Qingdao, China,
[email protected] *2, Corresponding Author College of Information Engineering, Qingdao Binhai University, Qingdao, China,
[email protected] 3, 4 First Institute of Oceanography, SOA, Qingdao, China,
[email protected] 5 College of Information Science and Engineering, Shandong University of Science and Technology, Qingdao, China,
[email protected] 1, First Author
doi: 10.4156/jdcta.vol4.issue5.6
Abstract Web Services is emerging as a promising technology. With the popularity of Web Services technology, people have recognized the importance of Web Services management. How to provide high-quality services for people is a problem to be resolved. QoS (Quality of Service) is an important guideline of Web Services quality and the base of Web Services management. In this paper, we propose a QoS-based dynamic Web Services management framework and apply it to our Web Services-based remote sensing data-sharing platform. The applied experiments results show that the performance and stability of Web Services-based application are greatly improved.
Keywords: Web service, QoS, Dynamic web services management 1. Introduction Along with the development and maturity of Web Services technology, users have much more choices since more and more companies and individuals provide web services on network. After the satisfaction with function requirements, people start to pay attention to non-functional ones, such as quality of web services. However, the registration and management mechanism of Web Services lack evaluation and dynamic management. People should filtrate and select web services themselves. Therefore, how to manage web services dynamically according to their running states and provide high quality services to users are urgent. Web Services QoS is one key factor for the success of serviceoriented applications, and also the base of Web Services management. People have done some researches on Web Services management and QoS. On Web Services management, paper [1] proposed a trusted quality of Web Services management framework based on six dimensional QoWS model and end-to-end monitoring. With special focus on QoS metrics, measurement units, and currency units, paper [2] discussed some requirements for ontologies that could be used in representing QoS constraints and management of Web Services. In paper [3], an adaptive Web Services management framework-XManager was proposed to manage web services and composite services in a better way. Paper [4] proposed QoS based discovery and selection of Web services using trust ratings. Currently, Web Services QoS researches are mainly on QoS model customization and QoS attributes measurement method. On QoS model customization, paper [5] proposed a QoS model including response time, cost, reliability; In paper [6], authors took five attributes into account covering price, execution time, reputation, success rates and availability; In paper [3], QoS attributes were divided into acquisition attributes and computing attributes. There were six attributes in acquisition attributes, and five in computing attributes. On QoS attributes measurement methods, paper [7] proposed measurement methods for each random QoS index of Web Services and self-adaptive management architecture. Paper [8] and [9] thought over QoS from Web Services composition and gave the definition of availability, security, response time, throughput for individual services. Then, aiming at five modes of Web Services composition, illustrated the calculation method of response time and price for each mode. Paper [10] defined aggregation for some QoS dimensions, such as execution time, cost, encryption level, throughput and uptime probability.
55
Research on Dynamic Web Services Management Based on QoS Rongjie Liu, Guangsheng Cao, Jie Zhang, Pingjian Song, Binge Cui
From above, we can see that researches on QoS-based Web Services management are few. How to customize QoS attributes and their measurement methods according to application requirements, and manage services dynamically based on QoS to provide high-quality services for external application, still need to be studied. So we study dynamic Web Services management based on QoS here. In this paper, we first propose a Web Services management framework based on QoS and give an extensible QoS model. Then we realize the framework and apply it to our web services-based remote sensing data-sharing system. Applied results show that by adding QoS-based Web Services management module, the stability and efficiency of application based on web services have greatly improved.
2. Design of Web Services Management Framework based on QoS Aiming at the shortage of Web Services management, we propose a Web Services management framework based on QoS, as shown in Figure 1. This framework consists of service layer, service management layer and application layer. Service layer is composed of a variety of web services and provides web services for service management layer. Service management layer is responsible for management and calls of web services. The application layer is composed of a variety of different applications requesting for web services. Application Layer Application 1
……
Application 2
Services Request
Application n QoS Data
Services
Service Management Layer
QoS Data
Service Service Selection
QoS Customization Service
Service Registry
Measurement Methods
QoS Data Feedback
Emergency Strategy
Caculating
QoS Attributes Services
Atrribute Storage
Services Classification
QoS Data acquisition
Measurement Methods
QoS Data Update
QoS Attributes
Service Registry Center Services
Services
Service Layer Service 1
……
Service 2
Service n
Figure 1. QoS-based Web Services Management Framework There into, Service Management Layer consists of QoS customization module, service registry module, service selection module and QoS data feedback module. Function of each module is described as follows: (1) QoS customization module consists of services classification module, QoS attributes customization module and QoS attributes measurement methods customization module. Services classification module is responsible for classifying services by their functions. The function of QoS attributes and measurement methods customization are customizing QoS attributes and their measurement methods for services. Therefore, we can evaluate services from different angles depending on application needs. (2) Service registry is the next work to fulfill after the customization of service QoS, including emergency strategies binding and data storage. The stored data include basic attributes data of web
56
International Journal of Digital Content Technology and its Applications Volume 4, Number 5, August, 2010
services, QoS attributes data and Qos measurement method data. Here, we introduce the emergency management and bind the emergency response strategy for each service. Once there is an abnormity, management layer will process the abnormity according to the designated emergency response strategy to improve the stability of web services-based applications. (3) Service selection is selecting the best services for applications according to their demand. (4) QoS data feedback occurs at the end of web services calls, and is mainly responsible for accessing QoS data of web services and updating service QoS data of service registry center.
3. Extensible QoS Model Establishment of QoS model is the basis of Web Services QoS study. However, there are still many differences between QoS attributes definitions, composition and calculation methods and different fields emphasize particularly on QoS. For example, banking systems concern about safety while air tickets booking systems concern about real-time. At the same time, new QoS attributes will appear with the applications of web services. So, the QoS models must be extensible to meet different needs of different fields. In addition, there may be several measurement methods for one QoS attribute. Taking service availability as an example, there are three measurement methods, such as number of calls, time interval and method between the two. Each method has its reasonable aspects and is applicable to different fields. Therefore, we can not describe one QoS attribute comprehensively using a single measurement method. So, giving a comprehensive measurement to one attribute needs several measurement methods. According to the analysis above, we design an extensible QoS model, shown in Figure 2. In this model, according to QoS characteristics, we divide QoS attributes sets into five sub-sets like security attributes set, performance attributes set, robustness attributes set, reputation attributes set and other attributes set. Each sub-set contains a number of attributes. In this model, each QoS property can bind multiple measurement methods.
Figure 2. Extensible QoS Model For easy organization and management of QoS data, we describe this model using four-tuple . The description of it is as follows: (1) SS (Service Set), is a set of services and composed of dual-tuple . SerID is service ID; SerName is the name of service. (2) ACS (Attribute Class Set), is attribute class set and composed of four-tuple . AttClaID is attribute class ID; AttClaName is the name of attribute class; SubAttID is sub-attribute ID, and each sub-attribute has its own unique ID and name. SerID is the ID of Service. (3) AS (Attribute Set), is a set of attributes. It is composed of five-tuple . AttClaID is the ID of attribute class; SubAttID is sub-attribute ID; SubAttName is the name of sub-attribute; Value is the attribute value; MethodID is the measurement method id for attribute.
57
Research on Dynamic Web Services Management Based on QoS Rongjie Liu, Guangsheng Cao, Jie Zhang, Pingjian Song, Binge Cui
(4) CMS (Computing Method Set), is a set of measurement methods composed of triple-tuple . MethodID is the ID of method; MethodName is the name of method; MethodParam is the method parameter. Each method has its own unique ID. This is the mathematical abstraction and description of our QoS model. This model can customize QoS attributes according to different fields, and has a high expansibility. New QoS attributes can be easily described and added.
4. Experiments and Analysis Based on the preceding analysis and design, we realize the QoS-based Web Services management framework including QoS model and integrate it into our web services-based remote sensing image sharing platform. In this dynamic web services management module, we choose availability of robustness as QoS measurement attribute and number of successful calls as its measurement method. In order to test its effectiveness and robustness, we carry out efficiency test and fault-tolerant detection experiments taking the cloud detection service of sharing platform as an example. Cloud amount is an important index of optical satellite image and reflects the availability of image. Cloud detection service is a service for cloud amount computing and we call it to calculate the cloud amount of each satellite image in our sharing platform. We use a Landsat-5 TM image as experiment data, totaling size of which is 374MB. Experiments are conducted in laboratory LAN. The experiments environment is as follows: (1) Cloud detection service A running on 192.168.0.44; (2) Cloud detection service B running on 192.168.0.49; (3) Service registration and management center running on 192.168.0.204. The configuration of each computer is shown in Table 1: Table 1. Computers configuration IP
CPU
RAM
HD
192.168.0.44
Intel(R) Core(TM) 2 Duo E8400 3GHz
3G
160G
192.168.0.49
Intel(R) Xeon(R) E5405 2GHz
4G
500G
192.168.0.204
Intel(R) Pentium(R) 4 2.4GHZ
1.5G
80G
In this paper, the conflict of applications refers to more than one application calling one service at the same time. First, we call the cloud detection services A, B respectively without conflict with other applications and record their running time. The running time of service A is recorded as Ta and B is recorded as Tb. Test results are shown in Table 2. Table 2. Test results Testing Times First Second Third Average Time Ta
41s
41s
41s
41s
Tb
47s
47s
47s
47s
We can see from Table 2: The average running time of service A without conflict with other applications is 41s. The performance of service A is stable.
58
International Journal of Digital Content Technology and its Applications Volume 4, Number 5, August, 2010
The average running time of service B without conflict with other applications is 47s. The performance of service B is stable.
4.1 Efficiency Test In absence of dynamic services management module, these applications bind with the same service statically and the service supplier processes the service calls according to the request order. All these applications share the resources of service supplier. In order to test the performance of dynamic services management module when conflict, we first conduct experiments without dynamic service management module. In the experiments, application A1 and A2 call service A at the same time and record their running time respectively. Testing results are shown in Table 3: Table 3. Test results Times Applications Running Time Fulfilling Time
First
Second
Third
A1
A2
A1
A2
A1
A2
86s
83s
84s
78s
84s
85s
86s
84 s
85 s
We can see from Table 3, the average time of fulfilling two applications is 85s, more than twice the running time of service A tested above. It indicates that more than one application calling one service at the same time influence the execution efficiency of service and the dynamic service management is necessary. Then we add dynamic service management module to the platform and conduct experiments. In the experiments, application A1 and A2 request for cloud detection service successively and the request time of A1 is a little earlier than that of A2. The successful calling times of service A is more than that of service B. So service management center dynamically bind A1 with service A, and A2 with service B according to the request order and service availability. The running time of service A is recorded as Ta and B is recorded as Tb. Test results are shown in Table 4: Table 4. Test results Times
First
Second
Third
Application
A1
A2
A1
A2
A1
A2
Ta
41s
-
41s
-
41s
-
Tb
-
46s
-
48s
-
47s
From table 4, we can see that the average time of fulfilling two applications is 47s, same as the running time of service B tested above, far less than 85s. The results show that dynamic service management module can improve the efficiency of services-based applications.
4.2 Fault-Tolerant Detection In this paper, we add emergency management into our dynamic services management framework and bind services with corresponding emergency response strategy. And here, our strategy is choosing another best service for application when one service is abnormal. In order to test its efficiency, we conduct fault-tolerant detection experiments. First, we conduct experiments without the dynamic service management module. In the experiments, application App bind cloud detection service A statically and we terminate service A after it starts. Then record the running state of service A,B and App respectively. Test results are shown in Table 5:
59
Research on Dynamic Web Services Management Based on QoS Rongjie Liu, Guangsheng Cao, Jie Zhang, Pingjian Song, Binge Cui
Table 5. Test results Times
First
Second
Third
Service A
Terminated
Terminated
Terminated
Service B
Normal
Normal
Normal
App
Failed
Failed
Failed
We can see from Table 5, without dynamic service management module, the performance of application depends on that of service bound by them. Once the service is abnormal, application will fail, even though other similar services are normal and can supply services. Then we carry out experiments with dynamic management module. In the experiments, application App request for cloud detection service and the dynamic management module assign service A for it according to service availability. We terminate service A forcedly when service A running for 10s and 30s, then record the running state of service A, B and App respectively. And record the running time of service as T1. Test results are shown in Table 6. Table 6. Test results Terminating
10s
time
30s
Times
First
Second
Third
First
Second
Third
Service A
Terminated
Terminated
Terminated
Terminated
Terminated
Terminated
Service B
Normal
Normal
Normal
Normal
Normal
Normal
App
Normal
Normal
Normal
Normal
Normal
Normal
T1
59s
57s
59s
79s
78s
79s
Average
58.33s
78.67s
We can see from Table 6, due to emergency management, system can re-bind other services automatically for application to ensure the completion of it when there is fault in one service. In addition, service execution time T10 = 48.33, when terminated time is 10s, and T30 = 48.67s, when terminated time is 30s. Without conflict, the running time of service B Tb is 47s. Difference between T10 and Tb is 1.33s and 1.67s between T30 and Tb (including some operating time error). It means service fault processing time is about 1s, far less than the service running time 47s. So it has very little influence to application execution time and can improve the stability of service-based applications evidently.
5. Conclusion In this paper, we first designed a dynamic Web Services management framework based on QoS and gave an extensible QoS model. Then we realized it and integrated it to our web services-based remote sensing data-sharing platform. To test its efficiency, we conducted efficiency and fault-tolerance test experiments. Results showed that the stability and efficiency of service-based application had improved greatly.
6. Acknowledgement This paper is supported by 200705027 and 200805011 of special funds for public welfare industry research projects of finance ministry of china, 2008T29 and 2007G21 of special funds for basic scientific research projects of First Institute of Oceanography, S.O.A.
60
International Journal of Digital Content Technology and its Applications Volume 4, Number 5, August, 2010
10. References [1] Nan Guo, Tianhan Gao, and Bin Zhang. A Trusted Quality of Web Services Management Framework Based on Six Dimensional QoWS Model and End-to-End Monitoring. Proceedings of the 11th Asia-Pacific Symposium on Network Operations and Management: Challenges for Next Generation Network Operations and Service Management 2008, LNCS 5297: 437 - 440 [2] Vladimir Tosic, Babak Esfandiari, Bernard Pagurek, and Kruti Patel. On Requirements for Ontologies in Management of Web Services. WES 2002, LNCS 2512, pp. 237–247, 2002 [3] Han Dong,Wang Ying,Zhu Yan. Design and implementation of adaptive Web services management framework [J]. Journal Of Zhejiang University (Engineering Science), 2007, 41(10):1669-1673 [4] Yukyong Kim, "QoS-Aware Web Services Discovery with Trust Management", JCIT: Journal of Convergence Information Technology, Vol. 3 No. 2, pp. 67-73, June 2008 [5] Zeng Liangzhao, Benatallah B, Dumas M, et al. QoS-aware middleware for web services composition [J]. IEEE Transaction on Software Engineering, 2004, 30(5):311-327 [6] Liu Yutu, Ngu Anne H H, Zeng Liangzhao. QoS Computation and Policing in Dynamic Web Service Selection[C]. In Proc of the 13th Int World Wide Web Conf on Alternate track papers & posters. USA: New York. 2004:66-73 [7] Fan Xiao-Qin, Jiang Chang-Jun, Wang Jun-Li, Pang Shan-Chen. Random-QoS-Aware Reliable Web Services Composition [J]. Journal of Software, 2009, 20(3): 546-556 [8] Menascé D A. QoS Issues in Web Services [J]. IEEE Internet Computing, 2002, 6(6):72-75 [9] Menascé D A. Composing Web Services: A QoS View [J]. IEEE Internet Computing, 2004, 8(6): 88-90 [10] Jaeger M C, Rojec-Goldmann G,Muhl G. QoS aggregation for Web service composition using workflow patterns[C]. In Proc of the 8th IEEE Int Conf on Enterprise Distributed Object Computing (EDOC). California: Monterey, 2004:149-159
61