怎么为自己的VPS选择合适的CPU和RAM?

news2024/10/6 6:47:03

为网站选择VPS(虚拟专用服务器)与为家庭或办公室选择台式机或笔记本电脑没有什么不同。基本上,您要做的就是查看硬件配置并比较功能和价格。

然而,虽然您可能对个人计算机所需的资源类型有一个粗略的估计,但为服务器获得正确的处理能力、内存和存储组合可能会有点棘手。

同时,这对于您网站的成功至关重要。如果服务器不够强大,您的性能将无法满足访问者的期望。如果服务器配置过高,您将为不需要的资源付费。

今天,我们将研究CPU功率和RAM如何影响虚拟服务器速度并帮助您找到适当的平衡。

VPS主机中的硬件资源

从根本上来说,为您的网络主机服务器提供支持的组件与您的计算机和智能手机内部的硬件相同。

对于网络主机至关重要的是:

  • CPU: CPU 代表中央处理器,通常被称为服务器的大脑。它的工作是进行计算、执行命令和处理数据。
  • RAM: RAM 即随机存取存储器,是一种为服务器上安装的操作系统和软件生成的数据提供临时存储的设备。RAM 中存储的数据由应用程序和服务器 CPU 使用。它的读取速度比服务器永久存储驱动器上的信息快得多。
  • 存储: SSD(或 HDD)驱动器是保存文件和数据库的存储设备。与每次重启时都会刷新的 RAM 不同,SSD 会永久存储数据

如果您使用专用服务器,所有这些都是在购买和部署服务器时指定的物理组件。使用虚拟服务器,虚拟机管理程序会获取这些硬件组件并将其资源分配给多个虚拟机。

但它究竟是如何工作的呢?

存储而言,事情相当简单,特别是当我们谈论标准 VPS 设置时。虚拟机管理程序将物理服务器的驱动器划分为多个单独的部分,并将每个部分分配给不同的虚拟机。

在 VPS 之间分配RAM 的方法类似。物理服务器的内存被分成 1GB 块,根据需要分配给各个虚拟机。并非所有内存都需要一直使用。

例如,您可能拥有一台具有 16GB RAM 的物理服务器,并在其上运行三个 VPS - 两个使用 2GB,一个占用 8GB。这意味着虚拟机使用 12GB,剩下 4GB 用于未来升级或新部署。

说到处理能力,事情就复杂一些了。现代 CPU 使用多核架构,这大大提高了生产力并提高了处理速度。

物理服务器的 CPU在同一芯片上有多个处理单元。为每个虚拟机分配一个或多个这样的单元效率不高。物理网络服务器使用企业级硬件,因此即使是单个 CPU 核心也可能对常规网站来说过于强大。这就是为什么虚拟机管理程序将单个物理核心提供的处理能力拆分为多个虚拟核心的原因。

然后将虚拟核心分配给各个 VPS 解决方案。核心越多,服务器同时执行的任务就越多。

在网络环境中 RAM 如何发挥作用?

您的计算机或服务器的 RAM 是存储数据的设备因此,问“随机存取存储器和保存数据的 SSD 之间有什么区别? ”是合乎逻辑的。答案是速度

存储技术已经取得了长足的进步,但即使是最现代的 SSD 驱动器仍然比服务器的 RAM 慢几个数量级。这部分是由于硬件原因。 

不再有读写头,SSD 也没有任何移动部件。然而,永久存储驱动器的速度仍以MB/s为单位,而 RAM 读取和写入数据的速度远超 1GB/s

存储信息的逻辑也有所不同。SSD 将数据存储在数据块中,这使得组织起来更容易,但读取速度较慢。

相比之下,随机存取存储器中的“随机”表示所需的任何字节信息都可以立即获得。结果是延迟时间更短(计算机读取第一个字节数据所需的时间)。

当你需要启动应用程序时,速度就会发挥作用。从根本上讲,软件应用程序是数据以及指示 CPU 如何处理数据的指令的集合。

通过将应用数据存储在 RAM 中,处理器可以更快地访问它。这就是为什么当您在计算机或手机上启动软件应用程序时,其数据会自动加载到内存中,然后 CPU 从那里读取它。应用程序越大越复杂,您需要的 RAM 就越多。

在网络主机服务器上也会发生更多相同的事情。假设您的网站是用 WordPress 构建的。除此之外,您还有其他支持您网站的组件,如网络服务器、数据库管理系统、PHP 解释器等。服务器的操作系统也会使用一些内存来提供应用程序运行的环境。

