php-Codeigniter使用redis

1、安装redis
首先计算机上必须已经装了redis服务(redis数据库)并运行,详见另一篇文章:http://blog.csdn.net/wzj0808/article/details/54891178

2、安装phpredis
<1>下载
项目地址:https://github.com/phpredis/phpredis(可以不管这个),这里面提到,windows版本的phpredis要自己编译,当然我们不能这么蛮干。

说下我走过的弯路,一开始从http://windows.php.net/downloads/pecl/snaps/redis/20160319/(这个也可以不管)下载了,一直都弄不好,其实这个vc14是7.0版本的php,我们需要的是7.1版本的,所以一直就是错,找不到问题所在,直到找到这个:

http://pecl.php.net/package-stats.php

对应的版本点进去:

http://pecl.php.net/package/redis/3.1.1/windows

下载7.1对应的版本。

<2>安装
将下载解压的php_redis.dll放在php解释器的ext,会发现mysql等的模块也都放在这里,然后打开php.ini,找到;extension=php_bz2.dll,在其上面添加extension=php_redis.dll,

也就是在extension的配置区域的头部,添加上这个redis的配置。安装就算完成了。

<3>查看配置信息
重启服务器或者重启计算机,index.php的路径下添加一个查看页面:phpinfo.php,在里面添加:

<?php
echo phpinfo();
?>
然后访问http://yourdomain.com/phpinfo.php,可以看到配置信息,寻找有没有redis配置成功的信息,如果有则配置完成了。
3、php原生的方式操作redis
// 原生redis类库,不需要config/redis.php
$redis = new Redis();
$redis->connect(‘127.0.0.1’,6379);
//$redis->set(‘key10′,’xx10’,20);//第三个参数是存续时间,单位是秒,如果不填则为永久
echo $redis->get(‘key10’);
4、配置redis.php
在myApplication/config下创建文件redis.php:

<?php
defined(‘BASEPATH’) OR exit(‘No direct script access allowed’);
/**
* Created by PhpStorm.
* Date: 2017/2/9
* Time: 13:32
*/
$config[‘socket_type’] = ‘tcp’;
$config[‘host’] = ‘127.0.0.1’;
$config[‘password’] = NULL;
$config[‘port’] = 6379;
$config[‘timeout’] = 0;
?>
不管是使用框架的redis库还是下面的自定义redis库都需要这个配置文件。

除了配置redis.php之外,还必须在

application/config/config.php里面配置我们使用的缓存类型,默认是这样的:

$config[‘sess_driver’] = ‘files’;
$config[‘sess_cookie_name’] = ‘ci_session’;
$config[‘sess_expiration’] = 7200;
$config[‘sess_save_path’] = NULL;
$config[‘sess_match_ip’] = FALSE;
$config[‘sess_time_to_update’] = 300;
$config[‘sess_regenerate_destroy’] = FALSE;

如果我们使用redis,那么要配置成类似这样:

$config[‘sess_driver’] = ‘redis’;
$config[‘sess_cookie_name’] = ‘ci_session’;
$config[‘sess_expiration’] = 0;
$config[‘sess_save_path’] = ‘tcp://127.0.0.1:xxxx’;
$config[‘sess_match_ip’] = FALSE;
$config[‘sess_time_to_update’] = 600;
$config[‘sess_regenerate_destroy’] = TRUE;

5、使用CI框架的redis库
// 框架的redis库
$this->load->driver(‘cache’);
$this->cache->redis->save(‘key11′,’xx11’);//这里注意,第三个参数是时间,在自定义redis库会说明
echo $this->cache->redis->get(‘key11’);

6、使用自定义的redis类库
<1>Rediscli_default.php
自定义redis类库可以从system/libraries/Cache/drivers/Cache_redis.php拷贝一份,改名为Rediscli_default.php,类名也改为Rediscli_default,除此之外无需改变,可以再自己添加更多方法。将其放在myApplication/libraries/Rediscli/drivers/下

<2>Rediscli.php
在myApplication/libraries/Rediscli/下创建一个Rediscli.php

<?php
defined ( ‘BASEPATH’ ) or exit ( ‘No direct script access allowed’ );
/**
* Created by PhpStorm.
* Date: 2017/2/9
* Time: 20:00
*/
class Rediscli extends CI_Driver_Library {

public $valid_drivers;

public $CI;

function __construct() {

$this->CI = & get_instance ();

$this->valid_drivers = array (

‘default’

);

}

}

