我有一个用PHP编写的应用程序,我正在考虑使用eAccelerator来优化应用程序。我的两难境地是,这个应用程序使用实时数据(每天大约插入600到800万条记录)。
到目前为止,我还没有使用任何优化工具来加速我的应用程序。所以我的问题是,eAccelerator是否会对实时数据造成任何问题(例如,显示旧数据而不是当前数据)?
发布于 2010-09-15 16:29:43
不是!来自http://eaccelerator.net/的(我的重点):
PHP eAccelerator是一个免费的开源
加速器和优化器。它通过在编译状态下对脚本进行缓存来提高脚本的性能,因此几乎完全消除了编译的开销。它还优化脚本以加快其执行速度。..。eAccelerator将编译后的PHP脚本存储在共享内存中,并直接从中执行代码。
eAccelerator只优化和缓存PHP文件(因此消除了为每个请求编译静态PHP文件时的大部分开销)。动态数据(例如数据库、文件系统、远程资源)不会被缓存(至少不会被eAccelerator缓存)。因此,您的数据仍将是来自请求的资源的“最新”数据。
如果以后您需要缓存(部分)实时数据(使它们不完全“实时”),您可以考虑使用Memcached等技术。这是专门设计的,"...以减少必须读取外部数据源(如数据库或API)的次数。“
发布于 2010-09-23 19:10:51
如果以后你需要缓存(一些)实时数据(使它们不完全“实时”),你可以看看Memcached这样的技术。
您也可以使用eAccelerator来实现这一点。请参见函数eaccelerator_put()和eaccelerator_get() here。
编辑:Too bad,这些函数从最新版本的eAccelerator 0.9.6中删除。
https://stackoverflow.com/questions/3715874
复制相似问题