benchmarking of web services platforms
play

BENCHMARKING OF WEB SERVICES PLATFORMS An evaluation with the - PDF document

BENCHMARKING OF WEB SERVICES PLATFORMS An evaluation with the TPC-App benchmark Daniel F. Garca, Javier Garca, Manuel Garca, Ivan Peteira Departamento de Informtica, Oviedo University, Campus de Viesques, Gijn, Spain {dfgarcia, javier,


  1. BENCHMARKING OF WEB SERVICES PLATFORMS An evaluation with the TPC-App benchmark Daniel F. García, Javier García, Manuel García, Ivan Peteira Departamento de Informática, Oviedo University, Campus de Viesques, Gijón, Spain {dfgarcia, javier, mgarcia, peteiraivan}@uniovi.es Rodrigo García, Pablo Valledor Centro Tecnológico de la Información y la Comunicación,Scientific and Technological Park, Gijón, Spain {rodrigo.garcia, pablo.valledor}@fundacionctic.org Keywords: Web services, benchmarking, B2B systems, e-Commerce platforms. Abstract: Web services are becoming an essential technology for the development of current distributed applications. Therefore, the organizations must be aware of the possibilities and limitations of the web services and their enabling technologies related to interoperability, performance, security, etc. Benchmarking techniques can provide very useful insights about which technologies are viable and what are the current limitations of the available implementations of those technologies. Furthermore, well established benchmarks provide a way to carry out useful comparisons between two or more implementations. In this paper we present several issues of how web service implementations could be benchmarked. We describe the TPC-App benchmark and explain the most interesting issues of our implementations. Finally we present benchmarking results for the two predominant development platforms, .NET and J2EE. of multiple platforms and allow exploring the 1 INTRODUCTION influence of configuration parameters of platforms on the achievable performance (García, 2003). The web services technology have changed the manner in which servers provide services to the users. Traditionally, a server or a closely-coupled 2 RELATED WORK cluster of servers contained all the information and the necessary resources to provide its services to the One of the first synthetic applications or benchmarks users. that included web services was PetStore (Sun, 2000). Currently, it is very common that a server have It was proposed by Sun Microsystems as a well to request services from other servers to provide the structured example of how to develop an application final service requested by a user, or other server that with the J2EE technology. PetStore is essentially a plays the role of user (Menascé 2003). All the web forms application that includes a unique web requests and responses carried out between two or service to query the status of a purchase order, and more servers to compose final services are based on therefore, it can not be considered a representative web services technology. application of web services usage. Today, service provision often involves a set of Immediately, Microsoft developed a version of coupled servers. However, in order to the user PetStore for the .NET platform (Microsoft, 2001) receive the services with acceptable response times, and compared the scalability, performance, number it is essential that the application servers that of code lines and %CPU necessary to execute its provides the web services have enough capacity to implementation with the J2EE-based version of Sun. process the expected workload intensity level. Shortly afterwards, The Middleware Company Benchmarks can be very useful tools to provide specified and implemented PetStore V2.0 (The clear indications about the capacity of web services Middleware Company, 2002) that only includes one platforms. Furthermore, they allow the comparison International Conference on Web Information Systems and Technologies (WEBIST’2006) 1 11-13 April 2006, Setubal, Portugal

  2. web service to obtain the status of a purchase order. benchmark, because it models very well the The innovation with respect to the previous version operations and the workload of a typical e-business is that consider two scenarios for web service application server that interacts with other activation: local (C2B) and remote (B2B). An e-business servers through web services. important benchmarking aspect is that an average thinking time of 10 seconds is used between the successive requests of the clients. This new version 3 AN OVERVIEW OF TPC-APP is also too simple to be considered as an acceptable benchmark for web services. The TPC-App benchmark emulates the activities of A more complete benchmark for web services is a B2B transactional application server system with @Bench (Doculabs, 2003) that exposes 3 services: the goal of obtaining an indication of the GetOrderDetails, GetCustomer, NewCustomer. The performance capabilities of the server system. users request the three services with the same The benchmarking architecture includes three probability and the time between two successive main elements: the System Under Test (SUT), the requests is chosen as a random value between 2 and Remote Business Emulator (RBE) and the external 8 seconds. This benchmark models the interactive emulators. Figure 1 gives a general overview of requests that users send to the application server of these three elements of the benchmark, showing also their own company (this represents a C2B scenario). their main internal components. However this benchmark does not model the relations of a server with other servers, that is, the 3.1 The Server Under Test typical B2B scenario integrated in a server based on web services. The server (SUT) exposes 7 remote methods to the The Spidermark benchmark (Subramanyam, remote business emulator (RBE). Figure 1 shows 2003) models a set of users sending interactive these methods, indicating also the percentage of requests to the application server of their own invocations of each method and the maximum company (this represents a C2B scenario). The admissible value of the 90-percentile response time benchmark also models the transactions carried out for the invocations of each particular method. by the application server with servers of external The most important method is Create Order, suppliers of the company to satisfy the requests of whose operation is explained in the following the users (this represents a B2B scenario). All the paragraphs. The Create Order method creates an interactions are implemented using web services. order on the database and sends a message to the Later, Sun Microsystems proposed the order fulfilment subsystem using the shipping queue. benchmark WSTest (Sun, 2004) to compare the An order summary is returned to the RBE. technologies used to implement web services. This Later the orders are processed asynchronously by benchmark only invocates empty methods in the the Shipping Process. It extracts the messages with remote server, that echo the variables received. This the orders from the shipping queue and process the benchmark has been designed to evaluate only the order in two different ways, as a function of the communication aspects involved in web services. order status: Microsoft modified this benchmark adding a method 1) If the status is pending, there are enough items to generate load in the server (Microsoft, 2004). in stock to complete the order and send the items to WSTest does not model any specific e-commerce the customers. The Shipping Process sends a request scenario and it is too simple to be considered as a to the external shipment notification emulator (SNE) general benchmark for web services platforms. which represents an external packet delivering Finally, the Transaction Processing Performance company. The SNE returns an image that represents Council organization (TPC) launched the a shipping label and a tracking number for the specification 1.0 of the benchmark TPC-App shipment package. (TPC 2004) that is an application server and web 2) If the status is back, there are not enough services benchmark. The application modelled by items in stock to complete the order, and therefore, a this benchmark is a retail distributor operating message is sent to the stock management queue in through Internet that support ordering and retrieving order to the stock management process add new information of products (this represents a typical items to the stock. Then, it sends a message to the B2B scenario). shipping queue containing the order with its status For our research work on benchmarking of web assigned to pending. services platforms, we have selected the TPC-App International Conference on Web Information Systems and Technologies (WEBIST’2006) 2 11-13 April 2006, Setubal, Portugal

Recommend


More recommend