仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1358|回复: 19
打印 上一主题 下一主题

[学习教程] PHP网站制作之Redis 的装置设置装备摆设引见

[复制链接]
变相怪杰 该用户已被删除
跳转到指定楼层
#
发表于 2015-2-3 23:38:33 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
PHP成功的插入,删除,更新数据的时候,显然,你已经距离成功指日可待了。   

redis 是一个高功能的key-value数据库。 redis的呈现,很大水平抵偿了memcached这类keyvalue存储的缺乏,在部 分场所可以对关系数据库起到很好的增补感化。它供应了Python,Ruby,Erlang,PHP客户端,利用很便利。成绩是这个项目还很新,能够还缺乏够不乱,并且没有在实践的一些大型体系使用的实例。另外,缺少mc中批量get也是对照大的成绩,一直批量获得跟屡次获得的收集开支是纷歧样的。
功能测试了局:
SET操作每秒钟 110000 次,GET操作每秒钟 81000 次,办事器设置装备摆设以下:
Linux 2.6, Xeon X3320 2.5Ghz.
stackoverflow 网站利用 Redis 做为缓存办事器。
装置进程:
  Redis是一种初级key-value数据库。它跟memcached相似,不外数据可以耐久化,并且撑持的数据类型很丰厚。有字符串,链表,集 合和有序纠合。撑持在办事器端盘算纠合的并,交和补集(difference)等,还撑持多种排序功效。所以Redis也能够被当作是一个数据布局办事 器。
Redis的一切数据都是保留在内存中,然后不按期的经由过程异步体例保留到磁盘上(这称为“半耐久化形式”);也能够把每次数据变更都写入到一个append only file(aof)外面(这称为“全耐久化形式”)。
1、下载最新版
wget http://redis.谷歌code.com/files/redis-2.0.0-rc4.tar.gz
2、解紧缩
tar redis-2.0.0-rc4.tar.gz
3、装置C/C++的编译组件(非必需)
apt-get install build-essential
4、编译
cd redis-2.0.0-rc4
make
make号令履行完成后,会在以后目次下生本钱个可履行文件,分离是redis-server、redis-cli、redis-benchmark、redis-stat,它们的感化以下:


  • redis-server:Redis办事器的daemon启动法式
  • redis-cli:Redis号令行操作东西。固然,你也能够用telnet依据其纯文本协定来操作
  • redis-benchmark:Redis功能测试东西,测试Redis在你的体系及你的设置装备摆设下的读写功能
  • redis-stat:Redis形态检测东西,可以检测Redis以后形态参数及延迟情况  
在前面会有这几个号令的申明,固然是从网上抄的。。。 5、修正设置装备摆设文件
/etc/sysctl.conf 添加
vm.overcommit_memory=1 刷新设置装备摆设使之失效
sysctl vm.overcommit_memory=1
增补引见:
  **假如内存情形对照严重的话,需求设定内核参数:
echo 1 > /proc/sys/vm/overcommit_memory
  内核参数申明以下:
overcommit_memory文件指定了内核针对内存分派的战略,其值可所以0、1、2。
0, 暗示内核将反省是不是有足够的可用内存供给用历程利用;假如有足够的可用内存,内存请求答应;不然,内存请求掉败,并把毛病前往给使用历程。
1, 暗示内核答应分派一切的物理内存,而不论以后的内存形态若何。
2, 暗示内核答应分派超越一切物理内存和互换空间总和的内存
  **编纂redis.conf设置装备摆设文件(/etc/redis.conf),按需求做出恰当调剂,好比:
daemonize yes #转为守护历程,不然启动时会每隔5秒输入一行监控信息
save 60 1000 #减小改动次数,其实这个可以依据情形停止指定
maxmemory 256000000 #分派256M内存

