-
Developer Book Syndrome
A colleague of mine once stated that creativity is rare in technical people I had my doubts at the time as I’m fairly creative and often build unorthodox solutions tailor made to the problem but the longer I’m in the industry the more I agree.
The biggest symptom of this is something I called book syndrome. This is where famous author xyz ( eg Lowly , Fowler etc etc ) writes a strategy in a book and people use it in completely in inappropriate circumstances. When challenged on the solution they use the authority of...
-
SOA 1 class per service Juval Lowy framework
I posted this a year ago....
I'm really against this make each class a separate service concept.
It reminds me of the Microkernel and especially workplace OS but worse.
The idea of microkernels was each service ( like memory) was an easily managed entity with carefully defined inputs and outputs which could be consumed.)
Workplace OS took this to limit and performance was so poor that no amount of optimization would help. So they had no choice but to scrap the project ( were talking $2B 10 years ago)
the bad thing is once such a design is made and implemented just like workplace OS...
-
Can EDA SOA eventing systems be fast
A lot of traditional eventing systems use C++ and are dubious about whether the Lego block style SOA can provide sufficient performance.
Again it boils down to design
WCF C# can process over 22000 small messeges per second on an average 2 year old quad server. http://msdn.microsoft.com/en-us/library/bb310550.aspx#wcfperform_topic4.
This is more than sufficient for most applications especially as with eventing systems you can add servers relatively simply , the algorithms which manage the propogation of subscriptions and the path are far more important . ( Distributed Event-Based Systems (Muhl , Fiege and Pietzuch) is a good book which covers the theory here...
-
Why should you use an Event Driven Architecture (EDA)?
There is a lot of documentation on EDA and people working with SOA and call backs will naturally gravitate to EDA , but i have often wanted a simple reason why. Here i will attempt this and focus on service based EDA's.
1. It Naturally mirrors organisations.
High level EDA events are business events. With EDA anybody may receive these events and act accordingly. This means extending events to new applications is a trivial excercise.
2. Low integration costs
Integration expenses are massive, EDA makes it really easy for systems to communicate even more so than SOA's which require writing a...
-
EDA vs Cloud storage
Cloud storage promises a lot of the things that EDA does namely almost unlimited scaling however EDA implemented in the Cloud has significant advantages.
Firstly while Cloud storage Data may scale extremely well , it does so by using masses amounts of caching or disk spindles. In itself this is not an issue but if you have say 1,000,000 users querying/polling a 10 Gig Table While the performance is likely to be good the CPU usage will be massive and this is where cloud computing bites you - in the pocket. And the situations will get worse as data increases.
However EDA...
-
SOA and Cloud computing
Great article from Zapthink. . Especially
"
the ESB has been far too central in organization’s discussions about SOA. The logic goes that all you need to do is develop a bunch of Web Services, plop them on an ESB and voila, you have a SOA. Isn’t it amazing that you can get architecture without actually doing architecture? As ridiculous as this might sound, for many organizations, this approach represents fully their SOA strategy. But, the movement to cloud computing throws the ESB “strategy” out the window.
In the cloud computing world, you have no visibility into the infrastructure, nor do...
-
WS-Eventing flaw
Just doing some work on eventing and having a look at a number of implementations there is a pretty annoying feature / flaw .
By default the only filter supported is Xpath and the specification specifically states that
This specification does not constrain notifications because any message MAY be a notification. from http://www.w3.org/Submission/WS-Eventing/.
I have no issues for this - sometimes you want any message , however this is a very expensive way to do this especially when you have a large amount of events with different topics all coming through a single notification service ( load balanced) .
All the implementations...
-
Why use Queues ( MSMQ) in services ?
Queues love them or hate them seem to be pretty popular. I'm definetly on the hate side especially persistant queues
Lets look at some recommendations
Use private queues. Very few applications need public queues and the performance hit is substantial.
Use non-transactional queues. Again, very few applications need transactional queues.
System.Messaging is messed up in a lot of ways, but you can work around that.
Use the asynchronous methods of System.Messaging (BeginReceive and BeginPeek) where possible.
Learn to build your own formatter for System.Messaging.
I...
-
What is Azure Services ?
Are Azure services a cloud or are they an ESB ?
While Azure does not have this it has FAR more than most ESB in terms of connecting clients to services. Sure it has router support
Azure >> ESB (Internet hosted , with integrated internet security , scalable)
Azure >> Cloud computing ( not just Client - Service routing and hosting but also it has sender-receiver relay , multicast , firewall pass through , and enterprise-cloud security integration)
The big thing is people see it as a cloud .. however i think the biggest thing is it can redirect clients...
-
Windows Azure services - First impressions
I have been looking at the PDC cast of Windows Azure and all I can say is wow.
At first i thought it was just another cloud but its a new generation compared to other offerings and most important its designed to win corporates. Integrating with current enterprise systems in a secure manner will be the key.
Will it succeed - certainly ( barring some outage disasters which will hurt them bad) . However it wont succeed just for Web 2.0 ( of which i am sceptical in the long term) but think of corporate laptops ,PDAs , small offices...