Job Recruitment Website - Job information - Why can an architect with five years get a basic annual salary of 500,000?

Why can an architect with five years get a basic annual salary of 500,000?

Architect, I think many people know that this title does not exist in the earliest IT field. This is the demand triggered by the development of the Internet in recent years. Because of the current data volume and high concurrency, many traditional technicians are overwhelmed, and enterprises pay more and more attention to the importance of system architecture, so different industries begin to recruit architecture technicians, and architects are born.

Architectural design conditions

The following three situations are not suitable for architectural design.

Not interested in architecture, but forced by demand;

Less than 4 years in IT industry;

Weak subjective initiative, content with the status quo;

Advantages of architectural design

Better sort out the business structure system;

Better expansion, maintenance and performance optimization;

Better adapt to the flexible promotion of enterprise business;

Better adapt to the scouring and response of big data;

Better stability, low cost and fast iteration;

Problems needing attention in architectural design

Architecture design needs to pay attention not to how to build the architecture, but to strictly analyze what technologies are needed for better and longer-term development according to business requirements;

In addition, although the built architecture can run, the performance needs to keep up, otherwise the architecture design will be counterproductive and increase unnecessary workload. Here is a detailed introduction to the architecture design strategy.

Platform requirements

customer demand

Online shopping, online payment or cash on delivery;

Customers can communicate with customer service after purchasing goods;

Management and tracking of goods procurement process and logistics;

After receiving goods, evaluate and score goods and logistics;

Customer demand is the highest, which also represents the core needs of enterprises. Of course, the needs of enterprises also include many other non-functional needs. Please refer to the requirements sequencing section for details.

Business architecture of the platform

According to the needs of business, it can be divided into commodity subsystem, shopping subsystem, payment subsystem, logistics subsystem, customer service subsystem and comment subsystem. Non-core requirements can be divided into customer service subsystem, comment subsystem and interface subsystem. In addition, according to the core level of each subsystem, it can be divided into core subsystem and non-core subsystem. The former includes commodity subsystem, shopping subsystem, payment subsystem and logistics subsystem. The latter includes comment subsystem, customer service subsystem and interface subsystem. It should be noted that the logistics system of a general large-scale e-commerce platform is an independent system (warehousing, warehousing, inventory management, distribution management, and goods management). The main purpose of dividing it into subsystems here is to demonstrate the core architecture. In this architecture, the logistics subsystem is usually used as a docking module for docking and managing independent subsystems.

1. Purpose of business split

In order to solve the coupling, maintainability and expansibility between each module subsystem;

It is convenient to deploy subsystems separately, so as to avoid a problem that all can't be used due to centralized deployment;

Assign a special team to take charge of specific subsystems to maximize work efficiency;

Respond to big data and high pressure to ensure the normal use of core subsystems;

2. The business architecture diagram

In the service architecture diagram above, the core and non-core services are separated, and each system should be deployed and implemented independently, which can reduce a lot of data, and each system can run independently to improve usability. If necessary, the resource overhead of non-core systems can be suspended to ensure that core services can serve users normally.

Technical architecture of the platform

On the basis of the above business architecture diagram, we need an evolution process of technical architecture, all of which are based on satisfying users' experience and support. Therefore, the technical architecture is not built overnight, but with the continuous evolution of business, the system architecture will be gradually improved and updated to cope with the impact of business data.

1, infrastructure design

I remember a long time ago, many small and medium-sized enterprises adopted simple architecture design. Basically, one server is used to meet all deployment requirements. For example, a server is used for application deployment, database storage and picture storage at the same time. Unexpectedly, when the user data reached more than 500,000, there were many performance problems in the system. Although various performance optimizations have been made to the database and programs, the results have not been significantly improved. The architecture is as follows:

Later, Xu Yuan, an IT engineer, found that reading and writing pictures seriously affected the system performance, so he stored the pictures in an independent server and introduced caching middleware, such as Memcache, into the architecture. This is desirable and the performance is improved by 1-2. The architecture design is as follows:

2. Primary architectural design

A few years ago, the common practice of e-commerce websites was to choose three servers, one for deploying applications, one for deploying databases and one for deploying NFS file systems. The large-scale and high-performance parts were separated into different server devices, and then the necessary caching middleware was equipped, which could basically meet the data volume of nearly 6.5438+million. The specific architecture diagram is as follows:

However, the current mainstream website architecture is different, and most of them use clusters to achieve load balance and high availability. The architecture can be as follows:

note:

If multiple web servers are involved, the problem of how to synchronize sessions will arise. Generally, the most common method is to use caching middleware to store and manage session information.

3. Optimized architecture design

In order to solve the architecture design scheme of large-scale e-commerce website with high concurrency and high availability, distributed, clustering, load balancing, reverse proxy, message queue and multi-level cache technology are mainly adopted here. The architecture design scheme is the architecture mode adopted by the large-scale e-commerce websites that compare processes now, such as Taobao and JD.COM. It may be slightly different, but it's all the same! The specific architecture scheme is as follows:

Overview of platform architecture

The main summary here is the optimized architecture, which is organized according to the hierarchical structure. * * * is divided into four layers, with clear division of labor, high expansion, low coupling, load balancing, clustering, distribution and caching. The architecture is as follows:

Ok, here is the architecture design of e-commerce platform. This paper mainly introduces the concept of architectural design and the core technology of application for students' reference in architectural design! You can follow me if you want to know more.