我刚刚在 vps 服务器上设置了 xcache。

我正在运行管理部分,它显示 xcache 正在运行。

然而,我对某些设置有点不确定 - documentation 并没有深入了解每个设置的含义。

可能有用的注意事项:

  • 在当前设置中,我只对基本操作码缓存器感兴趣,而不是 var 数据组件。
  • 服务器是具有 2GB 内存的 VPS(不确定 CPU 配置,但可以找出是否需要了解),并且它正在运行带有 cPanel/WHM 的 CentOS 5.x 操作系统。
  • 我有 root 访问权限,服务器将只托管一个网站。

  • php的版本是:
    PHP 5.4.21 (cli) (built: Nov 15 2013 10:15:53)
    Copyright (c) 1997-2013 The PHP Group
    Zend Engine v2.4.0, Copyright (c) 1998-2013 Zend Technologies
        with XCache v3.0.3, Copyright (c) 2005-2013, by mOo
        with XCache Cacher v3.0.3, Copyright (c) 2005-2013, by mOo
    

    问题 1

    安装的默认设置有:
    xcache.shm_scheme = mmap
    xcache.mmap_path = /dev/zero
    

    为什么 mmap_path 设置为/dev/zero?这不是否定整件事吗?应该设置为固定的文件路径。

    问题 2

    其他“大小”设置是:
    cache.size = 16M
    xcache.slots = 8K
    xcache.count = 1
    

    是否有一种有条不紊的方法可以用来为这些制定最佳配置?

    目前的统计数据是这样的:



    注意:我之前已经看到它的使用率达到了 100%。

    问题 3
    xcache.optimizer 有什么作用?

    FAQ



    但我似乎安装了 XCache 3.0.3 o_O

    最佳答案

    Xcache 文档维护得很差,我最近尽我所能来处理可用的内容,回答 similar question 。我会稍微解释一下以达到您的具体观点。

    xcache.mmap_path

    如果将其设置为空或无效路径,缓存器将关闭。我相信这应该是一个可写的目录。 (在 linux 服务器上,默认的 /dev/zero/ 应该可以工作;在 OSX 上这失败了,所以我成功地使用了 /tmp/xcache/)

    操作码缓存器:大小、数量、插槽

  • xcache.count 指的是缓存线程的数量,并且与您想要使用的 CPU 内核数量相关——这个想法是如果您有一个多核处理器,multithreading 应该更快
  • 有效值为 2^n,如 1, 2, 4, 8
  • 0 将禁用缓存
  • 无效值将四舍五入到最接近的有效值
  • 即 3 将变成 4
  • 即 5 将变成 8
  • xcache.size 是指所有缓存线程的总内存。因此,每个线程大致获得 size/count 内存量
  • xcache.slots 默认为 8k 除非你想改进一些特定的东西
  • 更多插槽(更细粒度)应该可以更有效地利用空间(在缓存中放入更多数据)
  • 更少的插槽(更少的粒度)应该会导致更快的读取时间和更高的整体稳定性

  • 缓存器还允许用户控制变量缓存,具有类似的设置和结果。

    优化器

    这个功能似乎被放弃了,或者无限期地在开发中——忽略它。

    关于php - 配置 xcache 缓存器,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20087650/

    10-13 00:49