Cloud Computing Reference Architecture and Design Considerations
The article presents a comprehensive cloud computing reference architecture, illustrating private and hybrid cloud designs, discussing platform choices, storage solutions, scalability, elasticity, and key considerations such as availability, manageability, and feasibility for building robust, cost‑effective systems.
The article outlines a cloud computing reference architecture, showing how to build private and hybrid clouds where users can provide their own compute, storage, and network resources, a practice increasingly adopted by large organizations to strengthen data‑center strategies.
Several real‑world examples are shown, including the cloud architectures of 58.com, Baidu, and Youdao, each depicted with detailed diagrams.
Key elastic services are described: automatic scaling adjusts resources according to traffic and workload, while built‑in fault‑tolerance hides machine failures from the application, ensuring continuous operation.
A variety of technology platforms and frameworks are listed for building cloud services:
Java platform – Grails, plain Java web, Lift, Spring; Ruby platform – Rack, Rails 3, Sinatra; Python platform – Django, WSGI; plus other options such as static pages, Node.js, Erlang, PHP, and standalone programs.
Storage components are categorized as databases and storage systems. Databases include MongoDB (NoSQL), MySQL, Neo4j (graph), PostgreSQL, and Redis (in‑memory KV). Storage solutions cover Atmos (EMC), NFS‑based file systems, Vblob (Amazon S3 support), and additional services like RabbitMQ for queuing.
The architecture’s impact is examined through four aspects:
Scalability – the ability to add resources or increase density of existing resources.
Availability – tolerance of short‑term and long‑term failures.
Manageability – visibility into system health and performance.
Feasibility – building and maintaining the system within time and budget constraints.
Scalability is further broken down into resource expansion and density improvement. Measurable resources such as database connections must be monitored to avoid contention. Queue‑based load balancing smooths traffic spikes, enables batch processing, and adds decoupling, while auxiliary queues improve availability. Recording erroneous data in its original format aids debugging.
Source: http://www.cnblogs.com/wintersun/p/4183516.html
IT Architects Alliance
Discussion and exchange on system, internet, large‑scale distributed, high‑availability, and high‑performance architectures, as well as big data, machine learning, AI, and architecture adjustments with internet technologies. Includes real‑world large‑scale architecture case studies. Open to architects who have ideas and enjoy sharing.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.