我正在尝试寻找适用于Windows XP的Cache::Memcached Perl模块的替代方案。或者,以某种方式使Cache :: Memcached在Windows XP上运行。
一些背景知识:生产环境(Web服务器)是Solaris 10,我已经安装了memcached和Cache :: Memcached,一切正常。但是,开发PC是Windows XP,而Cache :: Memcached将无法正常安装,绝对不起作用。参见:
cpantesters.org report on Cache::Memcached
Perl版本:这是为MSWin32-x86-multi-thread构建的perl,v5.10.1
注意:此时不能将开发环境更改为Unix / Linux。会考虑其他基于Perl的缓存选项适合Web环境。
答案 0 :(得分:1)
这是一个解决方案,可能需要额外的工作,但是可行。
创建自定义守护程序脚本作为内存缓存的主机,然后使用Win32 :: Pipe将其转换为管道服务器。使用NamedPipes,您的客户端脚本可以连接到它并执行事务(例如,存储/检索数据/内存)。
如果你想获得想象力,你可以找到Win32扩展,为你的守护进程创建一个Win32服务,所以它会在启动时自动加载。
您可以下载当前版本的Win32 :: Pipe,并查看示例@ http://www.roth.net/perl/pipe/。
注意:ActiveState Perl发行版附带的Win32 :: Pipe模块并不好。
答案 1 :(得分:1)
如果要缓存字符串/标量类型而不是序列化/反序列化对象,则可以直接从开发框上的套接字调用memcached客户端。 memcached协议非常简单,如果您主要尝试验证缓存行为,则不需要与memcached恶魔建立持久连接,并且可以将“发送消息发送到套接字...获取单个响应”作为操作模型