标签: scaling

如何识别大量写入磁盘?

我在运行 CakePHP 应用程序的服务器上遇到了这个问题。服务器非常慢,我一开始以为是应用程序问题,但后来发现写入磁盘的速度为 5-6MB/s。

找到如此大量写入的原因的最简单方法是什么?

服务器正在运行 Gentoo。

linux performance scaling io

9
推荐指数
2
解决办法
1万
查看次数

更多 RAM 与更多服务器

最近有人问我“你知道什么时候决定是使用更多 RAM 还是更多服务器?” (在扩展数据挖掘应用程序的背景下)。

我不知道,那么有什么方法可以决定呢?我对体系结构和缩放的了解很少(我对计算机内存和服务器功能的理解仅限于高级基础知识),因此也非常欢迎了解更多关于这些事情的提示。

memory scaling

9
推荐指数
4
解决办法
739
查看次数

跨水平扩展的 Web 服务器共享文件上传目录的最佳方式

我目前正在尝试为基于 drupal 的 Web 应用程序指定一个水平可扩展的集群,它看起来像下面的彩色图表:

负载平衡器实现粘性会话,因此用户在分配了要使用的服务器后保持状态。

每个应用服务器都有以下内容:

  • 在前面清漆
  • 中间的 drupal 6 在灯组上运行
  • 内存缓存在后面

两台 mysql 数据库服务器在一个共享 IP 上,它们在一个带有 DRBD 和心跳的 HA 集群中,因此丢失一个不会导致整个平台瘫痪。

在此处输入图片说明

有几件事我不确定,我会很感激你的意见:

文件存储应该如何横向扩展?

我正在考虑使用 NFS 在每个应用程序服务器上挂载一个共享文件目录,因此一次上传的文件在所有应用程序服务器上都可用。我在考虑 NFS,因为它已经存在了很长时间,而且我没有使用 MogileFS 或 GlusterFS 的经验,而且我们以前使用过它,所以我们更熟悉它。

是否有任何指导方针可以用来确定以这种方式通过 NFS 共享目录是明智的?

这里的共享文件存储应该如何提供HA?

这里的一个问题是 NFS 服务器是单点故障。

我们已经在 Mysql 服务器上使用 Heartbeat 和 DRBD,我更愿意保持堆栈中涉及的技术数量尽可能少 - 如果我对文件使用相同的 HA 策略会有什么陷阱服务器也是?

另一种方法

这适用于面向内部的站点,当内部计划启动时,用户数量有限,偶尔会在短时间内非常密集地使用该站点。所以这不需要像某些初创公司那样无限扩展。

鉴于

  • 我们可以预期的流量有上限
  • 将 HA 添加到文件服务器,并设计一个设置以像这样水平扩展会带来相当大的复杂性

我还在考虑让两个 Web 服务器更强大,以便它们可以处理它们之间的峰值负载,并在 cron 作业中设置一致或在两者之间进行 rsync,以便:

  • 他们的文件仍然保持同步(粘性会话将用户保持在他们上传文件的同一服务器上)
  • 丢失一个意味着该站点仍在运行。

这听起来像是绕过任何可能的 NFS/DRBD HA 复杂性问题的可能方法吗?

谢谢,

C

nfs scaling lamp

9
推荐指数
1
解决办法
2198
查看次数

使用 OpenVPN 的大型 VPN 网络(约 600 个服务器)

我正在做一项合同的初步研究,以在大约 600 台运行 Linux CentOS 6 的远程服务器(+ 他们的 600 个私有 LAN)之间建立一个 VPN 网络。网络应该是基于星型的,因此每个远程服务器都连接到中央服务器以进入 VPN(我知道它是 SPOF,但这没关系,因为构建此 VPN 的主要应用程序将运行在无论如何都是中央服务器)。

我想使用 OpenVPN(它非常灵活,可以调整到我们需要的配置),但我想知道在如此大的网络上运行它的最佳实践是什么。例如,如果在 tun 模式下使用,它将在中央服务器上创建 600 个 tun 接口,我什至不知道它是否受支持和/或产生任何问题。

我对这么大的网络没有任何经验,所以我愿意接受任何建议和指示。谢谢!

networking openvpn scaling

9
推荐指数
1
解决办法
2268
查看次数

哪里可以买到 512GB 内存的服务器?

我在哪里可以购买一台能够提供 512 GB(是 GB)RAM 的服务器?

我见过的最多的是 256 GB(每根 32 DIMM x 8 GB)

hardware memory scaling capacity

8
推荐指数
2
解决办法
3万
查看次数

Postgres vs MySQL:哪一个更难横向扩展?

根据您的经验,哪个数据库服务更难扩展?MySQL 还是 Postgres?我知道 MySQL 有几个开箱即用的缩放/集群功能,但是对于 Postgres,没有一个是开箱即用的。CMIIW。

编辑

对不起,这里的混淆,我的问题是指横向扩展(水平扩展),即集群、分片等。我知道两者都可以水平扩展,但哪个更容易实现?

