Long term support?

Oct 3, 2012 at 10:22 PM


I'm considering using Phoenix a a message bus for some of our commercial apps. There appears to be a lot of work that has gone into this product so I was wondering:

  • what your motivation for developing it was (i.e. self-teaching or as an aim to be a commercial product similar to NService Bus)
  • is there a team behind it or just you
  • do you think you will be developing this for a while 
  • Can you expand on any commercial support arrangements / licensing costs etc you have been considering?

Thank you!

Oct 3, 2012 at 11:21 PM

- Motivation behind PSB, is to create an ESB that work cross platforms and languages. I am also working toward making it both a open source and commercial product

- So far it is me mostly doing the .NET and JS code. And having one of my friend helping me do some of the Java Client API code. In general, I do have people that helps me in different area as needed such as Admin UI.

- The project is going to be developed and maintain for a very long time. I will continue to add more client API for multiple language and improve performance of the ESB in general

- So far for commercial support, It is going to be solely based on three tier package where support will be provided according to what type of support is choosing. You can get more information here: http://pservicebus.codeplex.com/wikipage?title=Commercial%20Option&referringTitle=Home . As for licensing cost, it is a yearly subscription which would cost from 3k to 10k based on the package selected and would include at least one upgrade. Yearly renewal of license would be discounted.


Thanks for the interest!

Oct 4, 2012 at 9:12 AM

Thanks for the updates.

Can you clarify this:

Parallel topic processing

I assume this means that the open source PSB is single threaded? In other words if processing a topic takes a long time it queues up other topics behind it? The commerical version will run topics on different threads in parallel?

Can you expand on any other restrictions regarding performance that will be in the open source edition but not in the commerical offering?

Oct 4, 2012 at 3:20 PM
The open source is mostly single threaded in any place that needs to process topic messages. The commercial version runs everything related to topics/topic messages in parallel on multiple threads as needed in order to avoid the load of a slow impacting the whole system. This will include the Message ReDispatcher that handles retries, Message Dispatcher that does the initialize processing of messages before it gets to the subscriber, and the Distributor that round robin message across multiple Message Dispatcher.

The other important part of using the commercial version is that it allows you to load balance the Gateway that process command sent to the ESB server such as create topic, publish topic, create and update subscriber, and e.t.c. In a case where one Gateway fails, the router will automatically route the request to a working Gateway. The router is also able to load balance commands sent to the ESB between Gateways by finding the one with the less work therefore allowing you to have multiple Gateway on multiple servers and not worry if any of them go down.

In the open source, the function described above does not work. The only thing that work is that it allows you to specific a list of router to use and it will automatically switch to the next router if the current router fails. The commercial also support this feature which is combined with the Gateway load balancing.

The next upcoming version of PSB(2.0.1) would increase performance for both the commercial and open source, but the commercial would benefit more from it than the open source due to the way it is implemented.

In the future, I am planning to only allows new clients API to commercial version only. And only have the default client API for open source which include the C#, JS, Windows Phone/Silverlight, and Java.