One of my favorite subjects to preach about is the importance of designing push architectures in enterprise systems. The classic example of when a push architecture is needed is the dashboard. In order to keep a dashboard up to date the options are to have the client program regularly poll the server for changes or to have the server push updated information to the dashboard when necessary. The later alternative performs and scales better.
The problem is how to implement such architecture with web clients. A server can’t push data to web clients due to the stateless nature of http. The market has come up with a number of solutions to this problem. I talked about such solutions in an earlier post. The reason I am going back to this subject is due to new developments in Flex.
Flex is the form based cousin of Flash. It is arguably the most complete RIA framework in the market. Quick disclosure, I started working for Adobe a few days ago. Yet, I used Flex extensively in other projects before. There are two developments that made in my opinion Flex an attractive option for push architectures. First, last year Flex itself became Open Source. That means the Flex SDK is available for anybody to use at no cost. Second, in February this year, the Flex server product became Open Source in the form of BlazeDS. With BlazeDS you have access to powerful remoting capabilities. With BlazeDS a Flex application can access POJOs directly and most importantly it can subscribe to topics on the server.
BlazeDS is deployed as a simple war file in any JEE compliant server. The topics are defined in an XML configuration file. Then the Flex client simply subscribes to the topic by becoming a consumer with two lines of code, then every time that that the topic has a new message, it gets “pushed” to the Flex clients. In reality no message gets truly pushed to a client due to the nature of http. Flex just implement a very clever polling mechanism. You can see how to do all this in many tutorials online.
The flex topics can also be configured to listen to JMS topics/queues. This means that you can actually easily access and manipulate backend integration infrastructure like Tibco. I think that now Flex has become a must tool for any web developer.
i agree with your views from here.
Posted by: Nike Shox | April 20, 2011 at 08:30 PM
so good
Posted by: Dr Dre Solo | October 24, 2011 at 01:25 AM