Logo

Welcome to Service Oriented Architecture – SOA

Login or Signup to meet new friends, find out what's going on, and connect with others on the site.


Registration is closed

Sorry, you are not allowed to register by yourself on this site!

You must either be invited by one of our team member or request an invitation by email..

Note: If you are the admin and want to display the register form here, log in to your dashboard, and go to Settings > General and click "Anyone can register".

Forgot Your Password?

A new password will be e-mailed to you.

Member Login

You are browsing the archive for 2009 October.

by admin

Our business records phone calls for customer service. Does the web site privacy policy apply to calls?

12:32 pm in SOA Answers by admin

Like a lot of businesses, we record customer phone calls to ensure quality. We use a third party to handle the monitoring and there is a debate internally as to weather we need to append our Internet privacy policy to reflect this, or not. Some say yes, others say phone calls are technically covered by a website policy. Any advice or suggested references I might be able to check would be appreciated.

by admin

Tuning BPEL and Weblogic 9.2

12:03 pm in SOA Infrastructure by admin

This article describes how to optimize Oracle BPEL process manager (10.1.3.4) running on Oracle WebLogic Server (9.2).

WebLogic Server

JDK Version

Use the latest SUN Java Virtual Machine. This can be downloaded from the SUN web site, currently JDK5 build 21 is available:

http://java.sun.com/javase/downloads/index_jdk5.jsp

Unpack this JVM into $WLS_HOME/wls and point the admin and managed servers to this new JDK;

$WLS_HOME/user_projects/domains/SOADomain/bin/setDomainEnv.sh

Oracle certification on JVM can be found here:

http://www.oracle.com/technology/software/products/ias/files/oracle_soa_certification_r3_10.1.3_matrix.xls

Memory settings
Configure the heap and memory size correctly. Do not increase the Java Heap size to large. This could lead into swapping or too much overhead in JVM. In general I suggest to set the -Xms and -Xmx equal and make these 1. Leave at least 30% memory for de rest; O/S, Apache…

Garbage collection is happening when the BPEL PM is overloaded with tasks. Full garbage collection will take place. A parameter that influences this behavior a bit, is to reduce the Java stack size. By default the stack size is 512KB. This is for each thread. If you have short running processes, they do not occupy a large stack. You can reduce the stack size. Use the value -Xss128k or even -Xss96k.

The permanent generation holds data needed by JVM to describe objects that do not have an
equivalence at the Java language level. Eg: objects describing classes and methods. Consider setting –XX:MaxPermSize equal to –XX:PermSize to minimize major collections.

If the servers contains multiple CPUs (cores) whe can use aggressive heap JVM flag. This option inspects the machine resources and attempts to set various parameters to be optimal for long-running, memory allocation-intensive jobs.

Summary; set the memory settings to:

-Xms1024m -Xmx1024m -XX: -Xss128k -XX:MaxPermSize=512m -XX:PermSize=512m -XX:+AggresiveHeap

Note; performance tests should be carried to find the optimal values. This is a best practice recommendation.

JTA timeouts
Be default the global transaction time-out period of WLS is set to 90 seconds. In a BPEL PM environment this is to low. Asynchronous processing can run longer before there state is dehydrated. Increase the global JTA time-out to 3600 seconds.

WLS Console -> SOADomain -> Configuration -> JTA

BPEL Process Manager

Dehydration store
In high throughput environments, locks can occur in the database that will hold up the BPEL PM from running. This can be improved by increasing the number actions in data block of the database:

  • alter table CUBE_INSTANCE initrans 16;
  • alter table CUBE_SCOPE initrans 16;

Threads
Per domain the threads can be set that are used for synchronous processing (InvokeThreads) and a-synchronous processing (EngineThreads). By default they are

  • dspInvokeThreads 20
  • dspEngineThreads 30

I would recommend setting these values to the default on all domains.

Note; performance tests should be carried to find the optimal values. This is a best practice recommendation.

