- 浏览: 481140 次
- 性别:
- 来自: 济南
文章分类
最新评论
-
effort0829:
更重要的是可以通过 URL打开特定的资源,然而再windows ...
【转载】自定义URL Protocol 协议 -
追梦人zxy:
mark。我记得cglib代理的话就用set注入
通过CGLIB实现AOP的浅析(顺便简单对比了一下JDK的动态代理) -
zacry:
这个问题最近也困扰了我很久,我是从一个老项目里迁移代码时遇到的 ...
通过CGLIB实现AOP的浅析(顺便简单对比了一下JDK的动态代理) -
bo_hai:
netfork 写道哎,大家都回家过中秋节了,自己的问题,自己 ...
Struts 2中验证失败后,radio回复到默认值的问题 -
greatghoul:
看不出有什么严重的,加上 <%- %> 不就可以了 ...
不要在erb中加注释,后果很严重
1、memcached
(1)windows下memcached的下载与安装
下载地址:http://jehiah.cz/projects/memcached-win32/
下文引用部分摘自:http://jackyoo8.iteye.com/blog/195857
1. 下载memcache的windows稳定版,解压放某个盘下面,比如在c:\memcached
2在终端(也即cmd命令界面)下输入 ‘c:\memcached\memcached.exe -d install’ 安装
3 再输入: ‘c:\memcached\memcached.exe -d start’ 启动。NOTE: 以后memcached将作为windows的一个服务每次开机时自动启动。这样服务器端已经安装完毕了/
4.下载php_memcache.dll,请自己查找对应的php版本的文件
5. 在C:\winnt\php.ini 加入一行 ‘extension=php_memcache.dll’
6.重新启动Apache,然后查看一下phpinfo,如果有memcache,那么就说明安装成功!
memcached的基本设置:
Java代码
1. -p 监听的端口
2. -l 连接的IP地址, 默认是本机e
3. -d start 启动memcached服务
4. -d restart 重起memcached服务
5. -d stop|shutdown 关闭正在运行的memcached服务
6. -d install 安装memcached服务PHPChina
7. -d uninstall 卸载memcached服务
8. -u 以的身份运行 (仅在以root运行的时候有效)
9. -m 最大内存使用,单位MB。默认64MB
10. -M 内存耗尽时返回错误,而不是删除项
11. -c 最大同时连接数,默认是1024
12. -f 块大小增长因子,默认是1.25PHPChina
13. -n 最小分配空间,key+value+flags默认是48
14. -h 显示帮助
-p 监听的端口
-l 连接的IP地址, 默认是本机e
-d start 启动memcached服务
-d restart 重起memcached服务
-d stop|shutdown 关闭正在运行的memcached服务
-d install 安装memcached服务PHPChina
-d uninstall 卸载memcached服务
-u 以的身份运行 (仅在以root运行的时候有效)
-m 最大内存使用,单位MB。默认64MB
-M 内存耗尽时返回错误,而不是删除项
-c 最大同时连接数,默认是1024
-f 块大小增长因子,默认是1.25PHPChina
-n 最小分配空间,key+value+flags默认是48
-h 显示帮助
Memcache环境测试:
运行下面的php文件,如果有输出This is a test!,就表示环境搭建成功。开始领略Memcache的魅力把!
Java代码
1. < ?php
2. $mem = new Memcache;
3. $mem->connect(”127.0.0.1″, 11211);
4. $mem->set(’key’, ‘This is a test!’, 0, 60);
5. $val = $mem->get(’key’);
6. echo $val;
7. ?>
< ?php
$mem = new Memcache;
$mem->connect(”127.0.0.1″, 11211);
$mem->set(’key’, ‘This is a test!’, 0, 60);
$val = $mem->get(’key’);
echo $val;
?>
想使用windows下可以配置的memcached,可以参考下面的链接。
http://www.iteye.com/topic/24505
memcache_client的下载地址:
(2)rails环境配置
下文摘自:http://thegiive.iteye.com/blog/79543
這篇介紹如何將 Memcached 跟 Rails 做一個結合,先介紹一下 Memcached
這個著名的套件。Memcached 是一個分散式的 Memory Object 架構,最早是 Life Journal Team
為了加快速度而開發的套件。 他可以啟動許多 Deamon 來將所有其他 Client 的 Object
都集合起來,並且做到多機器同步化的工作。他最大的優點是在於不需要考慮資料 ACID,所以速度方面相當的快。
當然,我們可以使用 Database 去做到一模一樣的事情,但是其實 Database 在 ACID 上面已經付出太多 Overhaed。如果今天需要操作的東西,是一些像是 Cache ,Session 之類真的不見就算了的東西
的話,你可以考慮使用效率比 Database 快的 Memcached。目前已經有相當多的網站
使
用 Memcached 的技術,可說是相當成熟。並且在 Web Server 使用考量上,Web Server 通常使用資源是高 CPU 低
Memory ,而 Memcached 是低 CPU 高 Memory 的使用方式,兩者可以結合彼此優缺點,讓 Web Server 跟
Memcached 跑在同一台機器上面來避免浪費資源使用率。
以 Ruby on Rails 來看,Memcached 可以用在
- ActionController::Caching::Fragments
- CGI::Session::MemCacheStore
- cached_model for caching ActiveRecord objects
這三個用途。 iveJournal.com使用了memcached在前端进行缓存,取得了良好的效果,而像wikipedia,sourceforge等也采用了或即将采用memcached作为缓存工具。memcached可以大规模网站应用发挥巨大的作用。
我
目前使用他都是在 Session Store 這個部分,他可以將 Multi Backend Application Server 的
Session 存放放在同一處,當然可以提高Rails Scaling 的部分。而在實做上面,Memcache 沒有設定檔。要在 Master
啟動一個 2G Memory,listen 在 1.2.3.4 ,port 11211 的 Memcache Deamon 是這樣啟動的# ./memcached -d -m 2048 -l 1.2.3.4 -p 11211
Ruby 要使用 Memcached 是非常的簡單,只要用 Gem 安裝 Ruby 的 Memcached Client 即可。
這裡有兩個選擇,一個是出現在很多書上面的 ruby memcache
,也是比較老牌的選擇。gem i ruby-memcache
但是現在還有更新的選擇, Robotcoop 所開發的 Ruby Memcached Client AP
# gem install memcache-client
要
選擇其實是很容易的,因為兩者的 API 實做都一模一樣,應該說 memcached-client 遵照 ruby-memcached 的
API,但是 memcached-client 效能比 ruby-memcached 來得好,所以請用 memcached-client 吧。
要在 Rails 上面使用 Memcached 來當作 Session Handler 也相當的簡單,將 session store 設為 memcached 即可。你可以在 enviroment.rb 加入
require
'memcache'
memcache_options = {
:compression => false,
:debug => false,
:namespace => "app-#{RAILS_ENV}",
:readonly => false,
:urlencode => false
}
memcache_servers = [ 'localhost:11211' ]
Rails::Initializer.run do |config|
....
config.action_controller.session_store = :mem_cache_store
config.action_controller.cache_store = :mem_cache_store, memcache_servers, memcache_options
end
...
cache_params = *([memcache_servers, memcache_options].flatten)
CACHE = MemCache.new *cache_params
ActionController::CgiRequest::DEFAULT_SESSION_OPTIONS.merge!({ 'cache' => CACHE })
其實 Rails 對於 Scale 的準備還算是相當的完整,很多地方都有相當簡單方便的實做。
延伸閱讀
不只介紹 Ruby Memcached,還介紹 ActiveRecordStore 等用法
不只有 Ruby Memcached API ,還介紹一些其他的 MongileFS API
2、timed_fragment_cache
git上的通通不能用了,有个尸体:http://github.com/rlivsey/timed_fragment_cache/tree/master
想找能用的,需要从这个网址下载:http://www.ruzee.com/blog/2008/07/timed_fragment_cache-on-rails-21/
注意找到“Download version 0.2
”下载即可。
使用方法:
controller中,
when_fragment_expired 'homepage_lines', 30.minutes.from_now do
view中,
<% cache('homepage_lines') do -%>
参照以上内容,就可以实现windows平台下基于时间过期策略的片断缓存。
最后,提供一个rails中的各种缓存方案的链接。
真实世界中的 Rails: Rails 中的缓存:
http://www.ibm.com/developerworks/cn/web/wa-rails1/
memcached完全剖析:
http://blog.csdn.net/starxu85/archive/2008/09/30/3002436.aspx
全文完
------------------------
发表评论
-
ruby访问mysql,报mysql_api.so (LoadError)
2010-09-23 22:45 1871转自:http://hi.baidu.com/vincent% ... -
用rails写了一个项目管理系统
2010-08-16 00:40 1741前段去杭州出差,收获 ... -
我好衰,Ubuntu上遇到rails3没法正常启动应用的麻烦
2010-06-07 00:24 1655最近终于迷上了Ubuntu,听Cedric说,ruby1.9+ ... -
在ubuntu下试了一下vim写rails
2010-05-31 00:31 1269果然不错。。。 看了一下时间,一不小心到凌晨了,搞技术就是辛 ... -
Windows下Apache+Mongrel运行不了的问题
2010-01-12 21:43 1078在使用Apache+Mongrel搭配运行时,有时候无法运行, ... -
couldn't load font "宋体 9", falling back to "Sans 9", expect ugly output.
2009-12-20 13:47 2753Windows下使用Ruby-GNOME2写GUI时,会报以下 ... -
Redmine真的是相当好用!!
2009-10-11 17:11 1479rails+java,所向无敌! 力挺Redmine!做的很不 ... -
“Mysql server has gone away” with Rails
2009-09-29 10:22 1640http://stackoverflow.com/questi ... -
不要在erb中加注释,后果很严重
2009-09-27 10:48 3916在erb中加了两行注释,上了Linux生产环境后,生成的htm ... -
Override automatic updated_at in ActiveRecord/Rails
2009-09-27 10:24 1047http://www.neeraj.name/blog/art ... -
改了数据库密码后,一定勿忘!
2009-09-23 21:46 808lighttpd/fastcgi这种配置下,当改了db密码后, ... -
exception_notification那是相当的好用
2009-09-23 15:18 888http://hellosoft.iteye.com/blog ... -
上线前最终定rails版本:2.3.4
2009-09-21 00:04 898呼呼!! -
使用Rails的Cache缓存了站内信
2009-09-15 14:55 1266通过Rails.cache来缓存当前登录用户的站内信条数,当其 ... -
导入cache_fu
2009-09-15 00:39 1047cache优化是长期的工作,今天通过cache_fu优化了一部 ... -
修改will_paginate支持ajax方式
2009-09-13 20:09 0转自http://www.iteye.com/topic/18 ... -
重启大法
2009-09-06 17:16 961在调试rails时,如果感觉确实没问题,结果死活调不通时,重启 ... -
多态下的counter_cache
2009-09-05 09:22 1127做rails的人是幸福的,因为有时候没必要一定要看专门的api ... -
对于attr_protected字段
2009-09-03 19:23 714update_attribute可以更新,update_att ... -
Rails 2.3.3,没事你改mail.from干么,真服了,浪费我一天时间
2009-09-02 00:13 1658今天想实现发邮件时,接收到的邮件是显示发件人的名,而不是裸的邮 ...
相关推荐
memadmin+php_memcached+memcached1.4.5
nginx+tomcat+memcached_SH nginx+tomcat+memcached_SH nginx+tomcat+memcached_SH nginx+tomcat+memcached_SH
memcache客户端jar包: 1,java_memcached-release_2.6.6.jar 2,commons-pool-1.5.6.jar 3,slf4j-api-1.6.1.jar 4,slf4j-simple-1.6.1.jar
memcache与mysql结合必备 memcached_functions_mysql-1.1.tar.gz
java_memcached-release_2.0.1.jarjava_memcached-release_2.0.1.jar
此套架构整合了springboot+memcached+mybatis+shiro+webservice的聚合式架构,内有具体代码,望大家一起学习交流,写博客因为太懒不愿意写 直接传了。请把解压后的java_memcached-release_2.6.3.jar和commons-pool-...
本资源含有基于java的memcached 的数据缓存开发所需的 memcached-1.2.1-win32.zip 和 java_memcached-release_1.6.zip 快来一起学习吧
memcached+tomcat的session共享
java_memcached-release_2.6.3.rar 客户端所有包,用于java客户端开发。
Win7系统64位,下面安装wampPHP5.3.8,memcached.exe配置文件+php_memcache.dll文件
Memcached Cache现在已经被大家广泛使用,但是千万不要认为对Cache的操作是低损耗的,要知道这类集中式Cache对Socket连接数(会牵涉到linux操作系统文件句柄可用数),带宽,网络IO都是有要求的,有要求就意味着会有...
三个文件:php_memcache-5.2-nts版和ts版(win32-vc6-x86),以及对应的memcached-1.2.5 服务端应该用程序。
memcached+tomcat7 session共享用到的jar包:javolution-5.5.1.jar,kryo-1.03.jar,kryo-serializers-0.10.jar,memcached-2.5.jar,memcached-session-manager-1.5.1.jar,memcached-session-manager-tc7-1.5.1.jar,...
三个文件:php_memcache-5.3-nts版和ts版(win32-vc6-x86),以及对应的memcached-1.2.6 服务端应该用程序。
NULL 博文链接:https://xueshuanglong.iteye.com/blog/2317088
包含了memcached实现tomcat7的session共享所需要的所有jar包 经本人在linux+nginx 环境测试通过
Memcached-1_2_6+Tomcat7负载均衡实现Session共享,可以直接运行例子,也可以自己按说明再配置一遍,最新的nginx,tomcat7,需要的jar包等都在里面了
最新java_memcached-release_2.5.1.jar包