解决memcached安装配置及rails报错问题
需积分: 17 37 浏览量
更新于2024-09-27
收藏 2KB TXT 举报
"这篇文章主要介绍了如何在Linux环境中安装和配置memcached,并且针对在启动Rails服务时遇到的关于memcache_util加载失败的问题提供了解决方案。"
memcached是一款高性能、分布式内存对象缓存系统,常用于缓解数据库负载,提高Web应用的性能。它通过将数据和对象存储在内存中,以便快速访问,而无需频繁读取或写入硬盘。在Rails应用中,memcached可以作为session存储后端,进一步提升应用响应速度。
首先,安装memcached的步骤如下:
1. 下载源代码:你可以从官方网站或者镜像站点下载memcached的最新版本,例如`memcached-1.1.13.tar.gz`。
2. 解压文件:使用`tar -zxvf memcached-1.1.13.tar.gz`命令解压缩。
3. 编译和安装:进入解压后的目录,执行`./configure --prefix=/usr/local`进行配置,然后运行`make`和`sudo make install`来编译和安装memcached。
在安装完成后,你需要启动memcached服务。通常,使用以下命令启动:
```
memcached -d -u root -m 10 -l 192.168.0.249 -p 11211
```
这里,参数`-d`表示以守护进程方式运行,`-u`指定运行用户,`-m`分配内存大小(单位MB),`-l`是监听的IP地址,`-p`设置端口号。
接下来,为了在Rails应用中使用memcached,你需要安装相应的gem包。这包括`memcache-client`和`cached_model`。你可以使用以下命令安装它们,并确保包含依赖项:
```
gem install cached_model --include-dependencies
gem install memcache-client --include-dependencies
```
如果在启动Rails服务时遇到"nosuchfiletoloadmemcache_util(MissingSourceFile)"的错误,这意味着系统找不到`memcache_util.rb`文件。这可能是因为缺少gem包或者文件路径不正确。你应该确认`memcache-client` gem已经正确安装,并检查`memcache-client-1.7.0/lib/`目录下是否存在`memcache_util.rb`。如果缺失,可以从网上下载并放置到相应位置。
在Rails配置中,你需要在`environments.rb`文件中引入`memcache`和`memcache_util`库,并定义默认的memcached配置。例如:
```ruby
require 'memcache'
require 'memcache_util'
# 默认的memcached设置,环境配置可以覆盖这些设置
unless defined? MEMCACHE_OPTIONS then
MEMCACHE_OPTIONS = {
:debug => false,
:namespace => 'my_memcache',
:readonly => false
}
end
# memcached的配置
unless defined? MEMCACHE_CONFIG then
File.open "#{RAILS_ROOT}/config/memcache.yml" do |memcache|
MEMCACHE_CONFIG = YAML.load(memcache)[RAILS_ENV]
end
end
```
在`config/memcache.yml`文件中,你需要根据实际情况配置memcached服务器的连接信息,例如:
```yaml
development:
servers:
- localhost:11211
production:
servers:
- 192.168.0.249:11211
```
最后,确保在你的session存储配置中使用memcached,例如:
```ruby
ActionController::Base.session_store = :mem_cache_store
```
通过以上步骤,你就可以在Rails应用中成功配置并使用memcached了。在遇到问题时,记得检查gem的安装情况,确保所有必要的文件都在正确的位置,并且配置文件正确无误。
124 浏览量
488 浏览量
161 浏览量
104 浏览量
点击了解资源详情
172 浏览量
488 浏览量
115 浏览量
128 浏览量
xinjiqingyu
- 粉丝: 3
- 资源: 3
最新资源
- 超文本传输协议-HTTP/1.1
- 复旦nios教材(物有所值)
- C8051F330串口实例程序
- 吉林大学2002级C++面向对象程序设计试题答案
- c8051f33x开发工具包用户指南
- tcl中文教程---最好的Tcl脚本语言的中文教程,值得下载
- 正则表达式基本介绍和应用
- db2 730 认证资料
- IBM-PC汇编语言程序设计
- NiosII_SOPCBuilder_Labs_Ver4_011005.
- SAP配置大全(MM部分).pdf
- installshield使用指南
- 带有消息机制的线程 - CustomMessageQueue
- 基于端口的VLAN配置命令
- DIFFERENTIAL GEOMETRY: A First Course in Curves and Surfaces
- SQL Server 2000模拟试题