- 博客(102)
- 收藏
- 关注
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 学习点滴
【cookie】如果在setcookie的时候,设置了expire,那么浏览器在关闭之后,不会删除cookie。如若不设置,则在浏览器关闭的时候,自动清理cookie。php的setcookie函数,第三个参数expire是时间戳。【session】php.ini中的session的配置参数,有一些需要记住用法session.cookie_httponly:表示是否支持
2013-09-03 22:31:00
650
转载 Redis采用不同内存分配器碎片率对比
我们知道Redis并没有自己实现内存池,没有在标准的系统内存分配器上再加上自己的东西。所以系统内存分配器的性能及碎片率会对Redis造成一些性能上的影响。在Redis的 zmalloc.c 源码中,我们可以看到如下代码: 48 /* Explicitly override malloc/free etc when using tcmalloc. */ 49 #if defined(U
2015-03-19 14:33:29
797
原创 mysql table is read only 解决
/usr/local/opt/mysql/bin/mysqladmin -uroot -p flush-tables
2015-02-02 06:44:54
702
原创 开发checklist
1. 代码是否遵守编码规范,是否容易理解。2. 代码是否模块化,是否合理抽象,是否合理封装。3. 数据结构和算法是否合理,是否有潜在的性能问题。4. 是否清楚理解外部依赖的sdk库的使用注意事项,是否有性能问题,是否有资源管理问题。5. 是否清楚理解外部依赖的接口和网络服务的可靠性和可用性,是否有访问限制,是否有超时控制,外部服务异常对本系统有什么影响,如何解决。6. 关键逻辑
2015-01-30 14:03:10
1396
原创 centos 修改host
vi /etc/hosts添加一行127.0.0.1 test.r.com /etc/rc.d/init.d/network restart
2014-08-30 23:28:29
8142
原创 PHP封装ssl非对称加密算法
<?phpclass Rsa{ /** * private key */ private $_privKey; /** * public key */ private $_pubKey; /** * the keys saving path */ private $_keyPath; /** * the construtor,the
2014-08-25 14:28:11
2266
1
原创 win7 安装mongodb
1、从http://www.mongodb.org/downloads获取,下载适合windows版本的mongodb,注意32位和64位的区别2、将下载的zip版本,解压到D:/mongodb3、创建数据库文件的存放位置。系统默认的位置是C:/data/db,可以在启动的时候,通过参数--dbpath 来修改文件夹路径。如D:/mongodb/data/db。需要注意的是,这个文件夹
2014-08-18 12:20:52
3013
原创 apache开启rewrite重写
放开apache配置文件httpd.conf中关于rewrite模块的注释LoadModule rewrite_module modules/mod_rewrite.so在虚拟主机中加入rewrite规则
2014-08-13 15:36:43
610
原创 堆排序
堆的定义n个关键字序列Kl,K2,…,Kn称为(Heap),当且仅当该序列满足如下性质(简称为堆性质):ki=号。//k(i)相当于二叉树的非叶子结点,K(2i)则是左子节点,k(2i+1)是右子节点若将此序列所存储的向量R[1..n]看做是一棵完全二叉树的存储结构,则堆实质上是满足如下性质的完全二叉树:树中任一非叶子结点的关键字均不大于(或不小于)其左右孩子(若存在)结点的关键字
2014-07-07 20:08:42
555
转载 Nginx模块参考手册:Gzip压缩模块(Gzip)
gzip是GNU zip的缩写,它是一个GNU自由软件的文件压缩程序,可以极大的加速网站.有时压缩比率高到80%,近来测试了一下,最少都有40%以上,还是相当不错的。这些模块默认会全部编译进Nginx,除非手工指定某个模块在configure时排除。这个模块允许在文件传输过程中使用gzip压缩。如下例:gzip on; //
2014-05-09 14:50:21
782
原创 抽象类、接口碎碎念
抽象类(abstract)抽象类不能实例化抽象类是通过 abstract class className 来定义的任何一个类,如果它里面至少有一个方法是被声明为抽象的,那么这个类就必须被声明为抽象的。被定义为抽象的方法只是声明了其调用方式(参数),不能定义其具体的功能实现。继承一个抽象类的时候,子类必须定义父类中的所有抽象方法;另外,这些方法的访问控制必须和父类中一样(或者更为宽松
2014-05-04 16:37:46
656
原创 mysql查询的存取类型
我们用explain语句来查看查询语句的索引使用情况的时候,有一列“type”,现在整理一下type的所有类型,备忘按照从最优到最差的顺序进行排序system:系统表,并且是常量表const:常量表eq_ref:unique/primary类型的索引,并且使用了“=”进行存取ref:索引使用“=”进行存取(表示可能有多条符合存取的数据)ref_not_null:索引使用“=
2013-08-21 22:59:30
628
原创 二分查找
<?phpfunction binary_search($array, $searchValue){ $lowKey = 0; $highKey = count($array) - 1; $searchTimes = 0; $get = false; while(!$get) { ++$searchTimes; if ($searchValue $array[
2013-07-23 16:38:03
649
转载 Mysql中校对集utf8_unicode_ci与utf8_general_ci的区别
一直对utf8_unicode_ci与utf8_general_ci这2个校对集很迷惑,今天查了手册有了点眉目。不过对中文字符集来说采用utf8_unicode_ci与utf8_general_ci时有何区别还是不清楚?下面摘录一下Mysql 5.1中文手册中关于utf8_unicode_ci与utf8_general_ci的说明: 当前,utf8_unicode_ci校对规则
2013-07-09 11:36:22
1047
原创 mysql之zerofill
相信很多用了mysql的人都很迷茫1.对于整形的字段用了unsigned有什么区别?2.tinyint(1) 和 tinyint(7) 究竟有什么区别?下面来简单分析一下:1、对于每种整形来说,都分无符号(unsigned)和有符号(signed)两种类型,如果需声明无符号类型的话就需要在类型前加上unsigned。无符号版本和有符号版本的区别就是无符号类型能保存2倍于有符号类型的
2013-05-13 22:29:18
1626
转载 MySQL之Covering Index
在网上随便搜搜,就能找到大把的关于MySQL优化的文章,不过里面很多都不准确,说个常见的:SELECT a FROM ... WHERE b = ...一般来说,很多文章会告诫你类似这样的查询,不要在“a”字段上建立索引,而应该在“b”上建立索引。这样做确实不错,但是很多时候这并不是最佳结果。为什么这样说?让我们先来分析一下查询的处理过程:在执行查询时,系统会查询“b”索引进行定位
2013-05-02 17:51:44
602
转载 SQL_CALC_FOUND_ROWS 与 FOUND_ROWS()
FOUND_ROWS() 函数,可以在调用包含LIMIT的SQL查询中,获得总共符合条件的记录数。FOUND_ROWS() 函数的具体用法:它需要在前面的SELECT语句中打开SQL_CALC_FOUND_ROWS选项。如:mysql> SELECT SQL_CALC_FOUND_ROWS * FROM tbl_name WHERE id > 100 LIMIT 10;
2013-05-02 17:43:47
1631
转载 Redis 事务
Redis 提供的事务机制与传统的数据库事务有些不同,传统数据库事务必须维护以下特性:原子性(Atomicity), 一致性(Consistency), 隔离性(Isolation), 持久性(Durability),简称ACID。我们逐项考察下 Redis 在事务的 ACID 上做出的权衡与取舍:原子性(Atomicity)原子意味着操作的不可再分,要么执行要么不
2013-05-02 13:34:32
611
原创 function _getIp
REMOTE_ADDR 是你的客户端跟你的服务器“握手”时候的IP。如果使用了“匿名代理”,REMOTE_ADDR将显示代理服务器的IP。HTTP_CLIENT_IP 是代理服务器发送的HTTP头。如果是“超级匿名代理”,则返回none值。同样,REMOTE_ADDR也会被替换为这个代理服务器的IP。$_SERVER['REMOTE_ADDR']; //访问端(有可能是用户,有可能是代理的
2013-04-25 17:08:37
861
原创 PHP中的$_SERVER 与 getenv
getenv:取得系统中的环境变量,格式为name=value。$_SERVER:服务器超级全局变量。例:getenv('REMOTE_ADDR');$_SERVER['REMOTE_ADDR'];都可以获取客户端的IP。区别就是:getenv 不支持ISS的ISAPI方式运行的php。这是网上找的说明,不知道是否可以这样理解,在任何条件下,都可以用$_SERV
2013-04-25 17:05:04
638
原创 PHP之session_write_close
session_write_close — Write session data and end session 说明void session_write_close ( void )End the current session and store session data.Session data is usually stored after yo
2013-04-23 22:34:53
1460
原创 PHP超全局变量
超全局变量 — 超全局变量是在全部作用域中始终可用的内置变量通俗点理解就是在函数或者类的方法中调用此变量,无需先global包括以下变量:$GLOBAL;$_SERVER;$_GET;$_POST;$_REQUEST;$_COOKIE;$_SEESION;$_ENV;$_FILES:文件上传的相关变量
2013-04-23 22:27:56
647
原创 array_keys
array_keys(PHP 4, PHP 5)array_keys — 返回数组中所有的键名主要是需要注意第二个和第三个参数的用法说明array array_keys ( array$input [, mixed$search_value [, bool$strict ]] )array_keys() 返回input 数组中的数字或
2013-03-11 22:31:18
902
原创 linux下查看文件和文件夹大小
当磁盘大小超过标准时会有报警提示,这时如果掌握df和du命令是非常明智的选择。df可以查看一级文件夹大小、使用比例、档案系统及其挂入点,但对文件却无能为力。du可以查看文件及文件夹的大小。两者配合使用,非常有效。比如用df查看哪个一级目录过大,然后用df查看文件夹或文件的大小,如此便可迅速确定症结。下面分别简要介绍df命令可以显示目前所有文件系统
2013-03-07 11:32:05
766
转载 不要使用(include/require)_once
关于使用include还是include_once(以下,都包含require_once), 这个讨论很长了, 结论也一直有, 就是尽量使用include, 而不是include_once, 最多的理由的是, include_once需要查询一遍已加载的文件列表, 确认是否存在, 然后再加载,此操作势必对效率有所影响.我们知道, PHP去判断一个文件是否被加载, 是需要得到这个文件的ope
2013-03-01 14:07:05
7154
转载 PHP检测并清除文件开头的BOM
网上看到的代码,收藏备份之,可以直接运行。<?php/*检测并清除BOM*/$basedir = dirname(__FILE__);//扫描当前文件路径 可自动设置$auto = 1;checkdir($basedir);function checkdir($basedir){ if($dh = opendir($basedir)){ while(($file = readd
2013-03-01 00:27:46
1615
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人