红帽白皮书新鲜出炉!点击获取,让你的云战略更胜一筹! 了解详情
写点什么

借助 EHCache,Rails 缓存重装上阵

  • 2008-08-21
  • 本文字数:633 字

    阅读完需:约 2 分钟

Rails 2.1 引入的新缓存特性,可以方便的缓存包括模型在内的任何东西。除基本文件、内存和DRb 存储以外, Memcached 是共享内存缓存的唯一解决方案。感谢 Dylan Stamat 的努力,现在 JRuby (on Rails) 可以使用流行的 Java 分布式缓存 EHCache 作为其新缓存存储的一部分。

在 JEE 的世界里,是使用 EHCache 还是 Memcached 来作为二级缓存的争论由来已久且甚为激烈。尽管Memcached 在LAMP 和RoR 的世界很流行( Linkedin.com 马上会转向它),但是EHCache 也被包括 Spring Hibernate 在内的很多项目所采用。出于将现有程序从 MRI Ruby 移植到 JRuby 的需求,Dylan Stamat将 EHCache 移植到了 JRuby ,添加了 EhcacheStore 作为新的缓存存储。

在 MRI 的世界里,我们使用的是 memcached,是一个 libmemcached 的 C 客户端的 Ruby 接口。它也是目前唯一支持一致性 hash 的 Ruby 程序库,需要在生产环境下工作。如果是 JRuby 的话,就很多不同的选择。一个是可以通过 JNA 或者 JRuby FFI 或者其他什么编写自己的 hook 到 libmemcached 中。另一个就是寻求 Java 其他的缓存解决方案,无疑 Ehcache 是首选了。

你对在 JRuby 使用 EHcache 怎么看?

查看英文原文: Rails Caching Reloaded With EHCache

InfoQ 的读者 Ray Krueger 评论道:

另 一个使用 JRuby 和 memcached 实现一致性 hash 的选择是使用 spymemcached 客户端。spymemcached 客户端是一个异步单线 程客户端,在 hibernate-memcached 项目下面工作的非常非常棒。我也在项目中使用过 spymemcached,性能很是不错。

2008-08-21 22:29929
用户头像

发布了 80 篇内容, 共 19.1 次阅读, 收获喜欢 5 次。

关注

评论

发布
暂无评论
发现更多内容

Java数组、排序和查找

timerring

Java

vivo全球商城:电商交易平台设计

vivo互联网技术

分布式事务 订单管理 架构设计 多租户 交易平台

有史以来最完整包SpringBoot学习笔记整合,该有的应有尽有

会踢球的程序源

Java 后端 Spring Boot CLI

AI日课@20230412:Prompt Engineering

无人之路

ChatGPT

数据库原理及MySQL应用 | 约束

TiAmo

数据库 MySQL数据库 三周年连更 数据库约束

Java程序控制结构

timerring

Java

Unity 之 转微信小游戏本地数据存储

陈言必行

Unity 三周年连更

C生万物 | 反汇编深挖【函数栈帧】的创建和销毁

Fire_Shield

C语言 汇编 三周年连更 函数栈帧

kubernetes indexer源码解析

欢乐的阿苏

golang DevOps cache 源码阅读 #Kubernetes#

程序员如何保住自己的饭碗?| 社区征文

liuzhen007

程序员 三周年征文

Golang并发编程实战:使用ring buffer实现高效的阻塞队列

Jack

如何使用 taosKeeper 做好监控工作,时序数据库 TDengine 3.0 监控工具详解

TDengine

大数据 tdengine 物联网 时序数据库 数据监控

平安证券与易观千帆达成合作,拓宽用户服务新路径

易观分析

金融 证券 经济

不要过于吹捧ChatGPT:人工智能生成文字还有很大提升空间

石头IT视角

kubernetes delta_fifo源码解析

欢乐的阿苏

golang DevOps 后端 源码阅读 #Kubernetes#

成都.NET线下技术沙龙倒计时一天

MASA技术团队

.net 开发者 MASA Stack

【Linux】之【磁盘】相关的命令及解析[df、du、iostat、iotop]

A-刘晨阳

Linux 三周年连更 磁盘空间

安全沙箱技术的原理、应用程序的安全性和稳定性

没有用户名丶

Vue.js 数据双向绑定的实现

格斗家不爱在外太空沉思

Vue ES6 三周年连更

Java开发人员必知的常用类库,这些你都知道吗?

会踢球的程序源

#java

kubernetes fifo源码解析

欢乐的阿苏

golang DevOps 后端 源码阅读 #Kubernetes#

跨平台应用开发进阶(四十三)一文走近网络层抓包工具:WhireShark

No Silver Bullet

网络层 抓包工具 三周年连更

专注写作:Ulysses for Mac中文版

真大的脸盆

Mac markdown编辑器 Mac 软件 文本编辑 文本管理工具

RabbitMQ组件介绍

穿过生命散发芬芳

RabbitMQ 三周年连更

ContentProvider介绍

攻城狮Wayne

ContextClassLoader 三周年连更

一定是疯了!在M1的Mac上玩OpenVINO,让Intel怎么看我?

IT蜗壳-Tango

OpenVINO Stable Diffusion 三周年连更

Spider实战-抓取视频

浅辄

三周年连更

从ReentrantLock角度解析AQS

Java AQS 并发

Go语言开发小技巧&易错点100例(三)

海风极客

Go 三周年连更

Unity 之 使用原生UGUI实现随手移动摇杆功能经典实例

陈言必行

Unity 三周年连更

openEuler、龙蜥Anolis、统信UOS系统下编译GreatSQL二进制包

GreatSQL

借助EHCache,Rails缓存重装上阵_Ruby_Sebastien Auvray_InfoQ精选文章