标签: apc

在php中获取锁定的最佳方法

我正在尝试更新APC中的变量,并且将尝试执行此操作的许多进程.

APC不提供锁定功能,所以我正在考虑使用其他机制......到目前为止我发现的是mysql的GET_LOCK()和php的flock().还有什么值得考虑的吗?

更新:我找到了sem_acquire,但它似乎是一个阻塞锁.

php locking apc

17
推荐指数
4
解决办法
4万
查看次数

优化APC缓存

这是我的APC如何运行的链接:[已删除]

正如你所看到的,它很快就会填满,我的Cache Full Count有时会超过1000

我的网站使用Wordpress.

我注意到,每次我发布新帖子或编辑帖子时,都会发生两件事.

1)APC内存"USED"重置2)我得到了很多碎片

我试过给APC提供更多的内存(512 mb),但有时会崩溃,看来384是最好的.我还有一个Cron作业,每4小时重新启动一次apache,清除所有APC片段并使用内存.再说一次,如果APC运行了很长一段时间,我的apache会崩溃,我认为由于片段的堆积.

我应该使用apc.Filters并过滤掉一些不应该缓存的东西吗?

我真的很喜欢这种东西,所以如果有人可以用完整的说明解释,非常感谢你!

wordpress opcode-cache apc opcode fragment-caching

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

magento客户端被服务器配置拒绝

Magento除了显示白色主页外没有显示任何内容,在error_log中给出的错误是:

client denied by server configuration: /var/www/httpdocs/app/etc/local.xml 
Run Code Online (Sandbox Code Playgroud)

我可以很好地访问管理区域,有谁知道为什么会发生这种情况?

php caching apc magento

17
推荐指数
3
解决办法
4万
查看次数

Symfony2 + Doctrine2不缓存已连接实体的结果

我正在使用带有Doctrine 2.1的Symfony 2.0.10并且具有相当简单的查询(见下文),其中我想通过APC(版本3.1.7,为其启用1GB内存)缓存结果,useResultCache(true, 600)并保持水合模式为\Doctrine\ORM\Query::HYDRATE_OBJECT.

问题是多对多关系(Doctrine\ORM\PersistentCollection)不会被缓存,每次缓存主要查询结果时,连接的实体都被设置为null.当我设置水合模式时,相同的查询在APC中缓存得很好\Doctrine\ORM\Query::HYDRATE_ARRAY,但对我来说这是不可接受的解决方案,因为我无法重做许多模板来实现这一点.

请建议如何在APC中缓存所有已连接实体的属性?请不要指向文档,因为我认为我已经学会了解决这个问题:)

码:

$property = $em
->createQueryBuilder()
->select('p,u')
->from('MyBundle:Property', 'p')
->leftJoin('p.users', 'u')
->where('p.id in (:id)')
->setParameter('id', 123)
->getQuery()
->useResultCache(true, 60)
->setHydrationMode(\Doctrine\ORM\Query::HYDRATE_OBJECT)
->getResult();
Run Code Online (Sandbox Code Playgroud)

user.php的

class User {
    /**
     * @ORM\ManyToMany(targetEntity="Property", mappedBy="users", cascade={"all"}, fetch="EAGER")
     */
     protected $properties;
}
Run Code Online (Sandbox Code Playgroud)

Property.php

class Property {
    /**
     * @ORM\ManyToMany(targetEntity="User", inversedBy="properties", cascade={"all"}, fetch="EAGER")
     * @ORM\JoinTable(name="user_property",
     *      joinColumns={@ORM\JoinColumn(name="property_id", referencedColumnName="id")},
     *      inverseJoinColumns={@ORM\JoinColumn(name="user_id", referencedColumnName="id")}
     * )
     */
     protected $users;
}
Run Code Online (Sandbox Code Playgroud)

apc symfony doctrine-orm

17
推荐指数
1
解决办法
3246
查看次数

为什么apc_store()会返回false?

有关APC写入失败原因的php.net文档非常不明确.什么样的场景会导致调用apc_store()失败?

有足够的可用磁盘空间,故障很多.有时商店运营会成功,有时会失败.

php apc

16
推荐指数
3
解决办法
6278
查看次数

APC显示100%碎片

APC显示100%碎片.这不好吗?

这是否意味着它根本没有帮助?我有哪些路径可以改善情况?

提前致谢.

php apc

16
推荐指数
2
解决办法
8902
查看次数

在Windows上安装APC

如何在Windows上安装APC?我使用的是PHP 5.3,Windows 7 x64.

我用了

pecl install apc
Run Code Online (Sandbox Code Playgroud)

我有

C:\PHP>pecl install apc
downloading APC-3.0.19.tgz ...
Starting to download APC-3.0.19.tgz (115,735 bytes) ............
done: 115,735 bytes 47 source files, building
WARNING: php_bin c:\php\php.exe appears to have a suffix \php.exe, but config
    variable php_suffix does not match running: msdev APC.dsp /MAKE "APC - Release"
ERROR: Did not understand the completion status returned from msdev.exe.
Run Code Online (Sandbox Code Playgroud)

php apc

16
推荐指数
1
解决办法
4万
查看次数

在LAMP服务器上安装Memcache,APC和Varnish是件好事

我有3个需要优化的Web服务器.我目前每天只有2000多名独立访问者,我想提高服务器的性能,以确保当我获得更多流量时,一切都会顺利进行.

我读过(在一些博客上)APC,memcache和Varnish是优化网站性能的最佳工具.

如果我有静态(例如条款和条件页面)和动态内容(用户设置页面),那么同时使用ALL三个是否合适?

非常感谢,J.

lamp memcached apc varnish

16
推荐指数
2
解决办法
6707
查看次数

php-apc for windows xampp

我需要在Windows上安装php-apc库,以便能够继续在Windows上开发我的应用程序.

我去了http://downloads.php.net/pierre/并下载了php_apc-3.1.10-5.3-vc9-x86.zip.问题是知道在zip文件中,有2个文件夹包含php apc库ntsts文件夹!

我应该从哪个库复制到我的c:\xampp\php\ext文件夹?有什么不同?

php windows xampp apc

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

检查APC是否已安装并正常工作的正确方法是什么?

我正在编写一个wordpress插件,其中CSS是以dinamically方式编译的,因此我已经实现了各种策略来缓存它.截至目前,缓存的首选是APC,如果安装的话.

这是我正在检查它

    $is_apc_installed = function_exists( 'apc_store' )
                      && function_exists( 'apc_fetch' )
                      && ini_get( 'apc.enabled' );
            $sapi_type = php_sapi_name();
            if (substr($sapi_type, 0, 3) === 'cgi') {
                $is_apc_installed = false;
            }
Run Code Online (Sandbox Code Playgroud)

但在某些安装中我仍然得到apc_fetch()总是返回false.我还应该检查以确保APC正常工作?

php apc

15
推荐指数
2
解决办法
8676
查看次数