On the architecture of large Web sites

Source: Internet
Author: User

A large web site architecture is never a pre-defined architecture, but an evolutionary one. Very few sites start from the site, can be based on a large site with all the attributes of a constant, from the simplest lamp architecture, to the large centralized application of the IoE, and then into the current distributed application architecture, with the expansion of site users, the architecture is also evolving. From physical machine to virtual machine to the current popular Docker technology, from a single room to the same city multi-machine room to live, from the lamp to the Java EE to a variety of distributed middleware such as service framework, distributed message Queue, configuration management middleware, distributed data access layer, from simple to complex and difficult metamorphosis, It is also a Web site from a weak to strong growth process, where there is a challenge, where there will be change, this is the moment as a technical person make contributions.

single storage capacity and load capacity is bound to be limited, from PC to minicomputer to medium-sized machine, mainframe, the cost will be exponentially number of levels, and hundreds of people to develop the same project, resulting in system bloated, development, release efficiency is very low, the Internet will lose the flexibility to survive, back to the traditional software development model. By applying vertical splitting, the distributed scale of the cluster can not only increase the capacity of the system, but also allocate the storage and load to the large-scale low-cost cluster, so as to reduce the costs, the development efficiency and the development mode are changed.

through the public service extraction, will be born in a group of basic services at the bottom of the system, to avoid the same content repeatedly build wheels, improve development efficiency. As the most important middleware in the large-scale Web site architecture, the service framework simplifies the serialization and deserialization of objects involved in service invocation, communication protocols, service routing, and a later term-service governance, to comb the dependencies of services, call links, strong dependencies, and more complex issues.

Big companies are not as fast as small companies, because large companies have too much accumulation, and sometimes accumulate more will become a burden, the existing model will make new business difficult to quickly integrate. When it comes to problems and setbacks, it is time to think about improvements and system changes, no system has ever been designed to keep the code from ever changing, technology is always evolving, needs and markets are changing, so don't expect an architecture to meet all the needs, System design needs to meet the scalability for a period of time, but do not over-design, because after six months after you return to re-review, you will find that the demand has changed, this is the fast pace of the Internet.

for the architecture of the system, the evolution of architecture over time will often go through the process of clarity, blurring, re-structuring, clarity, and then blurring, and the market environment is constantly changing, so the design of the system should follow the principle of extended openness, modification and closure. This makes it easy to access new processes in a timely manner without compromising existing processes. From the macro point of view, the relationship between each system must not be the relationship between chimney and chimney, but like the city's high-rise, through the road connection, therefore, to improve the speed of housing, we must make full use of existing infrastructure, existing middleware, to reduce the cost and risk of system construction.

Several layers of architecture design, no architecture is architecture, focus on solving existing problems can also be called architecture, and good architecture should be able to constrain the developers and can liberate the developers to focus on the functionality of the design. As much as possible to make complex things simple, not to complicate the simple things, technology has never been used to dazzle, but to solve practical problems, so we do not need Huaquanxiutui, Lockheed Martin's famous aircraft designer Kelly Johnson The kiss principle, is the best interpretation. The risk-driven architecture concept tells us that avoiding failure is at the core of all engineering technologies, architecture is technology, and using architectural techniques to mitigate risks and avoid extremes is the fundamental responsibility of architects.

Public number: it haha.


On the architecture of large Web sites

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.