high_scalability high_scalability-2008 high_scalability-2008-400 knowledge-graph by maker-knowledge-mining
Source: html
Introduction: Software design patterns are an emerging tool for guiding and documenting system design. Patterns usually describe software abstractions used by advanced designers and programmers in their software. Patterns can provide guidance for designing highly scalable distributed systems. Let's see how! Patterns are in essence solutions to problems. Most of them are expressed in a format called Alexandrian form which draws on constructs used by Christopher Alexander. There are variants but most look like this: The pattern name The problem the pattern is trying to solve Context Solution Examples Design rationale: This tells where the pattern came from, why it works, and why experts use it Patterns rarely stand alone. Each pattern works on a context, and transforms the system in that context to produce a new system in a new context. New problems arise in the new system and context, and the next ‘‘layer’’ of patterns can be applied. A pattern language is a structured col
sentIndex sentText sentNum sentScore
1 Software design patterns are an emerging tool for guiding and documenting system design. [sent-1, score-0.778]
2 Patterns usually describe software abstractions used by advanced designers and programmers in their software. [sent-2, score-0.232]
3 Patterns can provide guidance for designing highly scalable distributed systems. [sent-3, score-0.345]
4 Patterns are in essence solutions to problems. [sent-5, score-0.078]
5 Most of them are expressed in a format called Alexandrian form which draws on constructs used by Christopher Alexander. [sent-6, score-0.28]
6 There are variants but most look like this: The pattern name The problem the pattern is trying to solve Context Solution Examples Design rationale: This tells where the pattern came from, why it works, and why experts use it Patterns rarely stand alone. [sent-7, score-1.526]
7 Each pattern works on a context, and transforms the system in that context to produce a new system in a new context. [sent-8, score-0.734]
8 New problems arise in the new system and context, and the next ‘‘layer’’ of patterns can be applied. [sent-9, score-0.6]
9 A pattern language is a structured collection of such patterns that build on each other to transform needs and constraints into an architecture. [sent-10, score-1.186]
10 The latest POSA book Pattern-Oriented Software Architecture Volume 4: A Pattern Language for Distributed Computing will guide the readers through the best practices and introduce them to key areas of building distributed software systems using patterns. [sent-11, score-0.496]
11 The book pulls together 114 patterns and shows how to use them in the context of distributed software architectures. [sent-12, score-1.1]
12 Although somewhat theoretical it is still a great resource for practicing distributed-systems architects. [sent-13, score-0.335]
13 It is as close as you're going to get to a one-stop "encyclopedia" of patterns relevant to distributed computing. [sent-14, score-0.692]
14 However it is not a true encyclopedia since "over 150" patterns are referenced but not described in POSA Volume 4. [sent-15, score-0.859]
15 The book does not go into the details of the pattern's implementations, so the reader should already be familiar with the patterns, or be prepared to spend some time researching. [sent-16, score-0.314]
16 Wikipedia has more details on Pattern languages to check out. [sent-18, score-0.072]
wordName wordTfidf (topN-words)
[('patterns', 0.523), ('pattern', 0.412), ('posa', 0.263), ('encyclopedia', 0.239), ('context', 0.178), ('practicing', 0.119), ('language', 0.113), ('rationale', 0.112), ('book', 0.111), ('distributed', 0.109), ('volume', 0.105), ('guiding', 0.103), ('christopher', 0.103), ('draws', 0.103), ('referenced', 0.097), ('software', 0.097), ('documenting', 0.093), ('designing', 0.092), ('variants', 0.091), ('expressed', 0.089), ('constructs', 0.088), ('guidance', 0.086), ('theoretical', 0.085), ('transforms', 0.085), ('pulls', 0.082), ('essence', 0.078), ('arise', 0.077), ('indeed', 0.077), ('abstractions', 0.075), ('stand', 0.072), ('details', 0.072), ('transform', 0.071), ('resource', 0.069), ('prepared', 0.067), ('constraints', 0.067), ('rarely', 0.066), ('synchronization', 0.066), ('reader', 0.064), ('readers', 0.064), ('implementations', 0.064), ('somewhat', 0.062), ('tells', 0.061), ('describe', 0.06), ('relevant', 0.06), ('produce', 0.059), ('emerging', 0.059), ('although', 0.058), ('introduce', 0.058), ('highly', 0.058), ('guide', 0.057)]
simIndex simValue blogId blogTitle
same-blog 1 1.0000002 400 high scalability-2008-10-01-The Pattern Bible for Distributed Computing
Introduction: Software design patterns are an emerging tool for guiding and documenting system design. Patterns usually describe software abstractions used by advanced designers and programmers in their software. Patterns can provide guidance for designing highly scalable distributed systems. Let's see how! Patterns are in essence solutions to problems. Most of them are expressed in a format called Alexandrian form which draws on constructs used by Christopher Alexander. There are variants but most look like this: The pattern name The problem the pattern is trying to solve Context Solution Examples Design rationale: This tells where the pattern came from, why it works, and why experts use it Patterns rarely stand alone. Each pattern works on a context, and transforms the system in that context to produce a new system in a new context. New problems arise in the new system and context, and the next ‘‘layer’’ of patterns can be applied. A pattern language is a structured col
2 0.23200706 402 high scalability-2008-10-05-Paper: Scalability Design Patterns
Introduction: I have introduced pattern languages in my earlier post on The Pattern Bible for Distributed Computing . Achieving highest possible scalability is a complex combination of many factors. This PLoP 2007 paper presents a pattern language that can be used to make a system highly scalable. The Scalability Pattern Language introduced by Kanwardeep Singh Ahluwalia includes patterns to: Introduce Scalability Optimize Algorithm Add Hardware Add Parallelism Add Intra-Process Parallelism Add Inter-Porcess Parallelism Add Hybrid Parallelism Optimize Decentralization Control Shared Resources Automate Scalability
3 0.20137915 292 high scalability-2008-03-30-Scaling Out MySQL
Introduction: This post covers two main options for scaling-out MySql and compare between them. The first is based on data-base clustering and the second is based on In Memory clustering a.k.a Data Grid. A special emphasis is given to a pattern which shows how to scale our existing data base without changing it through a combination of Data Grid and data base as a background service. This pattern is referred to as Persistency as a Service (PaaS). It also address many of the fequently asked question related to how performance, reliability and scalability is achieved with this pattern.
4 0.19655769 749 high scalability-2009-12-15-The Common Principles Behind the NOSQL Alternatives
Introduction: This post draws some of the common patterns behind the various NOSQL alternatives, and how they address the database scalability challenge. Read the full story here
5 0.19628133 906 high scalability-2010-09-22-Applying Scalability Patterns to Infrastructure Architecture
Introduction: Too often software design patterns are overlooked by network and application delivery network architects but these patterns are often equally applicable to addressing a broad range of architectural challenges in the application delivery tier of the data center. By Lori Mac Vittie, F5 Networks The “ High Scalability ” blog is fast becoming one of my favorite reads. Last week did not disappoint with a post highlighting a set of scalability design patterns that was, apparently, inspired by yet another High Scalability post on “ 6 Ways to Kill Your Servers: Learning to Scale the Hard Way. ” Credit:Michael Chow/azcentral.com This particular post caught my attention primarily because although I’ve touched on many of these patterns in the past, I’ve never thought to call them what they are: scalability patterns. That’s probably a side-effect of forgetting that building an architecture of any kind is at its core computer science and thus
6 0.17845884 568 high scalability-2009-04-14-Designing a Scalable Twitter
7 0.17013413 1138 high scalability-2011-11-07-10 Core Architecture Pattern Variations for Achieving Scalability
8 0.15762092 1047 high scalability-2011-05-25-Stuff to Watch from Surge 2010
9 0.13953914 1056 high scalability-2011-06-09-Retrospect on recent AWS outage and Resilient Cloud-Based Architecture
10 0.11007087 1157 high scalability-2011-12-14-Virtualization and Cloud Computing is Changing the Network to East-West Routing
11 0.10314035 1218 high scalability-2012-03-29-Strategy: Exploit Processor Affinity for High and Predictable Performance
12 0.09765397 897 high scalability-2010-09-08-4 General Core Scalability Patterns
13 0.091804795 877 high scalability-2010-08-12-Designing Web Applications for Scalability
14 0.08294034 898 high scalability-2010-09-09-6 Scalability Lessons
15 0.078905083 564 high scalability-2009-04-10-counting # of views, calculating most-least viewed
16 0.078025989 470 high scalability-2008-12-18-Risk Analysis on the Cloud (Using Excel and GigaSpaces)
17 0.075430691 305 high scalability-2008-04-21-Google App Engine - what about existing applications?
18 0.075113453 1567 high scalability-2013-12-20-Stuff The Internet Says On Scalability For December 20th, 2013
19 0.072722189 539 high scalability-2009-03-16-Books: Web 2.0 Architectures and Cloud Application Architectures
20 0.072638534 1141 high scalability-2011-11-11-Stuff The Internet Says On Scalability For November 11, 2011
topicId topicWeight
[(0, 0.112), (1, 0.04), (2, 0.012), (3, 0.071), (4, 0.034), (5, 0.024), (6, -0.009), (7, -0.024), (8, -0.059), (9, 0.067), (10, -0.013), (11, 0.04), (12, -0.006), (13, -0.011), (14, -0.025), (15, -0.039), (16, 0.079), (17, -0.043), (18, 0.025), (19, 0.006), (20, -0.004), (21, 0.008), (22, -0.048), (23, 0.032), (24, -0.003), (25, -0.031), (26, -0.024), (27, 0.002), (28, -0.0), (29, 0.062), (30, 0.001), (31, 0.019), (32, 0.009), (33, 0.083), (34, -0.114), (35, -0.009), (36, -0.027), (37, -0.046), (38, 0.028), (39, 0.006), (40, 0.03), (41, -0.025), (42, 0.003), (43, 0.013), (44, -0.016), (45, 0.047), (46, -0.009), (47, -0.002), (48, 0.033), (49, -0.009)]
simIndex simValue blogId blogTitle
same-blog 1 0.94093281 400 high scalability-2008-10-01-The Pattern Bible for Distributed Computing
Introduction: Software design patterns are an emerging tool for guiding and documenting system design. Patterns usually describe software abstractions used by advanced designers and programmers in their software. Patterns can provide guidance for designing highly scalable distributed systems. Let's see how! Patterns are in essence solutions to problems. Most of them are expressed in a format called Alexandrian form which draws on constructs used by Christopher Alexander. There are variants but most look like this: The pattern name The problem the pattern is trying to solve Context Solution Examples Design rationale: This tells where the pattern came from, why it works, and why experts use it Patterns rarely stand alone. Each pattern works on a context, and transforms the system in that context to produce a new system in a new context. New problems arise in the new system and context, and the next ‘‘layer’’ of patterns can be applied. A pattern language is a structured col
2 0.86322969 402 high scalability-2008-10-05-Paper: Scalability Design Patterns
Introduction: I have introduced pattern languages in my earlier post on The Pattern Bible for Distributed Computing . Achieving highest possible scalability is a complex combination of many factors. This PLoP 2007 paper presents a pattern language that can be used to make a system highly scalable. The Scalability Pattern Language introduced by Kanwardeep Singh Ahluwalia includes patterns to: Introduce Scalability Optimize Algorithm Add Hardware Add Parallelism Add Intra-Process Parallelism Add Inter-Porcess Parallelism Add Hybrid Parallelism Optimize Decentralization Control Shared Resources Automate Scalability
Introduction: Successful software design is all about trade-offs. In the typical (if there is such a thing) distributed system, recognizing the importance of trade-offs within the design of your architecture is integral to the success of your system. Despite this reality, I see time and time again, developers choosing a particular solution based on an ill-placed belief in their solution as a “silver bullet”, or a solution that conquers all, despite the inevitable occurrence of changing requirements. Regardless of the reasons behind this phenomenon, I’d like to outline a few of the methods I use to ensure that I’m making good scalable decisions without losing sight of the trade-offs that accompany them. I’d also like to compile (pun intended) the issues at hand, by formulating a simple theorem that we can use to describe this oft occurring situation.
4 0.68904734 635 high scalability-2009-06-22-Improving performance and scalability with DDD
Introduction: Distributed systems are not typically a place domain driven design is applied. Distributed processing projects often start with an overall architecture vision and the idea about a processing model which basically drives the whole thing, including object design if it exists at all. Elaborate object designs are thought of as something that just gets in the way of distribution and performance, so the idea of spending time to apply DDD principles gets rejected in favour of raw throughput and processing power. However, from my experience, some more advanced DDD concepts can significantly improve the performance, scalability and throughput of distributed systems when applied correctly. This article a summary of the presentation titled "DDD in a distributed world" from the DDD Exchange 09 in London.
5 0.67875665 1127 high scalability-2011-09-28-Pursue robust indefinite scalability with the Movable Feast Machine
Introduction: And now for something completely different, brought to you by David Ackley and Daniel Cannon in their playfully thought provoking paper: Pursue robust indefinite scalability , wherein they try to take a fresh look at neural networks, starting from scratch. What is this strange thing called indefinite scalability ? They sound like words that don't really go together: Indefinite scalability is the property that the design can support open-ended computational growth without substantial re-engineering, in as strict as sense as can be managed. By comparison, many computer, algorithm, and network designs -- even those that address scalability -- are only finitely scalable because their scalability occurs within some finite space. For example, an in-core sorting algorithm for a 32 bit machine can only scale to billions of numbers before address space is exhausted and then that algorithm must be re-engineered. Our idea is to expose indefinitely scalable computational power to program
6 0.66494745 950 high scalability-2010-11-30-NoCAP – Part III – GigaSpaces clustering explained..
7 0.65285718 568 high scalability-2009-04-14-Designing a Scalable Twitter
8 0.64283562 1047 high scalability-2011-05-25-Stuff to Watch from Surge 2010
9 0.62697583 1446 high scalability-2013-04-25-Paper: Making reliable distributed systems in the presence of software errors
10 0.62617397 906 high scalability-2010-09-22-Applying Scalability Patterns to Infrastructure Architecture
11 0.6242975 709 high scalability-2009-09-19-Space Based Programming in .NET
12 0.61654449 484 high scalability-2009-01-05-Lessons Learned at 208K: Towards Debugging Millions of Cores
13 0.61527002 921 high scalability-2010-10-18-NoCAP
14 0.61465377 1138 high scalability-2011-11-07-10 Core Architecture Pattern Variations for Achieving Scalability
15 0.60753363 604 high scalability-2009-05-20-Paper: Flux: An Adaptive Partitioning Operator for Continuous Query Systems
16 0.60512364 898 high scalability-2010-09-09-6 Scalability Lessons
17 0.59613299 844 high scalability-2010-06-18-Paper: The Declarative Imperative: Experiences and Conjectures in Distributed Logic
18 0.5917145 580 high scalability-2009-04-24-INFOSCALE 2009 in June in Hong Kong
19 0.58384293 500 high scalability-2009-01-22-Heterogeneous vs. Homogeneous System Architectures
20 0.58331549 1330 high scalability-2012-09-28-Stuff The Internet Says On Scalability For September 28, 2012
topicId topicWeight
[(1, 0.154), (2, 0.182), (10, 0.034), (47, 0.016), (49, 0.357), (61, 0.041), (79, 0.072), (94, 0.037)]
simIndex simValue blogId blogTitle
1 0.86984068 843 high scalability-2010-06-16-WTF is Elastic Data Grid? (By Example)
Introduction: Forrester released their new wave report: T he Forrester Wave™: Elastic Caching Platforms, Q2 2010 where they listed GigaSpaces, IBM, Oracle, and Terracotta as leading vendors in the field. In this post I'd like to take some time to explain what some of these terms mean, and why they’re important to you. I’ll start with a definition of Elastic Data Grid (Elastic Caching), how it is different then other caching and NoSQL alternatives, and more importantly -- I'll illustrate how it works through some real code examples. You can read the full story here .
same-blog 2 0.86319947 400 high scalability-2008-10-01-The Pattern Bible for Distributed Computing
Introduction: Software design patterns are an emerging tool for guiding and documenting system design. Patterns usually describe software abstractions used by advanced designers and programmers in their software. Patterns can provide guidance for designing highly scalable distributed systems. Let's see how! Patterns are in essence solutions to problems. Most of them are expressed in a format called Alexandrian form which draws on constructs used by Christopher Alexander. There are variants but most look like this: The pattern name The problem the pattern is trying to solve Context Solution Examples Design rationale: This tells where the pattern came from, why it works, and why experts use it Patterns rarely stand alone. Each pattern works on a context, and transforms the system in that context to produce a new system in a new context. New problems arise in the new system and context, and the next ‘‘layer’’ of patterns can be applied. A pattern language is a structured col
3 0.85975009 737 high scalability-2009-11-05-A Yes for a NoSQL Taxonomy
Introduction: NorthScale's Steven Yen in his highly entertaining NoSQL is a Horseless Carriage presentation has come up with a NoSQL taxonomy that thankfully focuses a little more on what NoSQL is, than what it isn't : key‐value‐cache memcached, repcached, coherence, infinispan, eXtreme scale, jboss cache, velocity, terracoqa key‐value‐store keyspace, flare, schema‐free, RAMCloud eventually‐consistent key‐value‐store dynamo, voldemort, Dynomite, SubRecord, Mo8onDb, Dovetaildb ordered‐key‐value‐store tokyo tyrant, lightcloud, NMDB, luxio, memcachedb, actord data‐structures server redis tuple‐store gigaspaces, coord, apache river object database ZopeDB, db4o, Shoal document store CouchDB, Mongo, Jackrabbit, XML Databases, ThruDB, CloudKit, Perservere, Riak Basho, Scalaris wide columnar store BigTable, Hbase, Cassandra, Hypertable, KAI, OpenNeptune, Qbase, KDI "Who will win?"
4 0.77483916 321 high scalability-2008-05-17-WebSphere Commerce High Availability and Performance Configurations
Introduction: Nobody came up with an example of a website powered by a Websphere product (which has a community edition) and backed up by a DB2 database. I guess you all know about usopen.org so here's the story: While the re-emergence of 35-year-old Andre Agassi and the continued dominance of wunderkind Maria Sharapova have highlighted the on-court headlines at this year's U.S. Open Tennis Championships in Flushing Meadows, N.Y., IBM is hoping its new Power5 chip-based IT support for USOpen.org can make news among those more interested in .NET than tennis nets. Big Blue has partnered with the U.S. Tennis Association and the U.S. Open -- the most prestigious tennis tournament in the U.S. -- since 1992. Together, they launched USOpen.org in 1995 so racket heads could follow the matches online. The iSeries' role this year is in powering a Web-based end-user application called "Point Tracker," a graphics tool using autonomic technology that recreates the trajectory of every shot. On-c
5 0.76199341 735 high scalability-2009-11-01-Squeeze more performance from Parallelism
Introduction: In many posts, such as: The Future of the Parallelism and its Challenges I mentioned that synchronization the access to the shared resource is the major challenge to write parallel code. The synchronization and coordination take long time from the overall execution time, which reduce the benefits of the parallelism; the synchronization and coordination also reduce the scalability. There are many forms of synchronization and coordination, such as: Create Task object in frameworks such as: Microsoft TPL, Intel TDD, and Parallel Runtime Library. Create and enqueue task objects require synchronization that it’s takes long time especially if we create it into recursive work such as: Quick Sort algorithm. Synchronization the access to shared data. But there are a few techniques to avoid these issues, such as: Shared-Nothing, Actor Model, and Hyper Object (A.K.A. Combinable Object). Simply if we reduce the shared data by re-architect our code this will gives us a huge benefits
6 0.7211116 1311 high scalability-2012-08-24-Stuff The Internet Says On Scalability For August 24, 2012
7 0.70310569 35 high scalability-2007-07-28-Product: FastStats Log Analyzer
8 0.69163299 1051 high scalability-2011-06-01-Why is your network so slow? Your switch should tell you.
10 0.66961837 319 high scalability-2008-05-14-Scaling an image upload service
11 0.66707575 399 high scalability-2008-10-01-Joyent - Cloud Computing Built on Accelerators
13 0.65636694 1359 high scalability-2012-11-15-Gone Fishin': Justin.Tv's Live Video Broadcasting Architecture
14 0.6560027 796 high scalability-2010-03-16-Justin.tv's Live Video Broadcasting Architecture
15 0.6554752 183 high scalability-2007-12-12-Report from OpenSocial Meetup at Google
16 0.64897299 823 high scalability-2010-05-05-How will memristors change everything?
17 0.63951099 1258 high scalability-2012-06-05-Thesis: Concurrent Programming for Scalable Web Architectures
18 0.63818175 568 high scalability-2009-04-14-Designing a Scalable Twitter
19 0.63732988 1646 high scalability-2014-05-12-4 Architecture Issues When Scaling Web Applications: Bottlenecks, Database, CPU, IO
20 0.61680269 1114 high scalability-2011-09-13-Must see: 5 Steps to Scaling MongoDB (Or Any DB) in 8 Minutes