Академический Документы
Профессиональный Документы
Культура Документы
Kuang-Yu Peng
Shao-Chen Lui
Ming-Tsung Chen
Chunghwa Telecom,Taipei, R.O.C.
{ rolandpeng, boboki, kanebo}@cht.com.tw
3.1. Definition
216
platform, then recording the whole process and
operation information. The system managing 4.1. Service models overview
subsystem includes reporting module and alerts
notification module. It is in charge of providing The EMS is based on the JMS (Java Message
performance reports and exception alarming to the Service). The JMS is a messaging standard that allows
system administrator and request users. Figure 2 application components based on J2EE (Java 2
demonstrates SOBUS system architecture. Platform, Enterprise Edition) to create, send, receive,
and read messages [5]. It enables distributed
communication that is loosely coupled, reliable, and
asynchronous. The term 'communication' can be
understood as an exchange of messages between
software components. Message-oriented technologies
attempt to relax tightly coupled communication such as
TCP network sockets, CORBA or RMI. It allows
software components to communicate indirectly with
each other. One of benefits is message senders no need
to know any precise knowledge of their receivers since
communication is performed using the messaging
service model.
The JMS supports two types of communication
models, queue and topic. In the queue model, a
producer sends messages to a particular queue and a
Figure2 SOBUS system architecture consumer receives messages from the queue. The
producer knows the message destination and sends the
SOA platform includes ESB and EMS (Enterprise message directly to the consumer's queue. It is
Message Service). It takes charge of providing web characterized by the following : 1) Only one
services and message services. For web services, ESB consumer will get the message. 2) The producer needs
acts as the service bridge between request users and not to be active when the consumer consumes the
real backend services and provides proxy services as message, nor does the consumer need to be active at
the interface for users call. Each backend service maps the time the message is sent. 3) Every message
to at least one proxy service. Users may invoke successfully processed is acknowledged by the
through proxy services without discovering the exit of consumer.
backend services. So all web services operations can be The topic model supports publishers publishing
controlled and monitored through ESB. For message messages to a specific message destination and
services, EMS is a message oriented middleware subscribers subscribing messages from that. In this
providing two types of message services, queue and model, neither the publisher nor the subscriber knows
topic. There is a set of specified management rules to about each other. The following are characteristics of
authenticate and authorize the message services which this model:1) Consumers can get the message and
will be mentioned later. there is a timing dependency between publishers and
Based on two mentioned subsystems and a stable subscribers. 2) The publisher has to create a
SOA platform, the prototype of SOA Governance subscription for subscribers to subscribe. 3) The
system could be constructed. subscriber has to remain active continuously to receive
messages unless it has established a durable
subscription. In that case, messages published while
4. System prototype the subscriber is not connected will be redistributed
whenever it reconnects. Figure 3 shows the JMS
Service registration is a key element of SOA. SOA programming model.
with the registration allows OSS/BSS (Operations and
Business Support Systems) to use the services
provided by others in the organization. It is also the
first step in monitoring service. In order to monitor all
services, including web services and message services
in our SOA platform, it is necessary that all services
must be registered in SOBUS first.
217
provider according to particular naming rules. On the
purpose for the user easier to understand the usage of
message service, the names of the destinations must be
simple, clear and consistent. Fill out a detailed
description of services, purposes, the monitoring
conditions and its threshold, and the way of warning
type. Service providers have to submit applications of
registration and monitoring to SOBUS. Once the
application is approved, the other users can find the
services they would like to use. If a user wants to use a
Figure 3 JMS programming model service, an application must be submitted. Similarly,
the service users can define their monitoring conditions.
In order to use message services, we must have a
MOM (Message Oriented Middleware) that can
Web service is a kind of application program based manage the sessions and resources. Management of
on XML and supports the communication between MOM is also one of the critical points in message
different operating systems over a network with services. The MOM management includes
different programming languages. For example, Java authorization control, destination permission control,
can talk to .NET, Windows applications can talk with resources control, messages reliable delivery and
Unix-like applications. The XML, WSDL, SOAP and message filtering, etc., to maintain the normal
UDDI open standards are used to describe a operation of MOM.
standardized way of integrating web based applications In web services, the service registration includes
over the internet protocol backbone. XML is used to service packing and backend application configurations.
package the data, SOAP is used to transfer the data, The main purpose of service packing is creating a
describing the services available is used WSDL and process with web services provided by services
listing what services are available is used UDDI. Web provider which follows SOBUS monitoring criteria
services allow organizations to communicate data and adding monitoring components in process. When
without intimate knowledge of each other's IT systems users using the service, all related details between
behind the firewall when communicating with each components will be logged, such as input parameters,
other or with clients. Figure 4 describes web services whole process execution time, call backend application
basic model. [4] response time, etc. With the monitoring data, it helps
SOBUS to do some important performance analysis
and then improves designed process. With backend
application configurations, only URL of WSDL and
connection type of service from service provider are
necessary.
Further more of web services monitoring, two jobs
including ping test and WSDL content length
comparing are invoked on schedule to monitor web
services. The ping test ensures the healthy of network
connection. It is a basic monitoring function since all
services are in heterogeneous and distributed
environment. When backend application is registered,
the URL is used to give a WSDL accessing test, parse
content and store its length when the monitored job
Figure 4 Web services basic model running. According to the result of comparison, it will
be the foundation of warning notification.
4.2. Service monitoring Except these two jobs, the real client invocation is
simulated to perform a test. This simulation program is
Service registration is stricter in the monitoring generated automatically through the registered WSDL
message services. In addition to services required to stored in the repository. Then follows the test plan
submit applications for registration, the users who which is corresponding to each web service to get the
would like to use this service also make an application results and check the accuracy.
for using the service. Service was named by service
218
4.3. Service notification can be calculated using particular statistics methods.
Even if the failure of service calling occurred, SOBUS
All services can be monitored after services also keeps the service failure rate for the service
registrations are completed. If any exception occurs, provider as operation reference. In message services,
the alarm notification is automatically invoked. In KPI includes:1) The amount of queue/topic usage. 2)
message services monitoring, the most important is The real-time pending messages counts of
whether MOM works well or not. Users can use queue/topic/durable.
SOBUS to monitor how many clients are connecting to Over 100 services, including web services and
MOM, lists of all destinations and concurrent message services on the SOA platform, are stably
connections for each destination, and messages served for more than 60 OSS/BSS at present. Through
statistics, etc. Messages statistics in each destination checking services performance analysis, services
include how many messages produced, how many providers and the platform administrator can evaluate
messages consumed, how many pending messages in whether the service with rarely usage to be disabled or
each destination, etc. In message services warning not and improve the efficiency of poor services. Users
notification, SOBUS can monitor them and detect can easily retrieve the relative statistics information
warning according to monitoring conditions and its from graphical charts as shown in figure 5.
threshold set by users in the registration. For the
monitoring condition of threshold values, it’s also a
kind of SLA (Service Level Agreement) defined to
assure the quality of message services. There are many
monitoring conditions in SOBUS such as MOM work
abnormally, too many concurrent connections in MOM
or in each destination, too many pending messages in
each destination, detecting and deleting unusual
customer connections automatically, destination not
used in certain period and client library version
detecting, etc. If any warning condition mentioned
above occurs, SOBUS will notify customers or service
providers by E-mail or SMS (Short Message Service)
immediately so that the exception can be solved as
Figure 5 KPI of service performance
soon as possible..
In web services warning notification, we have
Only a few operating information can be retrieved
mentioned about two jobs of testing in the previous
on the SOA platform in the beginning before
section. If the testing result is unexpected, SOBUS will
implementing SOA Governance. After executing SOA
send warning notification by using E-mail or SMS.
Governance for a period of time, we have some
achievements in the improvement of services usage.
5. Services performance and data analysis According to the investigation of statistics on SOA
platform, as Figure 6 demonstrated, the average
Quality assurance is an important issue over SOA amounts of message sessions are up to 90 millions, and
Governance. SOBUS provided some KPI (Key the report shows that the top usage level of web
Performance Indicator) to indicate services services is up to 2 million counts during a month. That
performance. As mentioned above, there are two types means the usage of services within enterprise has the
of services on the platform, web services and message increasing trend after system integration via SOA.
services. Therefore, SOBUS provides two types of data
analysis separately to evaluate services performance.
KPI in web services includes:1) The amount of
service usage. 2) Latest/mean/longest services access
time. Users invoke the proxy services at first and then
the relative backend services are called by specified
workflow. So the key information, such as begin time
of service invocation and end time of service return,
etc., are stored in database after each call of web
services. The amount of service usage and the service
execution time by proxy service and backend services
219
[3]SOA Maturity Model
http://www.sonicsoftware.com/solutions/service_oriented_ar
chitecture/soa_maturity_model/index.ssp
7. References.
[1]WIKIPEDIA- SOA Governance
http://en.wikipedia.org/wiki/SOA_Governance
220