<3>调用
// 自定义类,需要配置
$this->load->driver(‘rediscli’);
if ($this->rediscli->default->is_supported())
{
echo $this->rediscli->default->get(‘key2’);
}

<4>时间
这个自定义redis库和框架的库是一样的,在这里集中说明一下。

$this->cache->redis->save(‘key11′,’xx11’,1000);

这是保存值,第3个参数是时间,这个时间不能省略。通过查看函数可以看到,这个参数默认值是60秒,而非永久,所以这个参数是不能省略的。

7、注意这种情况
// 文本存储
$this->load->driver(‘cache’,array(‘adapter’=>’redis’,’backup’=>’file’));
$this->cache->save(‘key5′,’xx5’,10000);
echo $this->cache->get(‘key5’);//xx5
这个代码的意思是,首先使用redis来存储,如果没有找到的话,就使用文本存储。会发现在myApplication/cache存放了文本文件,每个key会有一个文本。
因为没有报错,所以一时可能不知道这个数据到底存在哪里。

这种还是少用吧,毕竟用redis是为了速度更快。

--------------
作者:壁立千仞无欲则刚
来源:CSDN
原文:https://blog.csdn.net/wzj0808/article/details/54948971
版权声明:本文为博主原创文章,转载请附上博文链接!

发表在 日常 | 留下评论

Mac环境下安装PhpRedis

Mac环境下安装PhpRedis

首先上项目地址PhpRedis


坑1

自带PHP和MAMP下的PHP

项目地址中有个brew install php55-redis安装方法,刚开始就直接用这个语句安装,最后发现不对,这个安装到的是Mac下自带的Php版本上了,而我自己使用的是MAMP,所以我只能手动安装(当然我不知道brew能否指定安装到MAMP下,希望懂的大佬指点一下)

了解了上面那个坑以后,就简单了,首先进入/Applications/MAMP/bin/php/php7.1.8目录下,这里的7.1.8可以换成你对应的版本目录,然后依次执行以下命令

git clone https://github.com/phpredis/phpredis
cd phpredis
phpize
./configure --with-php-config=/Applications/MAMP/bin/php/php7.1.8/bin/php-config
make
sudo make install

以上命令如果有提示没有权限,请在命令前方填写sudo


坑2

执行到phpize的时候会出现如下

Configuring for:
PHP Api Version:         20151012
Zend Module Api No:      20151012
Zend Extension Api No:   320151012
Cannot find autoconf. Please check your autoconf installation and the
$PHP_AUTOCONF environment variable. Then, rerun this script.

注意看最后那2行Cannot find autoconf,刚开始我就没注意看这个,然后就开始执行./configure
就提示./configure: command not found


然后需要安装一下autoconf,使用brew install autoconf安装,如何安装brew请自行搜索额
然后在输入sudo phpize

$ sudo phpize
Password:
Configuring for:
PHP Api Version:         20151012
Zend Module Api No:      20151012
Zend Extension Api No:   320151012

就会发现没有那行提示了
然后在输入./那一堆,就不会提示错误了.如下图

$ ./configure --with-php-config=/Applications/MAMP/bin/php/php7.1.8/bin/php-config
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for a sed that does not truncate output... /usr/bin/sed

然后make && make install编译即可,如下成功

Build complete.
Don't forget to run 'make test'.

Installing shared extensions:     /Applications/MAMP/bin/php/php7.1.8/lib/php/extensions/no-debug-non-zts-20160303/

然后还需要在php.ini中最后添加一行代码extension=redis.so,然后重启你的Apache或者Nginx即可,这里改php.ini也是在MAMP里改
File->Edit Template->PHP(php.ini)


测试

首先打开终端输入redis-server启动redis(如何安装redis也是使用brew命令brew install redis)

WX20180106-131312.png

打开php文件写代码

public function index(){
       $redis = new \Redis();
       $redis->connect('127.0.0.1',6379);
       $redis->set('test','测试');
       echo $redis->get('test');
       exit();
    }

接着使用postman或者直接浏览器访问对应的地址,成功出现测试

至此,安装phpredis以及测试都已完成,收工,文中不对的地方还请指出来!

作者:YxYYxY
链接:https://www.jianshu.com/p/6a4043c441e1
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

发表在 日常 | 留下评论

Debian 9快速开启Google BBR的方法,实现高效单边加速