Datasources
The connection pool size must be greater than or equal to the sum of the dspMaxThreads property value in Oracle BPEL Control. If you have configured multiple domains, add all dspMaxThreads property values and compare that value with the data source’s max-connections value. The default max-connections on WLS is 15.

Maximum DB Connections >= For-Each-Domain(dspInvokeThreads + dspEngineThreads)

Increase the maximum value of the data sources:

  • jdbc/BPELServerDataSourceWorkflow
  • jdbc/BPELServerDataSource

Note: Check also the time-out parameters; Statement Timeout; Maximum Waiting for Connection; Inactive Connection Timeout

Time-out
By default a synchronous process can run for maximum 45 seconds. After this period BPEL PM will mark this instance as failed. Increase this parameter to a higher value. During load test we have seen that this value can be to lows.
Change this time out in the BPEL Admin console.

syncMaxWaitTime 120

BPEL Processes
Any process in the BPEL is dehydrated to the database. There are processes, such as monitoring; auditing or processes that execute simple tasks that are not needed to be dehydrated. This can be achieved by disable dehydration and only dehydrate in case of a failure.
Put in those BPEL process, in their BPEL.XML file the following options:

  <configurations>      <property name="inMemoryOptimization">true</property>      <property name="completionPersistPolicy">faulted</property>                <property name="completionPersistLevel">All</property>  </configurations>


Adapters
Make sure that all adapters, database and JMS configuration are using JNDI entries that point to data sources or JMS factories/modules. It is not allowed that they have local connection definitions.

Logging
Reduce the log level in the BPEL console. Most of the logging is set to ‘ALL’ in this case the default domain, while the Poland domain has the default configuration.

Reducing the logging results in smaller readable log files. If you put everything on ALL, as it is now, you get too much information and some information is only needed for Oracle Support. It is recommended to:

Put everything to INFO

Then set:
default.collaxa.cube.activation DEBUG
default.collaxa.cube.engine.delivery DEBUG
default.collaxa.cube.engine.deployment DEBUG
default.collaxa.cube.services DEBUG
default.collaxa.cube.ws DEBUG
default.collaxa.cube.xml DEBUG

Changes can be applied without restarting the server.

Note: In production environment set the log level to Info and set the audit level to production.

References:

http://download.oracle.com/docs/cd/B31017_01/core.1013/b28942/tuning_bpel.htm
http://orasoa.blogspot.com/2007/01/tuning-bpel-in-nutshell.html
http://download.oracle.com/technology/tech/soa/soa_best_practices_1013x_drop3.pdf
http://puchaanirudh.blogspot.com/2009/01/jvm-tuning-for-soa-suite-applications.html
http://blogs.sun.com/jonthecollector/entry/presenting_the_permanent_generation
http://forums.oracle.com/forums/thread.jspa?messageID=3344909&#3344909
http://forums.oracle.com/forums/thread.jspa?threadID=962571
http://java.sun.com/docs/hotspot/gc5.0/gc_tuning_5.html

by admin

Best Practice: You Can’t Buy Governance

11:40 am in SOA Governance by admin

A solid look into how to get SOA Governance right, including:
1) Governance is a human-oriented program
2) Governance infrastructure supports the program
3) Governance must be part of the normal process
4) Governance must address the entire service lifecycle, and
5) Governance should be helpful and automatic.

Get ready for 44 slides of Governance goodness.

Source: You Can’t Buy Governance

Author: Anne Thomas Manes, Burton Group

SOA Governance Resource Guide Section: SOA Governance Best Practices

by admin

SOA Meets Telecommunications: The Telecom Italia E-SOA Framework

10:45 am in SOA Governance by admin

A detailed look at Telecom Italia’s adoption of SOA, including the role played by SOA Governance. Full of diagrams and rich content, this Resource also highlights the importance of design-time and runtime SOA Governance. From the Resource: “Flexible Governance (authoritative vs. authoritarian): SOA is a strategic, multi-year initiative, interfering with the in-place software projects driven by time-to-market and tactical nature.”

