发布于 1970-01-01 08:00
  • 10 个回答
    • 当然有呀,而且都是PHP官方,不像ITellYou那种第三方好像偷东西的网站.
      Linux:
      https://pecl.php.net/package/memcache
      https://pecl.php.net/package/memcached
      Windows:
      http://windows.php.net/downloads/pecl/releases/memcache/

      这里注意下,PHP有两个连接Memcached的PECL扩展
      http://php.net/memcache
      http://pecl.php.net/package/memcache
      http://windows.php.net/downloads/pecl/releases/memcache/

      http://php.net/memcached
      http://pecl.php.net/package/memcached

      其中memcached扩展用到了libmemcached这个库,实现了分布式,能将不同的键保存到不同的服务器上:
      http://php.net/manual/zh/memcached.addserver.php
      注意,memcached扩展不支持Windows.

      两者都支持持久连接,也都提供了session.save_handler支持.
      持久连接就是说,每个PHP进程保持对MySQL/Memcached/Redis的连接,不会在脚本处理完成后断开,下次能够复用,这一切对脚本都是透明的.

      session.save_handler的使用:
      http://php.net/manual/zh/memcache.ini.php
      http://php.net/manual/zh/memcached.sessions.php

      持久连接:

      <?php
      $mc = new Memcache;
      $mc->pconnect('127.0.0.1', 11211);
      $mc->delete('post_id');
      $mc->set('post_id', 'json');
      $json = $mc->get('post_id');
      $mc->replace('post_id', 'new_json');
      ?>
      
      <?php
      $mc = new Memcached('mc');
      $mc->setOption(Memcached::OPT_LIBKETAMA_COMPATIBLE, true);
      if (!count($mc->getServerList())) {
          $mc->addServers(array(
              array('mc1.example.com',11211),
              array('mc2.example.com',11211),
          ));
      }
      ?>
      

      因为addServer/addServers函数不会检查是否存在持久连接,
      所以需要使用getServerList来检查执行当前脚本的PHP-FPM进程中是否已经存在相同名字的长连接资源,
      如果存在,就不要重复使用addServer/addServers方法来新增持久连接.

      2022-11-30 19:08 回答
    • 建议题主使用vagrant安装便携式开发环境,如果一直在windows下运行php程序,证明你还对LAMP or lNMP体系不熟悉,有时候技术是环境逼出来的,不要安于windows图形化环境了,否则很长时间技术都无法真正长进。

      2022-11-30 19:08 回答
    • 没有

      2022-11-30 19:08 回答
    • 2022-11-30 19:08 回答
    • 裂墙推荐安装docker
      现在docker非常方便,win8以上的机器,有hyper-v都不用另外装vbox跑boot2docker

      2022-11-30 19:08 回答
    • docker 到底是什么? 可以通俗易懂的解释下吗??谢谢

      2022-11-30 19:08 回答
    • 身为开发者你要么用mac要么linux,不然就docker

      2022-11-30 19:08 回答
    • 2022-11-30 19:08 回答
    • https://pecl.php.net/ 我windows的扩展都是在里面找的,没有问题啊。不需要另外找扩展站

      2022-11-30 19:08 回答
    • 推荐你使用vagrant本地搭建一个虚拟机,特别好用,哈哈

      2022-11-30 19:08 回答
    撰写答案
    今天,你开发时遇到什么问题呢?
    立即提问
    PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
    Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有