在咱们胜利装置Redis后,咱们直接履行redis-server便可运转Redis,此时它是依照默许设置装备摆设来运转的(默许设置装备摆设乃至不是后台运 行)。咱们但愿Redis按咱们的请求运转,则咱们需求修正设置装备摆设文件,Redis的设置装备摆设文件就是咱们下面第二个cp操作的redis.conf文件,今朝 它被咱们拷贝到了/usr/local/redis/etc/目次下。修正它就能够设置装备摆设咱们的server了。若何修正?上面是redis.conf的主 要设置装备摆设参数的意义:

  • daemonize:是不是今后台daemon体例运转
  • pidfile:pid文件地位
  • port:监听的端标语
  • timeout:恳求超不时间
  • loglevel:log信息级别
  • logfile:log文件地位
  • databases:开启数据库的数目
  • save * *:保留快照的频率,第一个*暗示多长工夫,第三个*暗示履行几何次写操作。在必定工夫内履行必定数目的写操作时,主动保留快照。可设置多个前提。
  • rdbcompression:是不是利用紧缩
  • dbfilename:数据快照文件名(只是文件名,不包含目次)
  • dir:数据快照的保留目次(这个是目次)
  • appendonly:是不是开启appendonlylog,开启的话每次写操作会记一条log,这会进步数据抗风险才能,但影响效力。
  • appendfsync:appendonlylog若何同步到磁盘(三个选项,分离是每次写都强迫挪用fsync、每秒启用一次fsync、不挪用fsync守候体系本人同步)
  
上面是一个略做修正后的设置装备摆设文件内容:
  1. daemonize yespidfile /usr/local/redis/var/redis.pidport 6379timeout 300loglevel debuglogfile /usr/local/redis/var/redis.logdatabases 16save 900 1save 300 10save 60 10000rdbcompression yesdbfilename dump.rdbdir /usr/local/redis/var/appendonly noappendfsync alwaysglueoutputbuf yesshareobjects noshareobjectspoolsize 1024
复制代码
  将下面内容写为redis.conf并保留到/usr/local/redis/etc/目次下
然后在号令行履行:
  1. 1
复制代码
  1. /usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf
复制代码
便可在后台启动redis办事,这时候你经由过程
  1. 1
复制代码
  1. telnet 127.0.0.1 6379
复制代码
便可毗连到你的redis办事。
6、启动办事并验证
启动办事器
  
./redis-server

$redis-server /etc/redis.conf  
检查是不是胜利启动
$ ps -ef  grep redis   

./redis-cli ping
PONG
7、启动号令行客户端赋值取值
  
redis-cli set mykey somevalue  
./redis-cli get mykey
  
8、封闭办事

$ redis-cli shutdown     

#封闭指定端口的redis-server  

$redis-cli -p 6380 shutdown

9、客户端也能够利用telnet模式毗连。
[root@dbcache conf]# telnet 127.0.0.1 6379
Trying 127.0.0.1...
Connected to dbcache (127.0.0.1).
Escape character is "^]".
set foo 3
bar
+OK
get foo
$3
bar
^]
telnet> quit
Connection closed.