Link to Resource: SOA Meets Telecommunications: The Telecom Italia E-SOA Framework

Source: Telecom Italia

SOA Governance Resource Guide Section: SOA Governance User Implementations and Success Stories

by admin

Is Enterprise Architecture a Profession?

7:59 am in SOA Implementation, SOA Solutions by admin

The Center for Advancement of Enterprise Architecture Profession (CAEAP) is in the process of developing an EA Professional Practice Guide that, among other things, will define what it mean to be an Enterprise Architect. Is Enterprise Architecture a profession, or does it have any reasonable chance of becoming a profession in the foreseeable future?

While I don’t fully agree with the Wikipedia definition of Profession, I think it identifies a lot of characteristics commonly associated with professional status, and EA lacks many of these characteristics.

Here are three reasons why I don’t think EA is (yet) a profession.

    1. Organizations claiming to represent enterprise architects have relatively few members.
    2. There are no meaningful sanctions against maverick or incompetent practitioners.
    3. Although some universities are starting to offer degrees in Enterprise Architecture, for the foreseeable future this qualification will only be held by a tiny fraction of practitioners, mostly at the inexperienced end.

There are some worthy goals on the CAEAP homepage, which I think accord with my view of what counts as a profession, but these are currently merely future aspirations. I acknowledge that CAEAP seems to be putting a fair amount of effort into this, but this doesn’t justify some of its more extreme supporters trying to confuse AS-IS with TO-BE. I shall be prepared to regard EA as a profession and the CAEAP as a legitimate representative body if and when these goals are ever achieved. For the time being, I think it is more accurate to regard EA as an aspiring profession than an established one.

However, the present interest in CAEAP is almost entirely coming from enterprise architects themselves, rather than from the people they are providing services to, and I think this may be a major obstacle in the CAEAP’s achieving its goals.


Another major issue, in my view, is that of professional accountability. In healthcare, professional and ethical responsibility is clearly focused on the patient (as the “consumer” of healthcare services). In the legal profession, a lawyer represents a specific client and there are clear conflict-of-interest rules preventing a lawyer representing multiple parties in the same case. The CAEAP Value Map recognizes the need for “professional accountability” as well as “responsibility to multiple stakeholders and seek(ing) balance among potentially conflicting demands”. But to which of these multiple stakeholders is the Enterprise Architect ultimately accountable, and who has the ultimate authority to resolve conflict?

I believe that CAEAP should be talking not just to EA practitioners but also to the consumers of EA services – whoever they might be – and I don’t see any sign that they are doing this. (However, they are happy to accept sponsorship from vendors, who clearly have a commercial interest in influencing enterprise architects. This kind of sponsorship is perfectly acceptable for a trade body, but raises questions for an organization that wishes to establish itself as a proper profession. The Royal College of Midwives doesn’t take backhanders from drug companies, does it?)

Jon Ayre challenges this point. “Consumers choose whether or not to consume. If EA doesn’t provide right services consumer will reject it.”

Of course, with some exceptions, professionals cannot force their services upon their clients. But there is still some external validation – a practice becomes a profession not because people inside the practice want it to be, but because people outside the profession have respect for it. Members of a profession may receive public or institutional funding for some of their activities, and may have a privileged status in legislation and regulation.

As far as I can see, all of CAEAP’s directors and trustees are EA insiders. So where is the external voice? Who represents the stakeholders of EA?

by admin

Is it possible to find out how many web pages there are in a web site?

7:01 am in SOA Answers by admin

For a long list of web site url’s, my client wants to know how many web pages each site has. Is there an automated way, such as a web service, to get this information without actual crawling each site? (I am a programmer and can write code to do this).

by admin

Enterprise Cloud: Why Size Matters

