没有合适的资源?快使用搜索试试~ 我知道了~
首页Redis实战指南:Salvatore Sanfilippo推荐的深度教程
Redis实战指南:Salvatore Sanfilippo推荐的深度教程
![](https://csdnimg.cn/release/wenkucmsfe/public/img/star.98a08eaa.png)
Redis in Action 是一本深入讲解Redis的实战指南,由Josiah L. Carlson撰写,Salvatore Sanfilippo作序。该书由Manning Publications出版,旨在帮助读者理解和掌握这个高效、灵活的内存数据库系统。Redis以其强大的功能,如键值存储、列表、集合、有序集合以及发布/订阅模式,被广泛应用于缓存、消息队列、排行榜等多个场景。 在本书中,作者以清晰的语言和丰富的实例,全面介绍了Redis的基础概念,如数据结构的使用、数据持久化策略、网络编程模型,以及高级特性如事务、Lua脚本和集群部署。读者可以从中了解到如何优化Redis性能,解决常见的运维问题,并学会如何在实际项目中有效地利用Redis进行数据管理和处理。 此外,Manning出版社提供了这本书的在线购买链接(www.manning.com),并指出订购时可能享受的折扣政策。版权信息表明,未经Manning Publications事先书面许可,任何形式的复制、存储或传输该书内容都是违法的。书中还强调了尊重知识产权的重要性,制造商和销售商通常会用特定名称标识其产品,这些名称在书中已标注为商标。 对于那些希望进一步了解或购买《Redis in Action》的读者,可以通过发送邮件至orders@manning.com联系Manning Publications的特别销售部门获取更多信息。这本书不仅是一份技术资料,也是一本实践者的宝典,适合Redis初学者和有经验的开发者提升技能,探索Redis在现代IT架构中的无限可能。
资源详情
资源推荐
![](https://csdnimg.cn/release/download_crawler_static/6442329/bg10.jpg)
xv
foreword
Redis was created about three years ago for practical reasons: basically, I was trying to
do the impossible with an on-disk SQL database. I was handling a large write-heavy
load with the only hardware I was able to afford—a little virtualized instance.
My problem was conceptually simple: my server was receiving a stream of page
views from multiple websites using a small JavaScript tracker. I needed to store the lat-
est n page views for every site and show them in real time to users connected to a web
interface, while maintaining a small history.
With a peak load of a few thousand page views per second, whatever my database
schema was, and whatever trade-offs I was willing to pick, there was no way for my SQL
store to handle the load with such poor hardware. My inability to upgrade the hard-
ware for cost concerns coupled with the feeling that to handle a capped list of values
shouldn’t have been so hard, after all, gave me the idea of creating a throw-away pro-
totype of an in-memory data store that could handle lists as a native data type, with
constant-time pop and push operations on both sides of the lists. To make a long story
short, the concept worked, I rewrote the first prototype using the C language, added a
fork-based persistence feature, and Redis was born.
Fast-forward to the present. After three years, the project has evolved in significant
ways. We have a more robust system now, and with Redis 2.6 just released and the
major work in progress being cluster and HA features, Redis is entering its maturity
period. One of the most remarkable advancements in the Redis ecosystem, in my
opinion, is its community of users and contributors, from the redis.io website to the
Redis Google Group. Stemming from the GitHub issues system, there are thousands
![](https://csdnimg.cn/release/download_crawler_static/6442329/bg11.jpg)
FOREWORD
xvi
of people involved in the project, writing client libraries, contributing fixes, and help-
ing other users.
Redis is still a community project: it’s BSD licensed. There are no closed source
add-ons or enhanced versions you need to pay for. The reference documentation is as
accurate as possible, and it’s extremely easy to get help and get in touch with Redis
developers or experts.
Redis started in a pragmatic way, with a programmer who needed to get things
done and couldn’t find the right tool for the tasks at hand. This is why I think a theo-
retical book wouldn’t serve Redis well, and why I like Redis in Action: it’s a book for
people that want to get things done. It doesn’t limit itself to a sterile description of the
API; Redis features and data types are explored in depth using compelling examples.
At the same time, Redis in Action comes from the Redis community, and more spe-
cifically from someone who, before publishing this book, has already helped hun-
dreds of Redis users in many different ways—from schema designs to hardware
latency issues. The Redis Group is full of Josiah’s advice and contributions.
The fact that system operation topics are also covered is a big plus. The reality is
that most people need to both develop the application software and handle the
deployment of the server. And I’d say that you need to understand system operations
and the fundamental limits of the hardware and the system software you’re using in
order to write an application that makes the best use of both.
The result of these efforts is a book that will get you into Redis in a direct way,
pointing your attention in the right directions to avoid common pitfalls. I think Redis
in Action is a great addition to the Redis ecosystem and will be welcomed by the com-
munity of Redis users.
SALVATORE SANFILIPPO
CREATOR OF REDIS
![](https://csdnimg.cn/release/download_crawler_static/6442329/bg12.jpg)
xvii
preface
In March of 2010 I began working in Beverly Hills with Chris Testa, a friend I’d met
while at Google in Santa Monica. He had hired me to be the architect of a small
startup that he was team lead/director for; I was to be the research branch.
While talking one afternoon about how to solve an unrelated problem, Chris men-
tioned Redis as a database that I might find interesting (given my education in theoret-
ical computer science). Several weeks later, after using and patching Redis for our
purposes, I started participating on the mailing list, offering advice and a patch or two.
As time went on, I used Redis for a wider variety of projects at our startup: search-
ing, an ad targeting engine, a Twitter analytics engine, and many pieces to connect
the different parts of our infrastructure. Each project forced me to learn more about
Redis. And as I saw others on the mailing list using Redis, asking questions, I couldn’t
help but offer more and more advice (my all-time favorite was actually a job-search
problem, which became section 7.4), becoming one of the most prolific posters on
the Redis mailing list.
In late September 2011, while on my honeymoon in Paris, I received a call from a
Manning Publications acquisitions editor named Michael Stephens. I didn’t receive
the call immediately, because my phone doesn’t work outside the United States. And
due to bugs in my phone’s firmware, I didn’t even receive the message until the sec-
ond week of October.
When I finally got the message and spoke to Michael, I learned that someone at
Manning had decided that it was about time to publish Redis in Action. After reading
the relevant mailing lists and asking around for suggestions as to who should write the
![](https://csdnimg.cn/release/download_crawler_static/6442329/bg13.jpg)
PREFACE
xviii
book, my name came up. Luckily, Manning was still taking book proposals when
I called.
After a few weeks of discussions and a few book proposal revisions (primarily
resulting from farming several dozen of my past Redis mailing list advice posts), Man-
ning accepted my proposal, and I started writing. It’s now around 17 months since I
first spoke with Michael, and Redis in Action is essentially complete, missing only a few
details that I’m finishing up now. I’ve spent a full year of evenings and weekends pro-
ducing a book to help others understand and utilize one of the most interesting tech-
nologies I’ve come across—more interesting than almost anything I’ve run into since
the day I sat down at my family’s first computer, 20 years ago this past Christmas.
My only regret in all of this is not having had the foresight to invent Redis in the
first place. But at least I had the opportunity to write the book on it!
![](https://csdnimg.cn/release/download_crawler_static/6442329/bg14.jpg)
xix
acknowledgments
I thank my editor at Manning, Beth Lexleigh, for her help throughout the writing
process: your patience and gentle pushes have kept me on track.
I also thank my development editor Bert Bates: thank you for pointing out that my
writing style needed to change for a book audience. Your influence on my writing
early on continued during my work on the entire book, which I hope is reasonably
accessible to readers with a wide range of expertise.
Thank you, Salvatore Sanfilippo: without you, there would be no Redis, and no
one would be reading this. And a huge thank you for writing the foreword on such
short notice.
Thank you, Pieter Noordhuis: in addition to working on Redis, you shared several
drinks with me during RedisConf 2012 while listening to my ideas on Redis data struc-
ture layouts. Even if none of them happen (which is likely), it was great getting a
chance to meet and talk about Redis internals.
A huge thank you goes to my technical proofreading team (in alphabetical order
by first name): James Phillips, Kevin Chang, and Nicholas Lindgren. You helped when
I needed help, and through your collective efforts, Redis in Action has been polished
even further.
Thank you, my friend and colleague Eric Van Dewoestine: you took the time to
write Java versions of examples from the book, which are available at GitHub: https://
github.com/josiahcarlson/redis-in-action.
Thank you, all of my reviewers, for the first, second, and third reviews of my manu-
script during development, and to my final QA reviewer. I tried to take all of your
剩余321页未读,继续阅读
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://profile-avatar.csdnimg.cn/default.jpg!1)
gamehouse
- 粉丝: 0
- 资源: 37
上传资源 快速赚钱
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![](https://csdnimg.cn/release/wenkucmsfe/public/img/voice.245cc511.png)
最新资源
- 解决本地连接丢失无法上网的问题
- BIOS报警声音解析:故障原因与解决方法
- 广义均值移动跟踪算法在视频目标跟踪中的应用研究
- C++Builder快捷键大全:高效编程的秘密武器
- 网页制作入门:常用代码详解
- TX2440A开发板网络远程监控系统移植教程:易搭建与通用解决方案
- WebLogic10虚拟内存配置详解与优化技巧
- C#网络编程深度解析:Socket基础与应用
- 掌握Struts1:Java MVC轻量级框架详解
- 20个必备CSS代码段提升Web开发效率
- CSS样式大全:字体、文本、列表样式详解
- Proteus元件库大全:从基础到高级组件
- 74HC08芯片:高速CMOS四输入与门详细资料
- C#获取当前路径的多种方法详解
- 修复MySQL乱码问题:设置字符集为GB2312
- C语言的诞生与演进:从汇编到系统编程的革命
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
![](https://img-home.csdnimg.cn/images/20220527035711.png)
![](https://img-home.csdnimg.cn/images/20220527035711.png)
![](https://img-home.csdnimg.cn/images/20220527035111.png)
安全验证
文档复制为VIP权益,开通VIP直接复制
![](https://csdnimg.cn/release/wenkucmsfe/public/img/green-success.6a4acb44.png)