Overview of Internet Architecture Evolution Process of Internet Architecture

Internet architecture overview

1. Internet architecture characteristics

  1. Many users
  2. High traffic and high concurrency
  3. Massive Data
  4. Vulnerable
  5. Cumbersome function
  6. Get faster

2. Indexes to measure website performance

  1. Response time: the time it takes from sending a request to receiving the response data
  2. Concurrency: the number of requests that the system can handle at the same time
  3. Concurrent connections: the total number of TCP connections to the server per second
  4. Number of requests: the number of requests per second
  5. Number of concurrent users: the number of users per unit time
  6. Throughput: the number of requests that the system can handle per unit time

3. Internet architecture goals

  1. High performance: provide fast access experience
  2. High availability: website services can always be accessed normally
  3. Scalable: Increase processing power by increasing the number of hardware
  4. High scalability: low coupling between systems, easy to add and remove functional modules
  5. Security: Provide secure website access and data encryption
  6. Agility: on demand, quick response

Four, cluster and distributed

  1. Cluster: multiple machines do the same thing together, that is, the business modules of multiple servers are the same

  2. Distributed: multiple machines do different things together, that is, a large business system is split into multiple small business modules and deployed on different servers

V. Evolution of Internet Architecture

Insert picture description here

1. Monolithic Architecture

Multiple business modules are deployed on one server; single function and difficult to expand

2. Vertical Architecture

Divide multiple modules in a single architecture into multiple independent projects to form multiple single architectures; due to independence, the same modules required in each single architecture need to be implemented once in each single architecture. Cause too many repetitive functions

3. Distributed architecture

On the basis of the vertical architecture, the common business modules are extracted as independent services for other callers to share; the bottom layer is implemented through RPC (Remote Procedure Call)

Existing problem: Once the service provider changes, all users (consumers) need to be changed accordingly. For example, if the ip address of the provider server changes, the ip address called by the consumer must also be changed accordingly.

4. SOA architecture

Use ESB (Enterprise Service Bus) as the service intermediary between the consumer and the provider; the consumer no longer interacts directly with the provider, and forwards the request through the bus. The consumer does not need to know the change of the provider, but only needs to send to the bus to communicate with the consumer For interactive requests, the consumer is found by the bus

5. Microservice architecture

Based on the SOA architecture, but pay more attention to the componentization of the business, split the original business into multiple small modules that can be independently developed and run, and these small modules interact and integrate

Dubbo is a product of the SOA era, and SpringCloud is a product of the microservice era

Guess you like

Origin blog.csdn.net/weixin_49343190/article/details/112982233