当服务器启动时,所有这些软件和应用程序的数据都会加载到 RAM 中。当用户与您的网站互动时,存储在那里的信息会立即可用,处理器会快速高效地将其处理到用户的浏览器中。

如果需要发送给用户的数据在 RAM 中不可用,则从 SSD 中获取。

缓存和 RAM

当用户请求页面时,Web 服务器需要做很多工作。首先,它需要解释请求,找到所需的资源,并从服务器的 SSD收集所有静态文件,如图像、CSS 样式表和 JS 脚本。然后,它必须协调数据库查询和生成动态数据的服务器端脚本的执行。最后,所有这些都必须作为功能性 HTTP 响应返回给用户。

当另一个用户请求同一页面时,您的服务器必须重复相同的步骤。如果数百名访问者同时访问同一页面,服务器每秒必须执行数百次。

由于提供给用户的数据很多都是相同的,因此这并不是最有效的硬件资源利用方式。这就是缓存被发明的原因。

如果您的网站启用了缓存,在向第一个用户发送响应之前,部分数据会被复制并存储在服务器的 RAM 中。当第二个用户到达时,Web 服务器将从内存中获取数据,而不必再次经历相同的过程。

缓存对速度的影响非常显著,以至于您很难找到不使用缓存且流量可观的网站。您应该考虑自己启用缓存,但请确保不要操之过急。

缓存解决方案的选择及其实施应受许多不同因素的支配,包括网站建设平台、您需要提供的动态数据量、您每天注册的流量等。

在网络环境中 CPU 如何工作?

怎么选择合适自己VPS的CPU和RAM?

我们已经确定 SSD 和 RAM 存储数据。它们实际上不会对数据执行任何操作。这是 CPU 的工作。

安装在服务器上的软件应用程序向服务器发出具体指令,服务器将这些指令转化为行动。高效执行这一操作取决于几个关键组件。

关键 CPU 组件

下面,我们将回顾关键的 CPU 组件,以便您熟悉它们。

让我们看看更多:

  • 控制单元:控制单元是处理器的一部分,它告诉其他组件如何响应特定指令。它接收输入信息,将其转换为信号,然后将其发送到处理器内的各个核心或其他模块。
  • 算术逻辑单元:算术逻辑单元承担着繁重的工作。它负责执行算术和按位运算。换句话说,它完成控制单元移交的指令。
  • 缓存: CPU 缓存不同于服务器的主缓存。它是连接到中央处理器的硬件设备,用于存储经常访问的数据,这些数据可以直接提供给用户,也可以帮助完成 CPU 指令。

云和虚拟化技术模拟了所有这些组件的功能,并确保您的虚拟服务器像常规机器一样工作。

无论是虚拟的还是物理的,在查看可用的托管选项时,您需要考虑几个因素。

关键 CPU 特性

时钟速度是现代 CPU 最重要的特性之一。想象一下超市的收银台。收银台的移动速度完全取决于收银员的效率。他们工作得越快,顾客通过的速度就越快。

具有高时钟速度(或工作频率)的 CPU 就像经验丰富、训练有素的收银员,以完美的效率接待客户。速度慢的 CPU 就像第一天上班的实习生。

换句话说,时钟速度决定了处理器执行命令和完成计算的速度。

核心数量是另一个非常重要的特征我们继续以超市为例。排队仍然一样,但你打开了其他几个收银机,顾客也开始使用它们。更多人同时进行结账,因此等待时间减少了。

这基本上就是您的服务器具有多个核心时发生的情况。请求和指令由不同的核心同时执行。一次可以处理更多任务,从而提高整体性能。

CPU 速度通常是固定的,取决于虚拟机的硬件。如果物理服务器的处理器工作在 3.2GHz,您的 VPS 也将使用相同的频率。一种称为超频的过程理论上可以提高它,但它可能会导致稳定性问题,因此它不被视为最佳实践。

说到核心,事情就更加灵活了。借助虚拟化,您的主机服务提供商可以拆分物理服务器的处理能力,并根据需要将其分配给不同的虚拟机。

您可以在同一个基础架构上拥有两台虚拟服务器 - 一台有两个 CPU 核心,另一台有十几个核心。唯一真正的限制来自硬件和未使用的处理能力。

为您的 VPS 选择 CPU 和 RAM

怎么选择合适自己VPS的CPU和RAM?

选择正确的硬件配置意味着找到一种微妙的平衡,以合适的价格为您提供合适的功率和性能。您需要所需的资源来达到所需的加载速度,同时确保您不会支付太多费用。

