Upload
quentin-lamb
View
215
Download
0
Tags:
Embed Size (px)
Citation preview
Web Service Implementation
Maitreya, Kishore, Jeff
Objective
Creating a web-service to exploit and get a better understanding of the Web Service Architecture
Learn the usage of SOAP, WSDL and UDDI Perform coordination among parallel services Exploit the feature of parallel processing to
simplify an otherwise very time-taking task of running “phrap” on a chicken EST file
Why Web-Services?
Interoperability Reuse Ubiquitous Flexibility of wrapping the service to
customize as per needs Easy application integration
Tools in WebSphere for Web Services development Discover. Browse the UDDI Business Registries to locate existing
Web services for integration. Create or Transform. Create Web services from existing artifacts,
such as Java beans, enterprise beans. Build. Wrap existing artifacts as SOAP and HTTP GET/POST
accessible services and describe them in WSDL. Assists in generating a Java client proxy to Web services described in WSDL
Deploy. Deploy Web services into the WebSphere Application Server.
Test. Test Web services running locally or remotely in order to get instant feedback.
Publish. Publish Web services to a UDDI v2 Business Registry.
Supported Specifications
Web Services Definition Language (WSDL) Version 1.1
Apache SOAP Version 2.3 Universal Description, Discovery, and
Integration Version 2.0
Web services on WebSphere (WoW)
Service Provider
Service Broker Service Requestor
publish bind
find
Web services on WebSphere (WoW)
Service Provider
Service Broker Service Requestor
publish bind
find
PublishUses IBM’s UDDI 4J
EnquiryUses IBM’s UDDI 4JDiscovery
Web services on WebSphere (WoW)
Service Provider
Service Broker Service Requestor
bind
find
Description WSTK’s java2wsdl
Generate Stub WSTK’s wsdl2javaDescription
publish
Web services on WebSphere (WoW)
Service Provider
Service Broker Service Requestor
bind
find
Request-Response
publish
Apache ProxyGenerated from WSDL
Apache SOAPrpc router
Message router
Apache SOAP 4JJava based SOAP API
Purposed Architecture
Web ServiceProvider
(WebSphereAppication server)
UDDI RegistryContaining service
Description of PhrapWeb service
Web BrowserContaining Client Stub
Of the Web service
Phrap WebService
Phrap WebService
Phrap WebService
* * *
Service Registration
ServiceDiscovery
Service RequestResponse
ParallelInstances
Implemented Architecture
Web ServiceProvider
(WebSphereAppication server)
UDDI RegistryContaining service
Description of PhrapWeb service
Web BrowserContaining Client Stub
Of the Web service
Phrap Service
Phrap Service
WSDL Document
Soap RequestResponse
SocketCommunication
Strauss server
UDDIRequest WSDL
Document
Problem Encountered Software Unavailability
Websphere Server – Unix versionPhrap – Windows Version
Implementation problemsCommunication between Windows and Unix
using SocketsResource constraints on strauss Inability to do socket communication between
ece/eecis machines and localhost
Phrap Execution Time
No. of input ESTs
No. of output ESTs
(contigs + singlets)
Execution time (min)
2,000 1,441 1.5
5,000 3,277 3.25
10,000 5,076 15
20,000 9,405 ~50
50,000 … 150
ServiceProvider
PhrapService
PhrapService
PhrapService
PhrapService
***
ServiceProvider
23 instances Phraping
20,000 ESTs each
ServiceProvider
ServiceProvider
23 chunks of20,000 ESTs
23 chunks of~12,000 ESTs
23 instances Phraping~12,000
ESTs each
PhrapService
PhrapService
PhrapService
PhrapService
***
23 chunks of~5,000 ESTs
PhrapService
PhrapService
PhrapService
PhrapService
**
13 instances Phraping
10,000 ESTs each
…
~50 mins ~25 mins ~15 mins …
∑ = ~200mins
Conclusions
We could substantially reduce the time required to phrap a chicken EST file, by parallel execution of multiple instances of phrap Web Service.
Web Service interface provides an easy, interoperable and reusable application
User is unaware of the underlying complexity of the architecture involved