【问题标题】:Using Memcache for storing connection objects使用 Memcache 存储连接对象
【发布时间】:2009-09-15 11:53:09
【问题描述】:

是否建议将 SQL Connection 对象存储在内存缓存中?

【问题讨论】:

    标签: sql connection memcached connection-pooling


    【解决方案1】:

    我不会在任何类型的缓存中存储连接对象。使用连接池打开连接非常快,因此无需缓存它。

    【讨论】:

      【解决方案2】:

      在 PHP 中,这甚至是不可能的。如果您尝试序列化数据库连接处理程序或文件处理程序,您会大吃一惊。

      $f = fopen('handler-serialize.php', 'r');
      var_dump(serialize($f));
      fclose($f);
      

      这样的输出是:

      string 'i:0;' (length=4)
      

      我不知道这在其他语言中是如何处理的,但我认为所有语言都不允许您将处理程序存储到在以后唤醒存储值时可能不再存在的资源。

      所以回答你的问题,不建议将 Connection 对象存储在 memcached 中。

      【讨论】:

        【解决方案3】:

        您是否意识到您在询问是否可以在连接后面缓存连接?

        缓存: 连接到 memcached,获取连接

        无缓存: 连接数据库

        你无法绕过连接,所以我真的不明白你为什么要这样做。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2018-08-19
          • 1970-01-01
          • 2012-10-27
          • 2011-04-22
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多