当前位置:网站首页>Talk about scalability
Talk about scalability
2022-07-04 10:16:00 【JoesonChan】
Translated from :https://www.allthingsdistributed.com/2006/03/a_word_on_scalability.html ( Warner · Borges CTO - Amazon.com)
Scalability is often used as a magic spell , To show that something is improperly designed or damaged . In discussion , You often hear “ But on a small scale ” As a magic word to end the argument . This usually indicates that developers are experiencing a situation where the system architecture limits their ability to grow Services . If you use scalability in a positive sense , It usually indicates the required attributes , for example “ Our platform needs good scalability ”.
What do we really mean by scalability ? If we increase resources in the system to improve performance in proportion to the added resources , Then the service is called scalable . Usually , Improving performance means serving more units of work , But it can also handle larger units of work , For example, when the data set grows .
In distributed systems , There are other reasons to add resources to the system . for example , To improve the reliability of the services provided . The introduction of redundancy is an important first line of defense against failure . Adding resources to promote redundancy will not result in performance loss , It means that the always online service is scalable .
Why is scalability so difficult ? Because scalability is not an afterthought . It requires that extensibility be considered when designing applications and platforms , So that adding resources can actually improve performance , Or if redundancy is introduced , It will not adversely affect the system performance . If the request rate increases , Data sets increase or the number of nodes in the distributed system increases , Then many algorithms that perform well under low load and small data sets may lead to a surge in costs .
The second problem area is , Extending the system through horizontal expansion usually leads to the system having to be heterogeneous . With the launch of the next generation of hardware , When larger or more powerful resources become more cost-effective or when some resources are placed separately , The diversity of resources in the system also increases . Heterogeneity means that some nodes in the system will be able to process or store more data faster than others , And algorithms that rely on consistency may crash in these cases , Or underutilization of new resources .
Is it possible to achieve good scalability ? Absolutely , But the premise is that we should consider scalability when designing and designing the system . For the system we built , We must carefully check which axis we want the system to grow along , Where redundancy is needed and how to deal with heterogeneity in the system , And make sure that architects know which tools they can use under which tools . Conditions , And what are the common traps .
边栏推荐
- Nuxt reports an error: render function or template not defined in component: anonymous
- Hands on deep learning (39) -- gating cycle unit Gru
- PHP代码审计3—系统重装漏洞
- PHP code audit 3 - system reload vulnerability
- Exercise 8-10 output student grades (20 points)
- uniapp 处理过去时间对比现在时间的时间差 如刚刚、几分钟前,几小时前,几个月前
- Hands on deep learning (38) -- realize RNN from scratch
- 原生div具有编辑能力
- MATLAB小技巧(25)竞争神经网络与SOM神经网络
- Doris / Clickhouse / Hudi, a phased summary in June
猜你喜欢

Hands on deep learning (37) -- cyclic neural network

Servlet基本原理与常见API方法的应用

Summary of small program performance optimization practice

Hands on deep learning (33) -- style transfer

Log cannot be recorded after log4net is deployed to the server

Machine learning -- neural network (IV): BP neural network

Debug:==42==ERROR: AddressSanitizer: heap-buffer-overflow on address

How do microservices aggregate API documents? This wave of show~

Safety reinforcement learning based on linear function approximation safe RL with linear function approximation translation 1

【Day2】 convolutional-neural-networks
随机推荐
Baidu R & D suffered Waterloo on three sides: I was stunned by the interviewer's set of combination punches on the spot
How to teach yourself to learn programming
Kotlin:集合使用
How can people not love the amazing design of XXL job
Safety reinforcement learning based on linear function approximation safe RL with linear function approximation translation 1
5g/4g wireless networking scheme for brand chain stores
原生div具有编辑能力
Realsense d435 d435i d415 depth camera obtains RGB map, left and right infrared camera map, depth map and IMU data under ROS
What is devsecops? Definitions, processes, frameworks and best practices for 2022
Golang Modules
Exercise 9-3 plane vector addition (15 points)
Reprint: summation formula of proportional series and its derivation process
Doris / Clickhouse / Hudi, a phased summary in June
Latex arranges single column table pictures in double column format articles
C # use smtpclient The sendasync method fails to send mail, and always returns canceled
Exercise 7-4 find out the elements that are not common to two arrays (20 points)
[FAQ] summary of common causes and solutions of Huawei account service error 907135701
Container cloud notes
Tables in the thesis of latex learning
MATLAB小技巧(25)竞争神经网络与SOM神经网络