<P style="TEXT-INDENT: 2em">
学习数据库了,MYSQL可算是PHP的黄金搭档了,不过,虽然话是这么说,你也可能恨不得把MYSQL给生吞活剥了,因为这一行一列的东东简直让自己头晕目眩。
再见西城 该用户已被删除
19#
发表于 2015-6-14 19:19:21 | 只看该作者
先学习php和mysql,还有css(html语言很简单)我认为现在的效果比以前的方法好。
飘飘悠悠 该用户已被删除
18#
发表于 2015-6-11 20:46:28 | 只看该作者
其实没啥难的,多练习,练习写程序,真正的实践比看100遍都有用。不过要熟悉引擎
再现理想 该用户已被删除
17#
发表于 2015-5-12 09:50:44 | 只看该作者
我要在声明一下:我是个菜鸟!!我对php这门优秀的语言也是知之甚少。但是我要在这里说一下php在网站开发中最常用的几个功能:
小妖女 该用户已被删除
16#
发表于 2015-4-26 18:09:38 | 只看该作者
写的比较杂,因为我也是个新手,不当至于大家多多指正。
爱飞 该用户已被删除
15#
发表于 2015-4-25 03:48:27 | 只看该作者
遇到出错的时候,我经常把错误信息直接复制到 google的搜索栏,一般情况都是能搜到结果的,不过有时候会搜出来一大片英文的出来,这时候就得过滤一下,吧中文的弄出来,挨着式方法。
精灵巫婆 该用户已被删除
14#
发表于 2015-4-13 15:56:08 | 只看该作者
环境搭建好,当你看见你的浏览器输出“it works\\\\\\\"时你一定是喜悦的。在你解决问题的时候,我强烈建议多读php手册。
深爱那片海 该用户已被删除
13#
发表于 2015-4-12 17:50:43 | 只看该作者
先学习php和mysql,还有css(html语言很简单)我认为现在的效果比以前的方法好。
飘灵儿 该用户已被删除
12#
发表于 2015-4-11 21:40:13 | 只看该作者
本文当是我的笔记啦,遇到的问题随时填充
因胸联盟 该用户已被删除
11#
发表于 2015-4-1 00:10:32 | 只看该作者
本人接触php时间不长,算是phper中的小菜鸟一只吧。由于刚开始学的时候没有名师指,碰过不少疙瘩,呗很多小问题卡过很久,白白浪费不少宝贵的时间,在次分享一些子的学习的心得。
第二个灵魂 该用户已被删除
10#
发表于 2015-3-26 00:30:08 | 只看该作者
我要在声明一下:我是个菜鸟!!我对php这门优秀的语言也是知之甚少。但是我要在这里说一下php在网站开发中最常用的几个功能:
透明 该用户已被删除
9#
发表于 2015-3-19 22:16:54 | 只看该作者
使用 jquery 等js框架的时候,要随时注意浏览器的更新情况,不然很容易发生框架不能使用。
若天明 该用户已被删除
8#
发表于 2015-3-17 23:11:21 | 只看该作者
装在C盘下面可以利用windows的ghost功能可以还原回来(顺便当做是重转啦),当然啦我的编译目录要放在别的盘下,不然自己的劳动成果就悲剧啦。
莫相离 该用户已被删除
7#
发表于 2015-3-13 07:37:47 | 只看该作者
你很难利用原理去编写自己的代码。对于php来说,系统的学习我认为还是很重要的,当你有一定理解后,你可你针对某种效果研究,我想那时你不会只是复制代码的水平了。
兰色精灵 该用户已被删除
6#
发表于 2015-3-10 23:15:39 | 只看该作者
基础有没有对学习php没有太大区别,关键是兴趣。
冷月葬花魂 该用户已被删除
5#
发表于 2015-3-1 20:32:39 | 只看该作者
首先我是坚决反对新手上来就用框架的,因为对底层的东西一点都不了解,造成知识上的真空,会对以后的发展不利。我的观点上手了解下框架就好,代码还是手写。当然啦如果是位别的编程语言的高手的话,这个就另当别论啦。
不帅 该用户已被删除
地板
发表于 2015-2-11 09:12:28 | 只看该作者
首先我是坚决反对新手上来就用框架的,因为对底层的东西一点都不了解,造成知识上的真空,会对以后的发展不利。我的观点上手了解下框架就好,代码还是手写。当然啦如果是位别的编程语言的高手的话,这个就另当别论啦。
简单生活 该用户已被删除
板凳
发表于 2015-2-8 07:56:37 | 只看该作者
我还是推荐用firefox ,配上firebug 插件调试js能省下不受时间。谷歌的浏览器最好也不少用,因为谷歌的大侠们实在是太天才啦,把一些原来的js代码加了一些特效。
小女巫 该用户已被删除
沙发
发表于 2015-2-5 15:38:56 | 只看该作者
兴趣是最好的老师,百度是最好的词典。
愤怒的大鸟 该用户已被删除
楼主
发表于 2015-2-4 04:40:38 | 只看该作者
说点我烦的低级错误吧,曾经有次插入mysql的时间 弄了300年结果老报错,其实mysql的时间是有限制的,大概是到203X年  具体的记不清啦,囧。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-9-21 01:40

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表