说到存储,这相当简单。无论您是在本地还是直接在服务器上构建网站,您都可以轻松查看它占用了多少空间。

有了处理能力和内存,事情就会变得更加复杂。

与存储不同,RAM 和 CPU 对于确保强大的性能至关重要。如果你弄错了其中一个,你就不能指望另一个来弥补。主机服务提供商会尝试通过根据您网站的流量水平推荐硬件配置来帮助您避免这种情况。例如,许多专家估计,每 200,000 次每月点击,您需要 1 个 CPU 核心和 2GB RAM。

这些数字并非凭空而来。它们是根据多年在虚拟服务器上托管网站的经验计算得出的。

但他们无法保证成功。除了流量之外,还有太多因素会影响网站的资源使用,忽略其中任何一个因素都可能导致性能问题。

例如,你用来构建网站的软件会起到一定的作用。事实上,在比较内容管理系统时,资源使用情况通常是讨论的重点。

众所周知,由于其多功能性和模块化架构,Drupal 比 WordPress 更耗费资源。这意味着,如果您要构建 Drupal 网站,则需要比使用 WordPress 更强大的服务器。然而,事情并没有那么简单,因为如果您使用特别繁重的 WP 插件,例如 Elementor 网站构建器,情况可能会很快发生变化。

还有其他因素,例如您实施的优化策略。如果您正在考虑实施缓存大量数据的缓存解决方案,则需要准备并获得足够的 RAM 来存储信息。但是,还值得注意的是,您缓存的数据越多,您的 CPU 使用率就越低,因此考虑这可能会如何影响您的配置很有用。

所有这些意味着,在选择虚拟服务器时,没有一个可以遵循的 CPU 与 RAM 比率。各个项目的要求千差万别,不可能得出一个明确的公式来告诉您需要哪种配置。

幸运的是,有了 VPS,这个问题就不再那么严重了。

检查 CPU 和 RAM 使用情况并升级您的 VPS

VPS的主要优势之一是其可扩展性。虚拟服务器的硬件配置可以快速轻松地更新,因此实际上,您只需单击几下鼠标即可获得确保出色性能所需的硬件资源。

但是您如何知道是否需要升级服务器?

显然,网站加载速度下降表明存在问题。但是,检查服务器负载是确定是否需要升级的更可靠方法。

您的 VPS 可能带有控制面板,可为您提供有关当前服务器负载的大量详细信息。

如果您使用WHM/cPanel,请登录 WHM 管理仪表板,向下滚动到服务器状态菜单,然后单击服务状态

如何为您的 Web 托管 VPS 选择 CPU 和 RAM?、检查 CPU 和 RAM 使用情况以及升级您的 VPS

在活动服务列表下方,您将找到有关您正在使用的 CPU 资源和内存量的信息。

如何为您的 Web 托管 VPS 选择 CPU 和 RAM?、检查 CPU 和 RAM 使用情况以及升级您的 VPS 2

如果您的服务器没有控制面板或者您更喜欢使用终端,则可以通过 SSH 执行htop命令来检查服务器负载。

如何为您的 Web 托管 VPS 选择 CPU 和 RAM?、检查 CPU 和 RAM 使用情况以及升级您的 VPS 4

服务器负载数据对于您未来的扩展策略至关重要。它向您显示哪些组件可能导致潜在的瓶颈,因此您确切地知道需要升级什么。您的托管服务提供商应确保您能够以最具成本效益的方式灵活地扩展服务。并非所有主机都能做到这一点。

有些提供商提供的服务分为不同的套餐。例如,入门级套餐包含 2 个 CPU 核心和 4GB RAM,中级套餐包含 4 个核心和 6GB RAM,顶级套餐包含 8 个核心和 16GB RAM。如果您使用的是最便宜的 VPS 并且内存不足,则需要升级到第二级。

这将解决 RAM 问题,但也会增加一些您不一定需要的CPU 核心。换句话说,您将为不使用的资源付费。

建立在适当的云基础设施上的 VPS 服务则有所不同。底层硬件提供了巨大的资源池,并允许主机提供极其灵活的服务,可随时为您提供经济高效的解决方案。

结论

毫无疑问,VPS 对于任何认真对待其网站的人来说都是必需的。隔离环境使其比共享计划更可靠、更安全,而就成本效率而言,昂贵的专用服务器根本无法与之竞争。

但是,为了充分利用虚拟服务器,您需要确保它具有正确的硬件配置。了解 CPU 和 RAM 的工作原理肯定会对您有所帮助。

常见问题

问: 我的VPS需要多少 RAM?