谢谢你的分享。

mysql postgresql scaling

8
推荐指数
2
解决办法
7342
查看次数

如何扩展 Web 应用程序?

我主要是一名 Web 应用程序开发人员,我对缩放/可扩展性技术知之甚少。我的应用程序是用 Python 编写的,使用 Django;一个相当标准的设置。

我目前使用 Apache 2.2 作为我的网络服务器,而 MySQL 作为我的数据库服务器;两者都运行在同一个 VPS 上。

到目前为止,它基本上是一个原型,并且在任何给定时间只有 15-30 个并发用户;所以我没有问题,但现在由于我们将添加更多用户,我们将遇到性能问题。

所以我的问题是如何扩展我的网络应用程序?我目前的计划如下:

  1. 现在我只有一台 vps 服务器在运行,apache + MySQL。
  2. 接下来,我计划添加另一个 vps 服务器,仅运行 MySQL,因此我将拥有一个网络服务器和一个数据库服务器。
  3. 接下来,我将向网络服务器添加 memcache 以缓存数据,以减轻 MySQL 的负担。
  4. 接下来,另一个用于提供所有静态内容的 Web 服务器。
  5. 接下来,一个用于负载平衡的 VPS 服务器(nginx/varnish),后面将是我的两个网络服务器,然后是 db-server。

这听起来像一个可行的策略吗?请指导我在这里。

nginx scaling load-balancing apache-2.2

7
推荐指数
1
解决办法
611
查看次数

如何扩展我的 EC2 实例?

我对服务器配置和 Linux 很陌生,所以请耐心等待:

我有一个在 Ubuntu 10.04 LTS 上运行 LAMP 服务器的小型 EC2 实例。

如果需要,我完全不知道如何扩大规模以满足流量需求。我可以将服务器类型更改为大型吗?或者创建另一个实例并做一些负载平衡?我什至不知道如何开始那里。如果有人可以提供一些提示并为我指明正确的文档方向,我将永远感激不尽。谢谢!

ubuntu scaling load-balancing amazon-ec2

7
推荐指数
1
解决办法
2365
查看次数

HAProxy 没有公平地平衡服务器负载

HAProxy 似乎并没有保持与服务器的连接平衡。

请记住这一点:

  • 使用 HAProxy v1.3.26
  • 5 个均衡的服务器规格
  • 算法是循环的,但没有对每个服务器应用权重
  • 在 haproxy 中设置的全局最大连接数为 80,000

如图所示,服务器 C 和 D 的连接似乎比其他服务器多。由于这种额外的负载,它们会继续下降并自动重新启动。

状态 配置

我尝试阅读 HAproxy 官方文档并进行了一些谷歌搜索,但没有发现任何有用的信息。希望这里有人可以提供帮助。

几个问题:

  1. 为什么当配置说使用 roundrobin、服务器规格相同并且没有应用权重时会出现这种情况?

  2. 什么决定了“会话”列中的“最大”子列(表示 1970、1444 等的那个)。服务器 C、D、E 在 3K 范围内,其他 2 个在 2K 以下。为什么会有差异?

  3. 如何让这一切保持平衡?

  4. 有人可以解释每一列吗?我很惊讶 HAproxy 的官方文档并没有真正解释它。

scaling load-balancing haproxy

7
推荐指数
1
解决办法
2924
查看次数

如何在 HAProxy 负载平衡后面水平扩展 SSL 终止?

我一直在环顾四周,似乎没有人像我一样尝试扩展 SSL 终止,我很好奇为什么我的方法看起来如此不常见。

这是我想要做的,然后是为什么:

  10.0.1.1  10.0.1.2 - 10.0.1.5
-----+--------+----+----+----+
     |        |    |    |    |
  +--+--+   +-+-++-+-++-+-++-+-+
  | LB1 |   | A || B || C || D |
  +-----+   +---++---++---++---+
haproxy 1.5 haproxy 1.5 + tomcat
 tcp mode    http mode
Run Code Online (Sandbox Code Playgroud)

为什么这个疯狂的设置Internet -> HAProxy (tcp mode) -> HAProxy (http mode) -> Tomcat?两个词:安全性和可扩展性

通过将 SSL 终端卸载到运行 HAProxy 1.5 的 Web 后端 (AD) 和仅在环回接口上侦听的 Tomcat,我可以保证从客户端到服务器的所有流量都经过加密,不可能从任何非本地网络嗅探到网络后端。

此外,随着 SSL 需求的增加,我可以简单地在负载平衡器后面启动新的(便宜的)后端服务器。

最后,它取消了将证书存在于面向外部的 LB 上的要求,并通过这样做增加了额外的安全性,因为受损的 LB 上不会有任何 pem 或证书。

我的情况似乎与此非常相似:为什么没有水平可扩展的软件负载平衡器平衡 ssl 的示例?但我没有使用基于文件的会话,如果可能的话,我想避免通过 IP …

ssl scaling load-balancing haproxy

6
推荐指数
1
解决办法
9325
查看次数