11:29 pm in SOA Governance by admin

One of the biggest issues in speaking of technology trends is the natural impulse to apply a “one size fits all” approach.

People talk about technology the way they talk about the weather–it’s something that affects everyone the same way. Raining? That’s too bad about the ball game. Nice for your flower garden though.

Unfortunately, when it comes to technology, it doesn’t affect everyone the same way. At the risk of losing 90% of my readers in one go, I’m going to dust off one of the great evil words in the technology industry–Enterprise. As I’ve said before, the word “Enterprise” in the phrase “Enterprise Software” has come to mean software that sucks. In fact, if you Google “Enterprise Software” (with the quotes) the number two link is “Why Enterprise Software Sucks“.

So why dust off this word? I suppose I enjoy collecting antiques.

It’s after all a perfectly good word, and can be repurposed as a pot holder or maybe a tea cozy. What I’d like to have is a word that signifies the following:

An organization that has grown in size to the point where the old tricks don’t work anymore.

Funny Pictures

* Its organization has shattered into factions
* It’s technology has separated into silos
* Its market has fragmented into niches

The big challenge is how does one maintain the advantages of size and scale but still retain agility?

I think it’s possible:
Bull headstand

So how does fragmentation affect the use of cloud?

Well in terms of complex demand, cloud principles are very exciting.

swiss army

If your market is fragmented, you will be happy to offer a platform of reusable services that can be customized by channel partners or even by end users into thousands of possible use cases. Think iPhone App Store. So for complex demand, the cloud is a good thing.

The challenge for the Enterprise and cloud is the concept of “Complex Supply”. Since both the technology in the Enterprise is already siloed, adding cloud just adds another silo. Legacy Mainframe apps, Web Application Servers, Enterprise Applications, you name it, Cloud just adds yet another technology silo to maintain, integrate, secure and govern. Since large organizations are fragmented into smaller organizations, this problem is compounded when one organization creates a dependency on cloud services without a systematic enabling architecture.

Size matters. People try to apply architectural patterns and software solutions as if they were one-size-fits all.

ass is too small

by admin

SOA, Phase 2: Toward a Loosely Coupled World

6:13 pm in SOA Implementation, SOA Solutions by admin

Back in early 2006, I published a piece
on the impact of delivering SOA-ready services via online, on-demand
venues such as online marketplaces. Here is an update on the piece,
revised to meet today’s cloud computing realities. Since I wrote the
first piece, we have seen many of the principles coming to fruition.

So here is an updated version of why SOA means a lot more than integration or IT efficiencies:

SOA and cloud computing will help bring service consumers and
publishers together; this could have enormous ramifications for the way
we build systems and manage our organizations.

I am a passionate believer in the power of technology, as an enabler
of entrepreneurship and organizational transformation. I have long
advocated flattening the organizational hierarchy, and pushing
decision-making down to the managers and employees who deal with
customers and production on a day-to-day basis.

That’s why I am a big supporter of Web services and SOA, because
these approaches open up new possibilities and opportunities for
developing an entrepreneurial culture within organizations, as well as
spurring new ideas for start-ups. More than anything, Web services and
SOA are paving the way for the composite or loosely coupled company -
which may be an entity that exists purely as an aggregation of
third-party services, provided on an on-demand basis to meet customer
demands. Most of these services will be passed through as Software as a
Service, both from within the enterprise and from outside.

Is this entrepreneurial spirit something that larger enterprises,
particularly the Global 1000, would be capable or willing to digest?
After all, larger enterprises usually have their own humongous internal
IT development shops. But, some observers point out that some of the
largest and most progressive companies may, in fact, be the most
enthusiastic embracers of the virtual, componentized way of doing
business.

