【问题标题】:session_start exhausts memorysession_start 耗尽内存
【发布时间】:2013-03-20 10:39:42
【问题描述】:

PHP Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 13374929 bytes) in script.php on line 2

第 2 行是 session_start();.

会话存储在memcached 守护进程中(通过php.ini session.save_path 设置 使用默认的 memcached 设置(最大条目为 1mb),这意味着会话数据本身不应该那么大。

调试建议?

【问题讨论】:

  • 好吧,也许这个问题有点无效,这与会话本身无关,并且内存在到达 session_start 行之前分配到某个地方。
  • 它通常建议不要将 memcached 用于与会话相关的目的。
  • PHP 版本?环境一般?
  • centos 6.3 with php 5.3.3, no suhosin, pecl-memcache (not d)

标签: php session


【解决方案1】:
session.save_handler = memcache    
session.save_path="tcp://YOURSERVER:PORT?persistent=1&weight=1&timeout=1&retry_interval=10"

尝试将您的 php.ini 配置设置为类似...

【讨论】:

    【解决方案2】:

    Session_start 本身没有内存溢出。
    错误出现在那里,因为这是压垮骆驼的最后一根稻草
    并且在到达该行之前已经分配了几乎最大的可用内存。

    【讨论】:

      猜你喜欢
      • 2015-08-23
      • 2012-11-10
      • 2012-08-19
      • 2011-02-09
      • 2015-10-01
      • 2018-12-11
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多