You may have invested significant time and effort creating services. Have you reached maximum service agility, adaptability, adoption? Are applications now easier to build? Is it time for a SOA portfolio review?
ElasticMQ is a message queue server, with Scala, Java, and an Amazon SQS-compatible interface. It also supports guaranteed messaging via replicating the messages across a cluster of servers. The new 0.5 version brings two major features so let's take a look...
Wanting to explore Scala and some new Scala/Java libraries I started writing ElasticMQ. It is a simple message queueing system, following closely Amazon SQS semantics and exposing a REST SQS-like interface
In this post, I’d like to demonstrate each rule step using the Apache Karaf OSGI container. Karaf is based on the Apache Felix core, although the Equinox core can be substituted if desired.
Today I will debunk quite a popular myth about one way only communication in JMS and I will achieve two way communication in JMS.
I have released an application demonstrating how SOA’s principles can be applied into a small project making use of EIP (Enterprise Integration Pattern), IoC (Inversion of Control), and a building tool and scripting language such as Groovy.
Why am I building a .NET API when one is already available; the C# AMQP client from RabbitHQ? There's a very good reason why...
One of the primary advantages of using the SI gateway as an interface to message sub-systems is that it's possible to automatically adopt the benefit of rich, default and customizable, gateway configuration. One such configuration attribute deserves further scrutiny and discussion primarily because it's easy to misunderstand and misconfigure around - default-reply-timeout.
OAuth 2.0 seems to be on everybody’s mind these days. I can’t remember an emerging standard picking up interest so fast.
Yesterday I got a post comment about some problems with running CXF JAX-RS on Apache Tomcat. But also 2 weeks ago Apache TomEE 1.0 has been officially released. I decided to rework the example without using Spring (which was causing the problems with JAX-RS) and deploy it to TomEE.
I just got back from CamelOne which was earlier this week and it was quite the experience; definitely one of the best technical conferences I’ve been to in a while. I did not experience any dull moments while there starting with my arrival on Monday evening.
CamelOne was yet again a really cool and fun conference. It was a 2 day packed with great talks with a balanced mix of technical talks, cloud stuff, and showcases of integration in the real world.
I had a blast of a week at CamelOne and JEEConf. Both organized perfectly and awesome crowd all around. Here are some reflections and slides from the two conferences.
I’d like to review how OSGI bundles get resolved and use Apache Karaf to demonstrate. For part one, I will discuss how bundles are resolved by an OSGI framework.
OAuth was created to solve the problem of sharing two-legged credentials in three-legged situations. This article will take a deep dive into the background of OAuth and 2-legged OAuth.
Until recently, to publish a message using EasyNetQ you would create an instance of IBus and then call the publish method on it, but let me introduce you to my new friend, IPublishChannel.
Within Spring Integration, one form of EIP scatter-gather is provided by the splitter and aggregator constructs. This pattern can be used successfully with fairly simple configuration.
This week, I was at CamelOne 2012 in Boston, organized by FuseSource. Sessions covered several open source projects such as Apache Camel, Apache ServiceMix, Apache ActiveMQ, and Apache CXF. Attendees learned directly from their peers and other industry experts how open source can deliver measurable technical and business benefits to their organizations.
See an example of an enterprise service bus evaluation framework and learn how to construct your own based on the needs of your use case.
While Camel supports an ever growing number of components, you might have a need to create a custom component. This could be to either promote reuse across projects, customize an existing component or provide a simplified interface to an existing system. Whatever the reason, here is an overview of the options that are available within the Camel framework...
Looks like after around a month of public beta, Fuse ESB Enterprise and Fuse MQ 7.0 have both been made generally available today according to a new announcement out of the CamelOne Conference.
I’ll be attending CamelOne this year, and I’m pretty excited. I didn’t make it to the event last year, but judging by the speaker line up and the presentations given last year, this conference is definitely a must for developers involved in enterprise integration. Check out the presentations from last year. As you can see, the content covered is applicable even if you’re not using the Apache projects. But of course if you are, all the better.
This article demonstrates how to create/test a basic REST service in CXF vs. Camel-CXF. Given the range of configuration and deployment options, I'm focusing on building a basic OSGi bundle that can be deployed in Fuse 4.2 (ServiceMix)...basic knowledge of Maven, ServiceMix and Camel are assumed.
After pondering the results of our message queue shootout, we decided to run with Rabbit MQ. Rabbit ticks all of the boxes, it’s supported (by Spring Source and then VMware ultimately), scales and has the features and performance we need. The RabbitMQ.Client provided by Spring Source is a thin wrapper that quite faithfully exposes the AMQP protocol, so it expects messages as byte arrays.
In a pipes and filters architecture, pipes are connectors or channels. Although at first sight trivial, channels are fairly rich semantically - they allow typing, synchronous and asynchronous input, direct and multicast notifications, send and wait (rendezvous) as well as queued input and wrapping by adapters.