说明:Google BBR刚出来的时候,一键包都还没出来,都是手动把内核换到4.9以上,从而开启BBR加速,方法可参考:使用Google BBR拥塞算法加速TCP教程,由于 Debian9默认的就是4.9的内核而且编译了TCP BBR的内容,所以可以直接通过参数开启。

方法

1、修改系统变量

echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf
echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf

2、保存生效

sysctl -p

3、查看内核是否已开启BBR

sysctl net.ipv4.tcp_available_congestion_control

显示以下即已开启:

# sysctl net.ipv4.tcp_available_congestion_control
net.ipv4.tcp_available_congestion_control = bbr cubic reno

4、查看BBR是否启动

lsmod | grep bbr

显示以下即启动成功:

# lsmod | grep bbr
tcp_bbr                20480  14
发表在 日常 | 留下评论

4790k 体质

1. 及格线:1.18V 4.5G、1.23V 4.6G、1.3V 4.7G通过Prime 95 AVX以上级别的稳定性测试,下边所指电压及对应频率亦是如此,Ring在1.25V可跑4.5G。可以认为这样的4790K是60分的体质。
2. 小雕:1.15V以下4.5G,1.25V以下4.7G,Ring低于1.23V可跑4.5G,75分体质。
3. 中雕:1.13V以下4.5G,1.22V以下4.7G,1.3V或以下4.8G,Ring低于1.2V 4.5G,90分体质。
4. 大雕:1.12V以下4.5G,1.2V以下4.7G,1.25V以下4.8G,1.3V或以上4.9G可烧机不热爆降频,Ring低于1.18V 4.5G,4.8G可烧机,5G以上可跑SuperPI 32M,97分以上,应该很少见。
5. 小雷:1.22V以上4.5G,4.7G很难稳定,Ring 4.5G要1.3V或更高,35-50分。
6. 大雷:1.25V以上4.5G,4.6G很难稳定,Ring 4.5G要1.35V以上或者无法稳定,30分以下。

发表在 日常 | 留下评论

DD包-WinSrv2008r2x64-sp1-数据中心版,已打208补丁,添加kvm/xen驱动

采用MSDN原版母盘封装制作
Windows Server 2008 R2 Standard, Enterprise, Datacenter, and Web with Service Pack 1, VL Build (x64) -- DVD (Chinese-Simplified)
SHA1:A92C97C38EF6ED5F827637179052AD218900377A

文件: WinSrv2008x64-Chinese_datacenter_sp1_vl_kvm_xen.vhd.gz
大小: 3398143993 字节
修改时间: 2018年9月21日, 17:56:25
MD5: A8564B5E23DC78EFCBAFA20E757A91CA
SHA1: 940FD66552C3A5741645EB913034A9DECCC4F161
CRC32: 8F3D8FE6

文件: WinSrv2008x64-Chinese_datacenter_sp1_vl_kvm_xen.iso
大小: 3440902144 字节
修改时间: 2018年9月21日, 15:11:19
MD5: 6316EEF991E965ECF7F6230DBE27C9E4
SHA1: 809D75293E0326B4110908B0EF6AA0BC3BB75199
CRC32: 11F41D9D
注意:此iso版本,只更新了208补丁和添加KVM/XEN驱动,其余并没有修改,设置登陆密码和开启远程桌面这些都需要在vnc上完成。

账户:Administrator
密码:WinSrv2008x64-Chinese

最少需要15G硬盘,安装完成后,系统体积占9.80G左右。
一气呵成,一键DD后,无人值守自动安装,你只需要等待安装完成,即可通过远程桌面3389访问。
不添加任何个人信息/推广,以及软件,纯净版。

版本修改更新:
添加208个补丁修复 (永恒之蓝&勒索病毒补丁已包括)
升级到IE11
全新自动安装
默认开启远程桌面,默认3389端口
添加Virtio驱动(KVM)
添加Pv驱动(XEN)

DD方法:
(推荐,需要重装系统为Debian后使用)一:

  1. wget --no-check-certificate -qO InstallNET.sh ‘https://moeclub.org/attachment/LinuxShell/InstallNET.sh’ && bash InstallNET.sh -dd ‘http://直链/WinSrv2008x64-Chinese_datacenter_sp1_vl_kvm_xen.vhd.gz’

复制代码

