开发者社区> 白宸> 正文

性价比神器!99元一年的阿里云256MB高性能Redis性能测试及应用介绍

简介: 本文我们将介绍如何使用阿里云Redis服务作为PHP服务的session存储。PHP的session存储作为php会话信息的存储单元,默认的PHP使用文件来存储session会话信息。同时PHP支持使用扩展的存储单元来作为会话信息的存储,通过扩展的session能够满足多台PHP服务器共享会话信息。
+关注继续查看

介绍

Redis是一个开源的key-value类型的数据库缓存和存储系统,同时Redis提供了丰富的数据结构用来支持多样的业务chan场景,比如hashes,lists,sets还有ordered sets及其他类型。云数据库Redis提供了兼容Redis协议的数据库服务,提供单机和集群两种模式,提供了全套的容灾切换、故障迁移、在线扩容、性能优化的数据库解决方案。
本文我们将介绍如何使用阿里云Redis服务作为PHP服务的session存储。PHP的session存储作为php会话信息的存储单元,默认的PHP使用文件来存储session会话信息。同时PHP支持使用扩展的存储单元来作为会话信息的存储,通过扩展的session能够满足多台PHP服务器共享会话信息。

架构优势

screenshot

  • Redis云服务主从版本默认双机热备
  • Redis云服务主从版本兼容性高,支持lua、事物,并且兼容Redis3.0的地理位置GEO计算
  • Redis云服务性能优越,最大性能可以达到10WQPS
  • Redis云服务主从版本数据持久化,每秒AOF Fsync,并且支持备份恢复
  • Redis云服务主从版本256MB内存小性能高,性价比非常适合小内存的业务场景
  • Redis云服务主从版本支持动态扩容,用户在业务增长之后可以动态升级

购买Redis云服务

  • 访问Redis控制台,点击创建实例
  • 选择256MB按量付费,每个用户都能享受一次99元包年256MB的折扣

screenshot

测试Redis云服务

Redis云服务提供了文本协议进行访问,我们可以通过telnet进行服务的简单测试,实例的域名可以在控制台点击实例详情页面查看到,测试方法如下:

[root@ECS~]# telnet HOST 6379
Trying IP...
Connected to HOST.
Escape character is '^]'.
auth PASSWORD            #回车
+OK                      #回复
ping                     #回车
+PONG                    #回复
quit                     #回车
+OK                      #回复
Connection closed by foreign host.

如果购买的实例能够按上面正常回复说明购买的实例能够正常使用。

性能测试

./memtier_benchmark --server HOST -p 6379 -P redis --threads=16 --clients=4 -a PASSWORD --data-size=128 --test-time=600 --ratio=1:10 --key-pattern=S:S
  • 测试结果:
    screenshot

安装PHP扩展

  • 代码下载
git clone https://github.com/phpredis/phpredis
  • 初始化配置,切换到代码目录输入phpize然后输入./configure进行配置
  • 编译安装,在执行完成./configure之后检查有没有异常,如果没有则执行make; make install即可

配置PHP扩展

PHP的会话存储定义在php.ini文件中,用户可以通过执行以下PHP代码找到PHP配置文件的路径。

<?php
phpinfo()
?>

通常如果使用apache对应的配置文件在/etc/php5/apache2/php.ini,如果是nginx则在/usr/local/php/etc/php.ini,通过sudo vim 文件路径来修改对应的PHP配置如下,其中HOST还有PASSWORD需要换成对应实例域名和密码。

session.save_handler = redis
session.save_path = "tcp://HOST:6379?auth=PASSWORD"

重启PHP服务则后续PHP的session信息将存储在阿里云Redis上,用户可以随着业务量的增长来随时对云Redis扩容。

结论

云数据库Redis提供了方便的Redis云服务,通过主备来保证实例的高可用,并提供了弹性的扩展能力,用户可以按需购买使用,同时阿里云Redis可以作为PHP的session信息存储管理单元,解决用户分布式session存储的困扰

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
心中有“树”!图文并茂介绍数据结构中常见的树(一)
提到数据结构中的树(Tree) ,大家应该都不陌生,相关书籍中都有大段篇幅的介绍,刷 Leetcode 的时候会遇到很多相关问题。很多人往往会用 “手写红黑树” 来形容面试难度很高。
10 0
心中有“树”!图文并茂介绍数据结构中常见的树(二)
计算机科学家尼古拉斯·沃斯(Niklaus Wirth)曾说过:编程=数据结构+算法 ,可见数据结构在编程中的重要性。
5 0
如何在小游戏制作工具中使用云函数
本节试图以最简单的方式带你了解如何在小程序后台申请和开通云开发服务,创建并编写第一个云函数并在小游戏制作工具中对其进行调用。
11 0
记住这两个二分模板,秒杀所有二分查找算法题!
二分查找是一种在每次比较之后将查找空间一分为二的算法。当我们要处理的问题具备单调性,或者要搜寻序列的边界时,应该考虑使用二分查找算法
9 0
JSP - 起源、执行过程、运行原理、生命周期
JSP - 起源、执行过程、运行原理、生命周期
5 0
在函数中使用局部变量并且通过局部变量返回函数值的方案来了
感谢小游戏可视化体验官群中的一位叫做“@天羽地王”的朋友提供的思路。本文内容主要包括如何在函数中使用局部变量并且通过局部变量来返回函数的结果值。
12 0
微信小游戏推广运营专业术语汇总
本文内容包括与微信小游戏运营推广相关的专业术语的汇总和解释。作为一个游戏开发者,不光要知道如何做游戏,也要知道如何让别人玩自己做的游戏。
5 0
心中有“树”!图文并茂介绍数据结构中常见的树(三)
在前面两篇文章中,我们简要介绍了数据结构中的各种【树】在搜索、数据库等领域的使用场景,希望对大家有所帮助。
11 0
+关注
20
文章
31
问答
来源圈子
更多
阿里云数据库:帮用户承担一切数据库风险,给您何止是安心!支持关系型数据库:MySQL、SQL Server、PostgreSQL、PPAS(完美兼容Oracle)、自研PB级数据存储的分布式数据库Petadata、自研金融级云数据库OceanBase支持NoSQL数据库:MongoDB、Redis、Memcache更有褚霸、丁奇、德哥、彭立勋、玄惭、叶翔等顶尖数据库专家服务。
+ 订阅
相关文档: 云数据库 OceanBase 版 可信账本数据库 云原生关系型数据库 PolarDB PostgreSQL引擎
文章排行榜
最热
最新
相关电子书
更多
OceanBase 入门到实战教程
立即下载
阿里云图数据库GDB,加速开启“图智”未来.ppt
立即下载
实时数仓Hologres技术实战一本通2.0版(下)
立即下载