Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在PHP中是否可以在内存(RAM)中保留变量?_Php_Database_Performance_Caching_Cpu Usage - Fatal编程技术网

在PHP中是否可以在内存(RAM)中保留变量?

在PHP中是否可以在内存(RAM)中保留变量?,php,database,performance,caching,cpu-usage,Php,Database,Performance,Caching,Cpu Usage,我正在学习用PHP编写网站的高性能代码,我突然想到了这个想法: 我们知道访问数据库会占用大量CPU,因此我们会缓存这些数据,并将其保存到HDD中。但我想知道,它不能放在服务器的RAM中,这样我就可以更快地访问它了吗?您可能想签出memcached: 您可能想签出memcached: PHP通常作为字节码缓存提供。您还可以将其用作本地缓存。如果您在分布式/集群环境中需要一些东西,那么(可能加上)就是最好的选择。PHP通常作为字节码缓存提供。您还可以将其用作本地缓存。如果您在分布式/集群环境中需要一

我正在学习用PHP编写网站的高性能代码,我突然想到了这个想法:


我们知道访问数据库会占用大量CPU,因此我们会缓存这些数据,并将其保存到HDD中。但我想知道,它不能放在服务器的RAM中,这样我就可以更快地访问它了吗?

您可能想签出memcached:


您可能想签出memcached:


PHP通常作为字节码缓存提供。您还可以将其用作本地缓存。如果您在分布式/集群环境中需要一些东西,那么(可能加上)就是最好的选择。

PHP通常作为字节码缓存提供。您还可以将其用作本地缓存。如果您在分布式/集群环境中需要一些东西,那么(可能还有)就是一条路。

XCache、eaccelerator、apc和memcache允许您将项目保存到半持久性内存中(在大多数情况下,您不一定知道项目何时过期)。它与数据库不同,更像是键/值列表。缺点是它需要第三方库,因此根据您的环境,您可能会受到一些限制


我认为您可以使用共享内存(通过php的shmop_u函数)获得相同的效果。但我从来没有使用过它们,也不知道它们是否包含在php的库中,所以有人可以随意抨击我或编辑掉这篇文章。

XCache、eaccelerator、apc和memcache允许您将项目保存到半持久性内存中(在大多数情况下,您不一定知道项目何时过期)。它与数据库不同,更像是键/值列表。缺点是它需要第三方库,因此根据您的环境,您可能会受到一些限制

我认为您可以使用共享内存(通过php的shmop_u函数)获得相同的效果。但是我从来没有使用过它们,也不知道它们是否包含在php的库中,所以有人可以随意抨击我或编辑掉这篇文章。

如果你的服务器很好,那么它已经可以了。但是,当然,您的服务器可能也在为您的任务之外的数千个其他任务提供服务,这意味着您自己没有该服务器的缓存

如果真的有几千人在为你服务,那么在这几千人中,至少有一个疯子在做他不应该做的事情,但是服务器没有被编程为检测,没有被编程为停止,但是,我们只是被编程来尝试并充分利用它,以牺牲x999“负责任”用户的资源可用性为代价。

如果您的服务器有任何问题,那么它已经做到了。但是,当然,您的服务器可能也在为您的任务之外的数千个其他任务提供服务,这意味着您自己没有该服务器的缓存


如果真的有几千人在为你服务,那么在这几千人中,至少有一个疯子在做他不应该做的事情,但是服务器没有被编程为检测,没有被编程为停止,但是,我们刚刚被编程,以牺牲x999“负责任”用户的资源可用性为代价,尝试充分利用它。

请记住,操作系统也会为您将文件缓存在ram中。请记住,操作系统也会为您将文件缓存在ram中。谢谢,我不知道它将文件存储在那里。谢谢,我不知道它把它放在那里了。