gpt4 book ai didi

php - 动态 WordPress 安装、nginx、varnish、memcached、混合的理想设置...

转载 作者:行者123 更新时间:2023-11-29 13:16:37 24 4
gpt4 key购买 nike

TL:DR - 简而言之,您是否会放弃任何类型的“动态”内容/功能来获得 varnish 提供的巨大性能提升,更不用说 varnish 如何处理像使用 LiveFyre(场外托管的评论系统)这样的事情了?

<小时/>

我正在寻找构建一个可扩展的堆栈,可以服务~500k/uniqueviews/m(Wordpress),同时我可以从一个单独的服务器运行varnish,nginx位于一个单独的mysql服务器上,并且很高兴地服务我不这样做我认为这不是我们的最佳路线。

我们不需要 SSL,而且我还没有涉足 SPDY(当然需要 SSL),所以我们暂时不需要 SSL...

我目前正在单独的服务器上使用 nginx+mod_pagespeed+APC 和 mysql,并且肯定任何缓存都会有所提升,但我也不想在 6 个月后继续进行扩展。

我希望动态内容能够发挥作用(例如在文章 View 上的数据库行中添加某些值等),这根本不适用于清漆,至少不是我使用清漆的方式。我知道你可以做 ESI 等,本质上只是让清漆缓存页眉/页脚,让 php/mysql 处理正文,但不知道此时额外的清漆层是否值得。

实际上,在动态(本质上是小部件,还有评论,通过 LiveFyre 提供)Wordpress 安装上,您首选的堆栈会包含哪些内容?我不想说钱不是问题,但不想说“2 个运行 nginx 的十六进制核心,1 个使用 varnish,2 个用于 memcache,3 个用于 mysql”……您会选择什么?

我不确定 memcached 是否会成为我们的解决方案(坦率地说,不知道 WordPress 如何区分是否应该从缓存中提取文章的内部原理“当然从缓存中提取文章,但仍然需要插入DB PER 文章 View 中的值”)或没有。

最佳答案

首先,不要担心 LiveFyre,因为 LiveFyre 背后的人们已经考虑过如何构建他们的解决方案。这与您无关,因为 LiveFyre 的性能将取决于访问者与 LiveFyre 服务器之间的连接情况;与您的任何事情无关。

I'm looking to build a scalable stack that can serve ~500k/unique views/m (Wordpress) and while I can run varnish from a separate server that nginx is on with a separate mysql server and happily serve that I don't think it's the best route for us.

为什么不呢?

I'm currently using nginx+mod_pagespeed+APC with mysql on a separate server and sure any caching would be a boost but I don't want to be back to working on scaling 6 months from now either.

如果您预计访问者数量在 6 个月内不会发生变化,那也没关系。换句话说,缩放根据定义就是变化。您需要根据应用程序的使用需求的变化来处理它。您将需要重新审视您的架构和布局。

I'd like for dynamic content to function (things like adding certain values to a DB row on article view, etc) which simply won't work with varnish, at least not the way I've used varnish. I know you can do ESIs and such and essentially just have varnish cache the header/footer leaving it let php/mysql process the body but don't know if the extra layer of varnish would even be worth it at that point.

Varnish是一个缓存;根据定义,您缓存不会更改的内容 - 通常是静态内容。因此,要确定清漆是否适合您,您需要分析您的应用程序以了解:

  1. 哪些查询使用得最多,它们是否对时间敏感。换句话说,您是否需要计算每个请求的访问者计数,或者每天计算一次是否可以。

  2. 找出哪些内容没有改变,这是缓存的主要候选内容。

您还需要监控缓存的性能。如果您的未命中率上升,则意味着您需要缓存但没有缓存某些内容;您还需要监视它是否有过时的内容(但有 plugins to handle this for you )。

So realistically, on a dynamic (widgets essentially, but also comments, which are served via LiveFyre) Wordpress install what would your preferred stack consist of? I don't want to say money isn't an issue but without saying "2 Hex Cores running nginx, 1 with varnish, 2 for memcache, 3 for mysql"... what would you go with?

没有人可以回答这个问题,因为每个人的安装都有不同的使用配置文件,并且如上所述;这会随着时间的推移而改变。

我喜欢的堆栈,例如:

  1. nginx
  2. redis
  3. postgresql
  4. S3
  5. 内存缓存
  6. mongodb

其他人会过来给你另一个建议。

I'm unsure if memcached would even be a solution for us (quite frankly, don't know the internals of how Wordpress would distinguish if it should pull from cache "sure pull the article from cache, but still need to insert values in the DB PER article view") or not.

这就是插件的用武之地。

关于php - 动态 WordPress 安装、nginx、varnish、memcached、混合的理想设置...,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21373706/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com