background preloader

Architecture

Facebook Twitter

Understanding Throughput-Oriented Architectures. By Michael Garland, David B.

Understanding Throughput-Oriented Architectures

Kirk Communications of the ACM, Vol. 53 No. 11, Pages 58-66 10.1145/1839676.1839694 Comments Much has been written about the transition of commodity microprocessors from single-core to multicore chips, a trend most apparent in CPU processor families. Commodity PCs are now typically built with CPUs containing from two to eight cores, with even higher core counts on the horizon.

These chips aim to deliver higher performance by exploiting modestly parallel workloads arising from either the need to execute multiple independent programs or individual programs that themselves consist of multiple parallel tasks, yet maintain the same level of performance as single-core chips on sequential workloads. A related architectural trend is the growing prominence of throughput-oriented microprocessor architectures. Modern GPUs are fully programmable and designed to meet the needs of a problem domain—real-time computer graphics—with tremendous inherent parallelism. Enterprise Integration Patterns with BizTalk Server 2004. Failover: Messy Realities. S3 Outage Report and Perspective. Amazon has issued a more detailed statement explaining the S3 outage from June 20, 2008. In my company, we'd call this a "Post Incident Report" or PIR. It has all the necessary sections: Observed behaviorRoot cause analysisFollowup actions: corrective and operational This is exactly what I'd expect from any mature service provider.

There are a few interesting bits from the report. In fact, I'd expect to find more cases of odd emergent behavior at large scale. Exposure. The act of design includes: Consideration of many possible technology optionsExamination and identification of constraintsThought about the pros and cons of using various patterns and stylesComparing various splits of role and responsibilityLooking at various tradeoffs of complexity versus functionFormulation of opinion on possible future directions of system growth.

Exposure

10 Must-Know Topics For Software Architects In 2009. In the last year or so, after quite a lull, the software architecture business has gotten rather exciting again. We're finally seeing major new topics emerging into the early mainstream that are potential game-changers, while at the same time a few innovations that have been hovering in the margins of the industry are starting to break out in a big way. The big changes: The hegemony of traditional 3 and 4-tier application models , heavyweight run-time platforms, and classical service-oriented architecture that has dominated for about a decade is now literally being torn asunder by a raft of new approaches for designing and architecting applications. These might sound like incautious words but major changes are in the air and architects are reaching out for new solutions as they encounter novel new challenges in the field.

Writing Great Documentation - What to write? Writing great documentation: technical style. Now that I’ve discussed what kinds of technical documentation to write, I can move on to the question of how to actually develop a writing style that produces great technical documentation.

Writing great documentation: technical style

Learn to write Unfortunately, there aren’t any shortcuts here. The best way to learn how to write great documentation is to first learn how to write (anything). There are some important differences between technical documentation and your average prose, but a solid foundation of good written communication skills is an irreplaceable prerequisite.

So how do you learn to write (anything) well? Writing English isn’t any different than writing code: the more you do it, the better you get. That’s how those of us with humanities degrees (I’ve got a degree in American Literature, also known as a “B.A. in B.S.”) become good writers: our degrees force us to write to the point that it comes easily. Documenting your software architecture - why and how? Corruption. Bug or Architecture Flaw? (Fail or No Fail) Blaine Cook, Twitter’s lead architect, has left the company. Predictably, the blogosphere is flaying him pretty good. Michael Arrington asks , “Amateur Hour Over At Twitter?” Ouch! Blaine, I feel for you. People expect and are pretty tolerant of a few bugs, but the problems at Twitter have been going on for long enough that it’s clear there were deep-seated architectural flaws that were not going away very soon.

What follows next is important. Non-functional Architectural Woes. Bryan Wheeler, Director Platform Development at msnbc.com “Udi Dahan is the real deal.

Non-functional Architectural Woes

We brought him on site to give our development staff the 5-day “Advanced Distributed System Design” training. The course profoundly changed our understanding and approach to SOA and distributed systems. Consider some of the evidence: 1. Months later, developers still make allusions to concepts learned in the course nearly every day 2. One of our developers went home and made her husband (a developer at another company) sign up for the course at a subsequent date/venue 3. If I were to do the whole thing over again, I’d start the week by playing the clip from the Matrix where Morpheus offers Neo the choice between the red and blue pills.

How do you define software architecture? Every software system has an architecture, but not every software architecture is defined.

How do you define software architecture?

While there is structure to most software systems, sometimes that structure has been explicitly thought about and sometimes it isn't. Architectural Options for Asynchronous Workflow. Duncan Mackenzie Microsoft Developer Network December 2001 Summary: This article describes the benefits of asynchronous processing and discusses three possible ways to implement this type of workflow within your own systems. (21 printed pages) Contents IntroductionBenefits of Asynchronous Processing Faster Response Time Load Balancing Fault Tolerance Intermittently Connected SystemsIssues in Asynchronous Systems Notification or Polling for Status Time-out Handling Compensating LogicImplementation Strategy Build Your Own Workflow with SQL Server Use .NET and MSMQ to Handle Workflow Let BizTalk Handle Workflow for You Comparing Your OptionsConclusion Introduction.

Architectural Options for Asynchronous Workflow