我正在使用python。我做了一个yum install memcached,然后是一个easy_install python-memcached
我使用了帮助(memcache)中的简单测试程序。当我没有得到正确的答案时,我提出了一些印刷声明:
[~/test]$ cat m2.py
import memcache
mc = memcache.Client(['127.0.0.1:11211'], debug=0)
x = mc.set("some_key", "Some value")
print 'Just set a key and value into the cache (suposedly)'
value = mc.get("some_key")
print 'Just retrieved that value from the cache using the key'
print 'X %s' % x
print 'Value %s' % value
[~/test]$ python m2.py
Just set a key and value into the cache (suposedly)
Just retrieved that value from the cache using the key
X 0
Value None
[~/test]$
现在的问题是,我在安装中没有做什么?它似乎是从API的角度来看,但它无法将任何内容放入memcache共享区域。 我正在使用运行centos的virtualbox vm [〜] #cat / proc / version Linux版本2.6.32-358.6.2.el6.i686(mockbuild@c6b8.bsys.dev.centos.org)(gcc版本4.4.7 20120313(Red Hat 4.4.7-3)(GCC))#1 SMP Thu 5月16日18:12:13 UTC 2013
是否有应该运行的守护进程?当我做ps时,我没有看到明显的命名。
我试图在我的虚拟机上安装pylibmc,但无法找到正常工作的安装,所以现在我将看看我是否可以先完成上述工作。
我发现如果我直接从python控制台GUI直接运行,如果我设置debug = 1
我会得到更多的输出>>> mc = memcache.Client(['127.0.0.1:11211'], debug=1)
>>> mc.stats
{}
>>> mc.set('test','value')
MemCached: MemCache: inet:127.0.0.1:11211: connect: Connection refused. Marking dead.
0
>>> mc.get('test')
MemCached: MemCache: inet:127.0.0.1:11211: connect: Connection refused. Marking dead.
当我尝试使用示例telnet连接到端口时,我得到拒绝连接:
[root@~]# telnet 127.0.0.1 11211
Trying 127.0.0.1...
telnet: connect to address 127.0.0.1: Connection refused
[root@~]#
我尝试了网上找到的用于配置telnet的说明,因此不会禁用localhost: vi /etc/xinetd.d/telnet 服务telnet { flags = REUSE socket_type = stream 等=不 user = root server = /usr/sbin/in.telnetd log_on_failure + = USERID 禁用=否 }
然后运行命令重启服务:
service iptables stop
service xinetd stop
service iptables start
service xinetd start
service iptables stop
我在两种情况下运行(iptables启动和停止)但它没有效果。所以我没有想法。我需要做些什么才能让PORT被允许?如果这是问题? 或者是否需要运行需要打开端口的memcached服务?
答案 0 :(得分:0)
这就是让它工作所需要的:(一系列手动步骤)
1) su -
cd /var/run
mkdir memcached # this was missing
在memcached文件中,我在OPTIONS语句中添加了“-l 127.0.0.1”。这显然是一个倾听选择。对第2步和第2步执行此操作3.我不确定哪个文件在运行时实际使用过。
2) cd /etc/sysconfig
cp memcached memcached.old
vi memcached
3) cd /etc/init.d
cp memcached memcached.old
vi memcached
4)尝试一些命令,看看服务器现在是否启动
/etc/init.d/memcached start
/etc/init.d/memcached status
/etc/init.d/memcached stop
/etc/init.d/memcached restart
我尝试打开一个浏览器,但它似乎从未真正显示任何内容,所以我真的不知道这种方法有多有效。我没有运行apache或类似的东西,所以它可能与我的事业无关。也许我必须提供一个?键=等等。
5) http://127.0.0.1:11211
6)现在应该准备好了。如果运行下面显示的测试,它应该工作。至少它对我有用。做帮助(memcache)会显示一个简单的程序。只需粘贴即可,它应该可以正常工作。
[~]$ python
>>> import memcache
>>> help(memcache)