答: 2GB 的 RAM 足以支持每月点击量约为 200,000 的网站,但您还必须考虑其他因素,例如您的网站使用的缓存引擎、CMS 及其插件,甚至操作系统。

问: 有哪些比较好的VPS服务器?

答:像国内的话有萤光云、阿里云、华为云、腾讯云,国外的主要有Vultr、Lightnode、AWS、Digitalocean。

问: 如何设置 VPS 用于服务器?

答:如果您从主机提供商处获得虚拟服务器,则很可能已经配置好以支持网站。它带有预安装和配置的 Web 服务器和防火墙、数据库管理系统,并且通常还有一个控制面板,可让您安装所选的 CMS 并处理数十项日常网站管理任务。

问: 主机需要多少个 CPU 核心?

答:根据经验,1 个 CPU 核心每月可处理约 20 万次点击。但是,根据您网站及其所用软件的复杂程度,您可能会发现此估算值存在偏差。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1842196.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

企业PC端官网在线客服源码系统 完全开源可二开 附带源代码包+搭建部署教程

系统概述 企业 PC 端官网在线客服源码系统是一款专为企业打造的先进客服解决方案。它基于先进的技术架构,旨在为企业提供稳定、高效、功能丰富的在线客服服务。 该系统采用了模块化设计理念,将各个功能模块有机地整合在一起,形成了一个完整…

【Mybatis-plus】查询及更新为null或空字符串

前言 查询为 null 或者 空字符串时&#xff0c;可以使用 or() 关键字。 提示&#xff1a;以下是本篇文章正文内容&#xff0c;下面案例可供参考 查询 使用 LambdaQueryWrapper 查询 parentCode 为 null 或者 空字符串 的数据。 LambdaQueryWrapper<CompanyEntity> qu…

redhat-devtoolset备忘

参考&#xff1a; User Guide Red Hat Developer Toolset 12 | Red Hat Customer Portal https://access.redhat.com/documentation/en-us/red_hat_developer_toolset/12/html-single/user_guide/index Red Hat Devtoolset 是 Red Hat 提供的一组开发工具集合&#xff0c;主要用…

MySQL服务无法启动,服务没有报告任何错误(cmd里面)

安装压缩包版MySQL时&#xff0c;有时会此问题 解决方法 方法一、MySQL默认3306端口被占用&#xff0c;此时结束占用该端口的任务进程即可&#xff1b; 1.进入cmd,查找占用的端口 netstat -aon|findstr 3306 发现进程编号&#xff08;也就是PID)为2084的进程占用了此端口&am…

面试专区|【62道Redis高频题整理(附答案背诵版)】

什么是Redis? Redis是一个高性能的开源内存数据库系统&#xff0c;它使用键值对存储数据&#xff0c;并支持多种数据结构&#xff0c;如字符串、哈希、列表、集合和有序集合。与传统关系型数据库不同&#xff0c;Redis将数据存储在内存中&#xff0c;以实现快速读写操作。同时…

Chromium 开发指南2024 Mac篇-Chromium项目编译小技巧(六)

1. 前言 在编译大型项目如 Chromium 时&#xff0c;优化编译速度是非常重要的。本文将介绍一些编译优化的小技巧&#xff0c;尤其是如何使用 ccache 来加速 C/C 代码的重新编译。ccache 是一个编译器缓存&#xff0c;通过缓存之前的编译并检测何时再次进行相同的编译&#xff…

无引擎游戏开发(3):数据结构设计|功能函数完善

为了简单起见&#xff0c;我们将棋盘的二维数组定义为全局变量。除此之外还要定义一个char类型的全局变量来识别当前的落子类型&#xff0c;我们将其初始化为‘O’。 char Board_data[3][3] {{-, -, -},{-, -, -},{-, -, -}, };char Cur_piece O; 现在回到“读取操作”部分…

保护模式下的内存访问(笔记)

;代码清单12-1;文件名&#xff1a;c12_mbr.asm;文件说明&#xff1a;硬盘主引导扇区代码;创建日期&#xff1a;2011-5-16 19:54&#xff1b;修改于2022-02-16 11:15;设置堆栈段和栈指针mov ax, csmov ss, axmov sp, 0x7c00;计算GDT所在的逻辑段地址mov ax, [cs: gdt_base 0x7c…

树(数据结构篇)

数据结构之树 树 本篇讲的树也就是多叉树 普通树(多叉树) 概念&#xff1a; 树就是由根节点(父亲)分出多个分支节点(儿子)&#xff0c;然后分支又分出多个分支&#xff0c;我们将这种结构称为树,树也可以这么定义&#xff1a;一棵树由称作根的节点r以及0个或多个非空的(子…

