There are two major performance monitoring architectures: Push, metrics are periodically sent by each monitored system to a central collector. Examples of push architectures include: sFlow, Ganglia, Graphite, collectd and StatsD.Pull, a central collector periodically requests metrics from each monitored system. Examples of pull architectures include: SNMP, JMX, WMI and libvirt. The remainder of this article will explore some of the strengths and weaknesses of push and pull architectures: The push model is particularly attractive for large scale cloud environments where services and hosts are constantly being added, removed, started and stopped. Maintaining lists of devices to poll for statistics in these environments is challenging and the discovery, scalability, security, low-latency and the simplicity of the push model make it a clear winner. Push vs Pull
C10K Websocket Test Methodology This benchmark starts a new client every 1ms, each client sends a timestamp message to the server every second and the server echos that message back to the client. wsdemo/results.md at results-v1 · ericmoritz/wsdemo
Concurrent Programming for Scalable Web Architectures
The AWS Architecture Center is designed to provide you with the necessary guidance and best practices to build highly scalable and reliable applications in the AWS Cloud. These resources will help you understand the AWS platform, its services and features, and will provide architectural guidance for design and implementation of systems that run on the AWS infrastructure. Reference Implementation: Deploy a Microsoft SharePoint 2010 Server Farm in the AWS Cloud in 6 Simple Steps Read Shaw Media Case Study "Our average uptime increased rapidly from 98.8% to 99.9% without re-architecting applications" AWS Architecture Center
Srinath's Blog :My views of the World: List of Known Scalable Architecture Templates - (Current Session: Current)
Multi-master database systems that span sites are an increasingly common requirement in business applications. Yet the way such applications work in practice is not quite what you would think from accounts of NoSQL systems like . In this article I would like to introduce a versatile design pattern for multi-master SQL applications in which individual schemas are updated in a single location only but may have many copies elsewhere both locally as well as on other sites. This pattern is known as a architecture. You can build it with off-the-shelf MySQL and master/slave replication. The System of Record Approach to Multi-Master Database Applications
Autoscaling Windows Azure applications coming this autumn | IUpdateable from Eric Nelson (UK) Technically there are lots of way to do this already (including AzureWatch which I blogged on back in June) but it was great to see this week details on what we are working on as part of the new Windows Azure Integration Pack for Enterprise Library (Also check out details of what else may appear in this pack). Grigori has shared details of the thinking and the scenarios being addressed in a upcoming Autoscaling Application Block. In brief, the block will pull implement rules that look at data to decide on appropriate actions.
Some SSL / TLS basics is available here. SSL provides authentication, confidentiality and integrity. Authentication of the server, and less commonly used the server can also request authentication of the client. Scalability patterns and an interesting story...
At eBay, one of the primary architectural forces we contend with every day is scalability. It colors and drives every architectural and design decision we make. With hundreds of millions of users worldwide, over two billion page views a day, and petabytes of data in our systems, this is not a choice - it is a necessity. In a scalable architecture, resource usage should increase linearly (or better) with load, where load may be measured in user traffic, data volume, etc. Where performance is about the resource usage associated with a single unit of work, scalability is about how resource usage changes as units of work grow in number or size. Scalability Best Practices: Lessons from eBay
Scalability In electronics (including hardware, communication and software), scalability is the ability of a system, network, or process to handle a growing amount of work in a capable manner or its ability to be enlarged to accommodate that growth. For example, it can refer to the capability of a system to increase total throughput under an increased load when resources (typically hardware) are added. An analogous meaning is implied when the word is used in an economic context, where scalability of a company implies that the underlying business model offers the potential for economic growth within the company. Scalability, as a property of systems, is generally difficult to define and in any particular case it is necessary to define the specific requirements for scalability on those dimensions that are deemed important. It is a highly significant issue in electronics systems, databases, routers, and networking.