首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >将memcache与PHP结合使用

将memcache与PHP结合使用
EN

Stack Overflow用户
提问于 2010-03-06 09:02:12
回答 2查看 11.1K关注 0票数 7

我想开始在PHP中使用memcache (在Ubuntu9.10上)。有很多信息在线似乎表明如何做到这一点。然而,令人惊讶的是,没有一篇文章(我到目前为止已经看到)明确说明在尝试使用memcache进程之前是否需要运行它,或者仅仅通过通过process库调用新的MemCache()来生成一个进程(如果不是已经运行的话)。

从我迄今所读到的关于这个问题的各种文档中,我认为这些步骤是有意义的:

  1. 在您的计算机上安装memcache (有几个文档显示了如何做到这一点)
  2. 修改您的php.ini文件并将与memcache相关的consts/标志设置为对您的环境有意义的值
  3. 在ini.d中创建init脚本,将memcache作为守护进程启动
  4. 重新启动Apache守护进程

第三部分是我需要确认的部分,因为到目前为止,我所看到的文档中没有一个提到memcache进程的生存期。

在这方面经验丰富的人能确认这是否是正确的步骤吗?还有,如果我错过了一步,让我知道。

顺便说一句,由于我对Linux还比较陌生,如果有人能发布一个运行memcache守护进程所需的init脚本示例,我将不胜感激(假设我前面描述的步骤是正确的)。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-03-06 09:06:18

最初,memcached和Apache+PHP是两个完全不相关的东西。唯一的事情是PHP是连接到memcached守护进程。

