in

ASP.NET Weblogs

Tiago Pascoal's WebLog

Hello Good Evening and welcome to nothing much.

March 2004 - Posts

  • .Net Enterprise Services

    Here and Here, i has trying to understand with some help, the added value Enterprise Services (ES) in an architecture. Here shares with us some of the pain he is having with ES.

    Don't have much to comment, but that compile-register-test seems brutal to me.

     

  • SOA can a service be really autonomous II ?

    Rich Turner has posted a clarification to my initial quest to understand the Autonomy tenet of SOA.

    I read the post, but i still have some problems understanding it. No biggie, i guess i have a few years to catch it. :-)

    Let's go piece by piece,to help me understand it.

    " Taking this into consideration, and with a little further discussion, it became a little clearer that that Autonomous systems do not stand alone without interaction with other parties. An Autonomous system is self-governed and whose resources are not directly controlled by an external entity. "

    No questions here. This seems like a tipical fiefdom pattern.

    " The value of a Service which is entirely stand-alone would somewhat questionable and in the real world, of course, never happens. Our applications are (usually) comprised of complex interrelationships between component parts, but this IS the problem! "

    This was my point. :-) If we see it as a fractal, when it comes to being autonomous a service seems to fit this description, only at a larger level but seems exactly the same. Since we are at a larger level, the level of interrelationships are a lot smaller easing it our pains,but still there nonetheless. Part of my reasoning problem, is not only at the conceptual level but also at the operational one. If we depend on another service(s) if one of those services fails, we will also fail (assuming we aren't asynchrounous). How can we be autonomous if we fail when others fail? only because we are now loosely coupled the dependency is still there.

    "Most of our applications today are a rat’s nests of inextricable parts which (method call) have hard-interrelationships resulting in fragile systems that do not encourage the efficiencies of re-use that most of us seek. "

    Indeed. Life is a bitch.

    " If instead, our systems were architected and implemented against different principles, whereby our systems are deliberately designed to be independent and autonomous, we’re far more likely to implement flexible, resilient solutions than before. "

    No question here, life would be great. And SOA will certainly help us here a little, but that still doesn't help me understand how services are autonomous. Please continue. :-)

    But what about Service A that requires information inside Service B? Won’t these two Services therefore be inextricably bound? Well, not if they’ve been carefully designed according to our SO tenets! "

    Yes. Only because service A depends on B, doesn't B is less of a fiefdom, nor it affects is autonomicity but what about service A is it really autonomous? I begin to think, that is somehow related to being loosely coupled.

    " Why are these services Autonomous?

    ·         Either Service’s location can change at (almost) any time due to the fact that they’re dynamically addressable

    ·         The services communicate through dynamically negotiated communications channels that support the necessary formats and capabilities (security, reliability, etc)

    ·         Neither Service requires knowledge of each others’ internal workings in order to exchange data – they only need the published schemas & contracts

    ·         Neither party make demands on each other as to how the work is carried out

    "

    Ah. Know i think i get it. As long as the contract remains, as long i can find it's endpoint (in case it changes) as long as it is loosely coupled, then it's autonomous. I think i now get it.

    I think i now understand it at a conceptual level.....

    Rich, not to impose me or anything, can i ask you another question?

    If service B starts misbehaving (performing poorly) at a point that service A stability is compromised, is A still autonomous? (assuming i didn't code for failure and for example haven't triggered my code to timeout if A doesn't respond in a timely manner?).

    Anyway, thanks for the reply it helped me a lot. I'm not fully convinced but i think i now understand it.

     

  • SOA can a service be really autonomous?

    A few weeks ago i've subscribed to this weblog about SOA and Indigo. I happen to think that in the future SOA will be big and i might as well start preparing for it. I've subscribed a few weeks ago, but only yesterday managed to read some posts.

    I've found this one quite interesting, but this part

    Services are Autonomous: A service should not have hard-dependencies on other services. You should design your Services to be isolated, independent and interchangeable otherwise you'll end up with a closely coupled system that is fragile and overly complex. "

    raised my eyebrow. 

    While this is a nice goal, either i'm missing something, or this goal is not going to happen  very often in large systems.

    On medium/large distributed systems at one time or another a system is not completely isolated it depends on data stored on another system.

    Suppose we have service A which depends on some data stored on service B (a lot of time data is horizontally partitioned).

    If we want A to be autonomous what choice do we have?

    • Replicate service B data (and logic) into service A storage in order to stay independent? not very smart is it?
    • Let the clients orchestrate/compose the calls to service A and service B themselves in order to keep service A autonomous and independent of the data stored in service B? this seems to me going backwards.

    I'm i missing something here? or i'm i having some problem understanding one of the 4 pillars of SOA?

    While we are on the subject this post SOA Real-World challenges presents some nice targets for SOA cenarios usage.

    Any takers?

  • whidbey delays and mono

    In the last few days there has been much talk about Whidbey delays, most of the posts i've seen are very vocal against the delay, a small minority try to understand MS position.

    I won't add my 2 cents nor link to any of these opinions, for me it's just unfortunate, i don't care that much for yukon, and some whidbey features would be heaven for me. Oh well......

    I will just say something that i haven't seen written anywhere yet. After being said that Mono was a worthless effort and would never be something more than just a few guys trailing behind, while trying to chase MS API's,  wouldn't it be ironic if mono released some whidbey features (Generics,ASP.NET 2.0 features,etc,etc) before whidbey himself is released? ironic indeed.

    [Update] Here is such an opinion emited in december 2003

    It reminds me of a joke (truth? urban legend?) that i've told while i was a child. A story that General Custer once tried to teach some indians to play poker and left the teepee wearing only his underpants. The master was the pupil after all. :-)

     

  • A man who knows it's trade

    I've been reading Frans Bouma since it's inception and i tend to take him into high regard.

    But this post seems to be a personal tipping point to me. This has convinced me to really try to find some time to evaluate LLBLGen Pro (i have download the evaluation some months ago,but never found time to install it and test it). This post ilustrates some nice capability of LLBLGen extensability hooks, i'm sure the rest of the product is neatly well thought as well.

    In a previous life, i hacked LLBLGen code. I needed to generate some triggers and some customed tailed stored procedures, and hacking LLBLGen seemed to be much better than going from scratch. It has quite fast to produce the desired results, and the code was well structured but i distinctly remamber hating the variable naming being used (not that i hold grudges or anything. :-)). The hacked has never used, caused the feature that needed it was abandoned, but that is another story.....

    I will just have to find the time, i really must.

    mySQL support would be really great though. (what a moaner, haven't even installed it and i'm already complaining).

     

  • Can the world take it?

    Just returned from a ski trip to Andorra. After some relaxing week and a complete week with no computer thoughts whatsoever, i'm still catching on the blogsphere. Still 2302 posts to read, it will take me a while to catch on but i think i will manage.

    Oh boy, someone discovered through Dave Winer's share your OPML  people like me service, that i'm like him. Although i can feel flattered, indoubtely Winer's personality analysis algorithm is powerfull enough to find very similar people through feeds subscription, i'm not sure if the world can take another person like me. :-)

    On the other end, if the service is right, it seems to think i'm like 

    Scott Hanselman, not bad, not bad at all. :-)

    Using the same service i've recently found that SQL server proeminent conference speaker has a weblog. Haven't subscribed it though. I'm already overloaded with the current number of feeds i subscribe, and it doesn't seem to talk much about SQL server.

    I've found this post interesting though. Since i live in Portugal, which is Spain's neighbour we have some interest in how well Spain economically performs. What amazed me is that if we perform a search & replace on this text, replacing Spain with Portugal the text is completely on the mark. There is an undergoing debate among our thinking elite, saying the we are losing our decision centers to Spain, which is buying a lot of Portuguese strategic businesses. It's amazing, how can two countries make the same mistakes and at the same time,one strives and the other loses it's edge. oh well, maybe being bought out and start new career being a flunky  is underrated. :-)

     

     

More Posts