Mohan Sawhney,
professor at Northwestern’s Kellogg School of Management, for one,
believes that the best-run companies are becoming “orchestrators” of
networks of services, rather than actual producers. Sawhney quipped at
a conference that some mobile phone companies provide a good example of
this orchestrator role, in that “they don’t do anything themselves,
they just collect the money.” Even Cisco comes close to this
orchestrator model, he pointed out: “85 percent of Cisco’s products are
never touched by a Cisco employee.”

To achieve the orchestration Sawhney talks about, especially in
terms of software-based services, companies may find their best option
is to turn to third-party marketplaces that can provide the necessary
software on demand. Cloud vendors offer online marketplaces in which
enterprises can tap into services that they may or may not have the
time or inclination to build. Why reinvent the wheel by having your
staff spend time building service components, when you can quickly
subscribe to a component, that’s been tested and uptime certified, and
pay for it on as-used basis?

So, I, as the software entrepreneur, could write my service, which
could be a system that tracks the number and costs of Styrofoam cups
used within corporate cafeterias. I would submit Joe’s Styrofoam Cup
Accounting Service to a marketplace, which would validate the quality
and uptime of my service, and make it accessible to enterprises and
ISVs across the globe. An ISV such as SAP may pick up on it, and add it
to their next enterprise release as an additional management feature.
The corporate accounting department that installs the next SAP release,
then, may see the value in keeping track of cup expenses (especially if
it’s a real caffeine-driven work culture). They then turn on the
feature that accesses the marketplace, and Joe’s Styrofoam Cup
Accounting Service. Do I make my millions this way? No, more likely, I
will make a few pennies per transaction. Still, these things can add up
quickly.

Cloud computing is pushing some software vendors to change their
models to component delivery, perhaps based on a micropayment business
model as I alluded to above. This makes plenty of room not only for
small start-ups, but also for development shops within traditional
enterprises that have great ideas. We’ll see the emergence of the
corporation-as-service-orchestrator phenomena.

Bob Walsh, author of a book entitled MicroISV: From Vision to Reality,
validates this thinking. In his book, he discusses how entrepreneurs
and technologists can ride the new wave can the rise of smaller
application providers that can put the components in place for a
complete solution. He recently told me that “while most MicroISVs are
focused on either the desktop or providing a stand-alone service, I
think you will see more and more MicroISVs as ‘parts.’ You are already
seeing micro-ISV’s providing add-on services in shipping,
transportation and logistics; more will follow.”

Just as businesses are evolving into orchestrator roles, so are the
systems that support them. As Sawhney so aptly put it, “five years from
now, the concept of an application will be obsolete. They will all be
services, combined, mixed, matched and reused as needed.”

by admin

Is there a web service or rss feed that supplies the IRS standard mileage rate?

4:16 pm in SOA Answers by admin

I am looking for some sort of a service which gives the rate (and updates on rate changes), and have a software I am developing to always sample that service.

by admin

Amazon brings MySQL to AWS, enhancing relational database offerings

3:57 pm in SOA Solutions by admin

Amazon Web Services (AWS) has just added support for a cloud-based MySQL database, called Amazon Relational Database Service (Amazon RDS), giving developers an alternative to its own SimpleDB inside EC2. Also, the price of Linux EC2 instances will drop 15% as of November 1.

The company says this does not signify a change in direction for AWS but an increase in options available to developers. This may appeal to developers who would like a cloud-based MySQL database that is managed externally.

“In the database crowd there is no one-size-fits-all option,” Adam Selipsky, VP of AWS told SearchSOA.com. “Some customers want to run something that’s not like MySQL but actually is MySQL.”

From Amazon’s release:

Amazon RDS provides a fully featured MySQL database, so the code, applications, and tools that developers use today with their existing MySQL databases work seamlessly with Amazon RDS. The service automatically handles common database administration tasks such as setup and provisioning, patch management, and backup – storing the backups for a user-defined retention period. Customers also have the flexibility to scale the compute and storage resources associated with their database instance through a simple API call.

Get Adobe Flash playerPlugin by wpburn.com wordpress themes