所以,是的,memcached (请注意,最后的'd‘)必须在尝试使用它之前启动:当memcached服务器不运行时,它尝试连接到memcached服务器,您将无法连接--它不会产生新的守护进程或任何东西。

使用一个简单的比较:您的Apache服务器没有启动,您尝试使用浏览器访问它,您将得到一个“无法连接”错误;与PHP试图连接memcached完全一样:它将无法连接。

现在,对于安装过程,这里有几个注意事项,用于您所说的那些看起来不太好的部分:

  • 在您的计算机上安装memcached
    • 如果您安装在使用您的发行版机制中,它应该已经在/etc/init.d/中创建了脚本
    • 它应该启动守护进程
    • 作为提醒,要使用Ubuntu安装一些东西,应该使用apt-get install memcachedaptitude install memcached

  • 在修改php.ini之前,必须安装PHP的memcache扩展--因此PHP具有连接到memcached的函数。
    • 这可以使用发行版的php5-memcache包来完成。
    • 或者使用pecl install memcache命令,它将从pecl.php.net下载源代码并编译它们--这意味着您需要编译软件所需的一切。

编辑:在这里回答比在评论中更容易

我说过安装memcached应该可以--在Ubuntu上,似乎有一个陷阱:

使用此方法:

代码语言:javascript
运行
AI代码解释
复制
ps -Alf | grep memcached

我没有看到任何正在运行的守护进程。

当我尝试启动守护进程时,我会得到以下内容:

代码语言:javascript
运行
AI代码解释
复制
$ sudo /etc/init.d/memcached start
Starting memcached: memcached disabled in /etc/default/memcached.

因此,在Ubuntu上,您必须编辑/etc/default/memcached并对其进行更改;而不是这样:

代码语言:javascript
运行
AI代码解释
复制
# Set this to yes to enable memcached.
ENABLE_MEMCACHED=no

它应包含以下内容:

代码语言:javascript
运行
AI代码解释
复制
# Set this to yes to enable memcached.
ENABLE_MEMCACHED=yes

那么,启动memcached应该是可能的:

代码语言:javascript
运行
AI代码解释
复制
$ sudo /etc/init.d/memcached start
Starting memcached: memcached.
test@tests: ~/temp
$ ps -Alf | grep mem
4 S nobody    3813     1  0  80   0 - 30025 ep_pol 00:17 pts/4    00:00:00 /usr/bin/memcached -m 64 -p 11211 -u nobody -l 127.0.0.1
0 R test      3819  2690  0  80   0 -  1834 -      00:17 pts/4    00:00:00 grep --color=auto mem

注意:既然memcached已经启用,那么每次重新启动它时,都应该用您的系统自动启动它。

票数 11
EN

Stack Overflow用户

发布于 2013-05-03 00:10:57

代码语言:javascript
运行
AI代码解释
复制
sudo apt-get install memcached
If you do not have a compiler on your server, you can download build-essential in order to install memcache: 
sudo pecl install memcache
Finally use PECL (PHP Extension Community Library) to install memcache
sudo pecl install memcache
Once you have completed the installation of memcache with PECL on the VPS, add memcached to memcache.ini
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2393300

复制
相关文章
使用memcache.php监控memcached
memcahce-2.2.7下载地址:http://pecl.php.net/get/memcache-2.2.7.tgz
星哥玩云
2022/07/03
3090
使用memcache.php监控memcached
PHP+memcache的简单使用
初始化一个Memcache的对象: $mem = new Memcache; 连接到我们的Memcache服务器端,第一个参数是服务器的IP地址,也可以是主机名,第二个参数是Memcache的开放的端口: $mem->connect(“192.168.0.200”, 12000); 保存一个数据到Memcache服务器上,第一个参数是数据的key,用来定位一个数据,第二个参数是需要保存的数据内容,这里是一个字符串,第三个参数是一个标记,一般设置为0或者MEMCACHE_COMPRESSED就行了,第四个
苦咖啡
2018/05/08
8290
php操作memcache的使用测试总结
1.简介 memcache模块是一个高效的守护进程,提供用于内存缓存的过程式程序和面向对象的方便的接口,特别是对于设计动态web程序时减少对数据库的访问。 memcache也提供用于通信对话(session_handler)的处理。 更多Memcache 模块相关信息可以到 http://www.danga.com/memcached/ 查阅。  1.1.memcache在php.ini中的配置项列表 memcache在php.ini中的配置项列表 名称 默认值 是否可变 改变日志 memcache
joshua317
2018/04/10
2K0
PHP-ThinkPHP将后台模板与框架做结合
商品列表 Goods控制器index方法 goods_list.html -> index.html
cwl_java
2020/03/27
2.6K0
高效地将 TailwindCSS 与 Nuxt 结合使用
在这篇文章中,我们将了解如何在 TailwindCSS 的官方 Nuxt 模块的帮助下有效地将 TailwindCSS 与 Nuxt 应用程序结合使用。我们还将了解如何将 SVG 图标与 TailwindCSS 一起使用,而不是直接使用图像或 SVG 图标,以及如何基于给定图像为 TailwinCSS 构建自定义调色板。
用户4235284
2023/10/14
7340
高效地将 TailwindCSS 与 Nuxt 结合使用
将 SVG 与媒体查询结合使用
在 HTML 文档中,我们可以根据视口的条件显示、隐藏或重新排列页面的某些部分。例如,如果浏览器窗口的宽度为 480 像素,我们可能会将导航从水平导航移动到垂直可折叠列表。将 SVG 与媒体查询一起使用时,我们可以做类似的事情。
玖柒的小窝
2021/09/12
6.3K0
将 SVG 与媒体查询结合使用
用memcache.php监测memcache的状况
最新的memcache pecl中,新增了一个memcache.php,这个php文件可以用来方便的查看memcache的状况,界面上与apc自带的apc.php风格一致。
Java架构师必看
2021/03/22
9260
PHP之Memcache和Memcached
本篇文章向大家介绍的是PHP中的Memcache和Memcached ,有兴趣的朋友可以看一下
码农编程进阶笔记
2021/07/20
4400
PHP与jQuery结合的功能
获取后台填充数据没问题,但是当后台数据已失效,前台数据已获取后,这种历史遗留数据处理比较棘手,原来的数据填充和释放只针对后台所有的数据,没有把版本迭代后的状态考虑进去,这里的主要问题就是当用户不刷新页面,还要解决后台传输的无效数据和有效数据的区分,不会在前台展现有效数据把无效数据覆盖的,而是当数据无效时,填充请选择的数据,让用户重新选择有效的数据,重新录入系统。
php007
2019/08/05
1K0
PHP与jQuery结合的功能
玩玩Memcache缓存组件For PHP
前言 几乎每次面试都会有一个很基本的问题,实习生的基本问题,那就是 如何优化数据库或减少数据库的压力? (1) 合理增加索引 (2) 优化SQL语句 (3) 主从配置(读写分离) (4) ... 注意:除了上面的几点外,我们还可以使用缓存机制,比如Redis、Memcache等等 ---- Memcache简介 Memcache是danga.com的一个项目,最早是为 LiveJournal 服务的,目前全世界不少人使用这个缓存项目来构建自己大负载的网站,来分担数据库的压力。Memcac
AlicFeng
2018/06/08
1.8K0
linux安装php memcache扩展
checking for libmemcached location… configure: error: memcached support requires libmemcached. Use –with-libmemcached-dir=<DIR> to specify the prefix where libmemcached headers and library are located
仙士可
2019/12/19
2.2K0
CA2013:请勿将 ReferenceEquals 与值类型结合使用
使用 System.Object.ReferenceEquals 方法来测试一个或多个值类型是否相等。
用户4268038
2022/02/20
1.2K0
php扩展之memcache vs memcached
其中功能点1不够吸引人,PHP5版本之后,全线切OO编程,因此OO方法足够实现用户的直接使用,关键是功能点2。查阅资料可以得知,当网络抖动or部分服务临时不可用时,memcache扩展会主动的进行rehash,造成数据一致性问题,以一个简单的计数器(限流用)举例:
asfan
2019/08/24
8160
php扩展之memcache vs memcached
PHP 开发学习[2] —— wamp memcache 的安装与扩展(Windows 64)
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u011415782/article/details/51570350
泥豆芽儿 MT
2018/09/11
7860
PHP 开发学习[2] —— wamp memcache 的安装与扩展(Windows 64)
使用memcache缓存
首先,通过maven引入jar <dependency> <groupId>net.spygroupId> <artifactId>spymemcachedartifactId> <version>2.10.3version> dependency> 创建MemCache对象 package com.os.core.util.memcache; import java.util.Map; import java.util.Set; /** * Created by PengSo
allsmallpig
2021/02/25
1.2K0
将Testinfra与Ansible结合使用以验证服务器状态[DevOps]
Testinfra是一个功能强大的库,用于编写测试以验证基础结构的状态。 与Ansible和Nagios结合使用,它提供了一个简单的解决方案,以代码形式实施基础架构。
yyx
2020/01/16
2K0
将Testinfra与Ansible结合使用以验证服务器状态[DevOps]
php结合 Swoole的基本使用技巧
这几个是定义帧定界的,因为Swoole的客户端和服务器端通信是TCP连接的,因此得给帧定界符,有多种帧定界方式,具体参考Swoole官方文档。这里其中是用头额外加长度的方式。
php007
2019/11/29
6130
Memcached与Memcache区别[通俗易懂]
在写这篇文章之前一直对memcache 、memcached模糊,相差一个字母,特此总结下:
全栈程序员站长
2022/07/11
4450
点击加载更多

相似问题

在PHP中结合OOP使用Memcache

11

将ndb.Tasklets与memcache读取相结合

21

如何在PHP中结合使用multiget和memcache

12

将SQL与PHP结合使用

43

将PHP与CSS结合使用

15
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
社区富文本编辑器全新改版!诚邀体验~
全新交互,全新视觉,新增快捷键、悬浮工具栏、高亮块等功能并同时优化现有功能,全面提升创作效率和体验
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文