滴漏智能监测报警摄像机

智能监测摄像机在现代城市安全管理中扮演着关键角色。这些先进设备利用高度精确的图像识别技术&#xff0c;实时监测各类安全隐患&#xff0c;特别是在防疫措施中的应用日益显著。滴漏智能监测报警摄像机作为其中的一种&#xff0c;具备了多重功能&#xff0c;极大地增强了公共…

【Golang - 90天从新手到大师】Day06 - 数组

系列文章合集 Golang - 90天从新手到大师 数组是golang中最常用的一种数据结构,数组就是同一类型数据的有序集合 定义一个数组 格式: var name [n]type n为数组长度,n>0 且无法修改,type为数组的元素类型如: var a [2]int上面的例子定义了一个长度为2,元素类型为int的数组…

SpringBoot的配置文件和YAML文件的语法

1.SpringBoot的有两种格式的全局配置文件&#xff0c;使用任何一个功能都是一样的 注意&#xff1a;SpringBoot的全局配置文件名都是固定的application.xxx ① application.properties&#xff0c; 这个是默认Spring initializr默认自动生成的配置文件&#xff0c;也是我们属…

机器学习参数寻优:方法、实例与分析

机器学习参数寻优:方法、实例与分析 机器学习模型的性能很大程度上依赖于其参数的选择。参数寻优(Hyperparameter Tuning)是提升模型表现的关键步骤之一。本文将详细介绍主流的参数寻优方法,包括网格搜索(Grid Search)、随机搜索(Random Search)、贝叶斯优化(Bayesia…

Java中的do-while循环及其示例

Java中的do-while循环及其示例 在上一个教程中&#xff0c;我们讨论了while循环。在本教程中&#xff0c;我们将讨论java中的do-while循环。do-while循环类似于while循环&#xff0c;但它们之间有区别&#xff1a;在while循环中&#xff0c;条件是在执行循环体之前求值的&am…

1分钟带你部署本地Llama3大模型

介绍 LLaMa 3由Meta于2024年4月18日正式发布&#xff0c;这一版本是对先前LLaMa系列的重大升级。新发布的模型包括8B&#xff08;80亿参数&#xff09;和70B&#xff08;700亿参数&#xff09;两个版本&#xff0c;这两个版本在一系列行业标准基准测试中展示了最先进的性能。 从…

Jenkins 发测试邮件报错 553 Mail from must equal authorized user

Jenkins 发测试邮件报错 553 Mail from must equal authorized user 报错信息报错原因解决办法 报错信息 org.eclipse.angus.mail.smtp.SMTPSenderFailedException: 553 Mail from must equal authorized user at org.eclipse.angus.mail.smtp.SMTPTransport.mailFrom(SMTPTra…

EasyRecovery软件帮你轻松找回丢失的信息!即使是电脑小白也能轻松上手。

&#x1f389;【数据恢复&#xff0c;EasyRecovery帮你轻松找回丢失的信息&#xff01;】&#x1f389; 大家好&#xff5e;&#x1f44b;今天我要来安利一款超级实用的软件——EasyRecovery数据恢复工具&#xff01;作为经常跟各种数据打交道的你们&#xff0c;是不是也有过误…

【Windows Server】设置远程连接数量

打开运行&#xff08;快捷键WinR&#xff09;输入gpedit.msc打开“本地组策略编辑器” 依次点选【计算机配置】——【管理模板】——【Windows组件】——【远程桌面服务】——【远程桌面会话主机】——【连接】 双击“限制连接的数量”选择“已启用”&#xff0c;允许的RD最…

0.4 隔行扫描(Interlaced Scan)简介

0.4 隔行扫描简介 隔行扫描&#xff08;Interlaced Scan&#xff09;是一种将图像显示在扫描式的显示设备上的方法&#xff0c;例如阴极射线管&#xff08;CRT&#xff09;。 隔行扫描设备交替扫描图像的奇场&#xff08;图像的所有奇数行&#xff0c;1、3、5&#xff09;和偶…

SpringMVC框架学习笔记(八):自定义拦截器和异常处理

1 自定义拦截器 1.1 什么是拦截器 1.1.1 说明 &#xff08;1&#xff09;Spring MVC 也可以使用拦截器对请求进行拦截处理&#xff0c;用户可以自定义拦截器来实现特定 的功能. &#xff08;2&#xff09;自定义的拦截器必须实现 HandlerInterceptor 接口 1.1.2 自定义拦截…