二:

  1. wget -qO- http://直链/WinSrv2008x64-Chinese_datacenter_sp1_vl_kvm_xen.vhd.gz |gunzip -dc |dd of=/dev/vda

复制代码

下载地址:
百度云链接:https://pan.baidu.com/s/1h5kON70y1R0plT3swDXeJA 密码:nrmn
MEGA网盘:https://mega.nz/#F!MAJzWIZL!LYjAu9wXi_gVoQKSeILzTw

声明:
如有报毒,请不要使用!
如造成损失,本人不负任何责任.请谨慎使用!
任何形式发布或转载,请保留本文地址!

荣耀&制作
Hostloc#老司机

 

提供一个 谷歌网盘伪直链的方式,用于DD再好不过了。

  1. https://image.moeclub.org/GoogleDrive/<文件分享ID>

复制代码

这样,就能得到文件“永久”不失效的 直链了。
不限制文件大小,不能用于文件夹
文件分享ID不需要带尖括号,需要任何人都可访问的权限

如果各种 404 ,说明打开方式不对。

示例:
例如页面中的示范链接:
https://moeclub.org/2018/04/03/603/

  1. https://image.moeclub.org/GoogleDrive/1srhylymTjYS-Ky8uLw4R6LCWfAo1F3s7

http://down.80host.com/iso/dd/WinSrv2008x64-Chinese_datacenter_sp1_vl_kvm_xen.vhd.gz

发表在 日常 | 留下评论

世界,您好!

欢迎使用WordPress。这是您的第一篇文章。编辑或删除它,然后开始写作吧!

发表在 日常 | 留下评论

华硕B85 PRO GAMER bios 睿频

所以,如果想要锁定4.4GHZ最高睿频:
1、去华硕的官网下载B85 PRO GAMER这款主板的最早一个版本的BIOS,版本号0205。解压缩后放入任意盘符里,注意尽量不要放到某个文件夹,直接把CAP文件放到一进盘符的位置,方便查找。推荐C盘。

2、重启你的机器,进入BIOS,进入高级模式,在最右边找到升级BIOS,找到刚才下的CAP文件刷入。这里显示不是C D E F显示盘符名称,而是以0 1 2 3来显示,0对应C盘。 刷入期间不要断电,等刷入完毕会自动重启。这时第一次开机会提示硬件遇到更新,按F1进入BIOS界面,没事,不用怕,F1走起。进入后,BIOS会版本会显示在最上方,看到0205就代表成功了。

3、选择中文界面后进入高级模式。

4、找到第三项AI Tweaker,找到CPU Core Ratio这个选项,进去选择Sync All这个选项,在出来的core0边上设置为44,回车,代表44倍频。

5、在Ai Tweaker边上的advance也就是高级选项卡下面,找到CPU电源管理选项,进去将EIST和C1选项全部选择为DISABLED。代表关闭节能。

6、这个时候,因为BIOS已经更新了一遍,所以原来的设置参数全部失效,如果你要设置内存时序和频率,还有电压什么的都可以去重新设置。完毕后F10保存退出。

7、开机打开CPU-Z,看看是不是你的CPU已经达到最高的睿频了呢?

发表在 日常 | 留下评论

KMS一句命令激活WINDOWS

一般来说,只要确保的下载的是VL批量版本并且没有手动安装过任何key,

你只需要使用管理员权限运行cmd执行一句命令就足够:

slmgr /skms 192.168.2.1:1688

这句命令的意思是,把kms服务器地址设置(set kms)为192.168.2.1:1688,设置成功如下:

然后去计算机属性或者控制面板其他的什么的地方点一下激活就好了。

当然,如果你懒得点,可以多打一句命令手动激活:

slmgr /ato

这句命令的意思是,马上对当前设置的key和服务器地址等进行尝试激活操作。

Windows 10 LTSC 2019
Operating system edition

KMS Client Setup Key

Windows 10 Enterprise LTSC 2019

M7XTQ-FN8P6-TTKYV-9D4CC-J462D

Windows 10 Enterprise N LTSC 2019

2NFX-8DJQP-P6BBQ-THF9C-7CG2H

Let’s block ads! (Why?)

发表在 日常 | 标签为 | 留下评论

[unable to retrieve full-text content]

发表在 日常 | 留下评论

chrome://flags/#enable-gpu-rasterization

chrome://flags/#enable-gpu-rasterization

Let’s block ads! (Why?)

发表在 日常 | 标签为 | 留下评论