- 博客(59)
- 收藏
- 关注
原创 linxu 端口转发
设置规则:1.现在138->135->1672.135是转发主机,端口62959iptables -t nat -A PREROUTING --dst 192.168.3.135 -p tcp --dport 62959 -j DNAT --to-destination 192.168.3.167:7988 iptables -t nat -A POSTROUTIN
2015-11-19 14:20:26
395
原创 Linux通过iptables实现转发
现在准备了3台局域网的机子。A:192.168.3.138B:192.168.3.135C:192.168.3.167B机子作为中转机子。现在B机子上设置路由iptables.第一步:修改vim /etc/sysctl.conf把net.ipv4.ip_forward改为1第二步:定义iptables规则:iptables -t nat -A PREROUT
2015-11-06 16:51:45
642
原创 PHP长连接实现
每次我们访问PHP脚本的时候,都是当所有的PHP脚本执行完成后,我们才得到返回结果。如果我们需要一个脚本持续的运行,那么我们就要通过php长连接的方式,来达到运行目的。每个PHP脚本都限制了执行时间,所以我们需要通过 set_time_limit 来设置一个脚本的执行时间为无限长;然后使用 flush() 和 ob_flush() 来清除服务器缓冲区,随时输出脚本的返回值。如下面这段脚本:
2015-10-20 11:17:03
965
转载 浅谈PHP中IP与整型互相转换
IP转换成整型存储是数据库优化一大趋势,不少人目前存储IP时还在使用字符串类型存储,字符串索引比整型索引消耗资源很多,特别是表中数据量大的时候,以及求查询某一个ip段的数据,今天说的ip是指ip4,ip6不在本文范围内。系统函数ip2long与long2ipPHP中有内置函数ip2long可以将ip地址转换整型。12$ip
2015-10-20 11:10:12
389
转载 Redis 3.0中文官方文档翻译计划(5) ——从入门到精通(下)
Redis 3.0中文官方文档翻译计划(5) ——从入门到精通(下) Redis有序集合(Sorted sets) 有序集合类似于集合和哈希的混合体的一种数据类型。像集合一样,有序集合由唯一的,不重复的字符串元素组成,在某种意义上,有序集合也就是集合。 集合中的每个元素是无序的,但有序集合中的每个元素都关联了一个浮点值,称为分数(score,这就是为什
2015-10-15 20:17:34
427
转载 Redis 3.0中文官方文档翻译计划(4)
Redis 3.0中文官方文档翻译计划(4) ——从入门到精通(中) Redis列表(Lists) 为了解释列表类型,最好先开始来点理论,因为列表这个术语在信息技术领域常常使用不当。例如,”Python Lists”,并不是字面意思(链表),实际是表示数组 (和Ruby中的Array是同一种类型)。 通常列表表示有序元素的序列:10,20,1,2,3是
2015-10-15 19:55:02
228
转载 Redis 3.0中文官方文档翻译计划(3)
Redis 3.0中文官方文档翻译计划(3) ——从入门到精通(上) Redis不是一个无格式(plain)的键值存储,而是一个支持各种不同类型值的数据结构服务器。这就是说,传统键值存储是关联字符串值到字符串键,但是Redis的值不仅仅局限于简单字符串,还可以持有更复杂的数据结构。下面列的是Redis支持的所有数据结构,后面将逐一介绍: 二进制安全(binary-sa
2015-10-15 19:37:00
326
转载 Redis 3.0中文官方文档翻译计划(2)
Redis 3.0中文官方文档翻译计划(2) ——数据类型初探 字符串(Strings) 字符串是Redis最基本的数据类型。Redis字符串是二进制安全的,也就是说,一个Redis字符串可以包含任意类型的数据,例如一张JPEG图像,或者一个序列化的Ruby对象。 一个字符串最大为512M字节。 你可以使用Redis的字符串类型做很多有意思
2015-10-15 19:16:07
364
转载 Redis 3.0中文官方文档翻译计划(1)
Redis 3.0中文官方文档翻译计划(1) ——Redis介绍 Redis是一款开源的,基于BSD许可的,高级键值(key-value)缓存(cache)和存储(store)系统。由于Redis的键包括string,hash,list,set,sorted set,bitmap和hyperloglog,所以常常被称为数据结构服务器。你可以在这些类型上面运行原子操作,例如,追
2015-10-15 19:05:25
547
转载 为什么Nginx的性能要比Apache高得多?
这主要是因为Nginx使用了最新的epoll(Linux 2.6内核)和kqueue(FreeBSD)网络I/O模型,而Apache则使用的是传统的select模型。曾在一篇博客上看到有这么个实例:假设你在大学中读书,要等待一个朋友来访,而这个朋友只知道你在A号楼,但是不知道你具体住在哪里,于是你们约好了在A号楼门口见面.如果你使用的阻塞IO 模型来处理这个问题,那么你就只能一直守候A号楼门口
2015-10-12 16:19:12
350
原创 PHP_EOL
今天看到一个PHP_EOL代码,查下了,大概知道是什么内容。今天有学会一招。<?php echo PHP_EOL; //windows平台相当于 echo "\r\n"; //unix\linux平台相当于 echo "\n"; //mac平台相当于 echo "\r";以前经常在window和linux下切换,用一个简单变量就可以实
2015-10-06 21:51:28
251
转载 linux使用flock文件锁解决脚本重复执行问题
linux的crontab命令,可以定时执行操作,最小周期是每分钟执行一次。关于crontab实现每秒执行可参考我之前的文章《linux crontab 实现每秒执行》现在有个问题,如果设定了任务每分钟执行一次,但有可能一分钟内任务并没有执行完成,这时系统会再执行任务。导致两个相同的任务在执行。例如:1234567// test.phpfor($i=0; $i300; $i
2015-09-29 14:37:39
641
原创 处理【Fatal error: Can't use function return value in write context 】的情况之《empty的解析》
【错误详情】:Fatal error: Can't use function return value in write context in ……【错误经过】: 来看这么一段程乍一看上去很简单,没什么问题,可经过异常排查后确定就是这一小段程序出现了上面的Fatal error~,于是首先怀疑自定义方法echoError的实现存在什么问题,可经过排查后
2015-09-28 15:33:15
324
转载 Bash脚本实现批量作业并行化
在Linux下运行作业时, 经常会遇到以下情形: 有大量作业需要运行, 完成每个作业所需要的时间也不是很长. 如果我们以串行方式来运行这些作业, 可能要耗费较长的时间; 若采用并行方式运行则可以大大节约运行时间. 再者, 目前的计算机绝大部分都是多核架构, 要想充分发挥它们的计算能力也需要并行化. 总结网上看到的资料, 利用Bash脚本,可以采用下面几种方法实现批量作业的并行化. 注意, 下面论述
2015-09-21 20:09:29
2485
转载 为啥REST如此重要?
本文我们将讨论REST,它定义了一组体系架构原则,您可以根据这些原则设计以系统资源为中心的Web服务,这是一个非常容易让人误解的概念。本文主要是写给那些想设计WebService API但却对REST没有十分清晰认识的开发者们。在本文最后会附上一些资源供大家学习,这些资源讲解非常详细。什么是REST?表征状态转移(Representional State Transfer),是Ro
2015-09-04 18:58:18
243
原创 编译php5.6.1出错set --enable-opcache=no
编译个php7出现的问题,找了好久,折腾了好久。。。。记录下编辑/etc/ld.so.conf根据系统,加入文件/etc/ld.so.conf,然后执行ldconfig,使其重新加载一次;有时候,如果自己的libmcrytp(加密算法扩展库)是手动编译的话,只把这个/usr/local/libmcrytp/lib/加入到/etc/ld.so.conf,然后执行ldcon
2015-09-03 22:06:58
449
转载 is not in the sudoers file 解决(转)
解决方案:首需要切换到root身份$su -(注意有- ,这和su是不同的,在用命令"su"的时候只是切换到root,但没有把root的环境变量传过去,还是当前用户的环境变量,用"su -"命令将环境变量也一起带过去,就象和root登录一样)然后$visudo //切记,此处没有vi和sudo之间没有空格1、移动光标,到最后一行2、按a,进入append
2015-09-03 10:53:44
275
转载 error : sudo /etc/sudoer is world writable
在ubuntu下,当执行#sudo su出现以下错误:sudo :/etc/sudoers is world writablesudo : no valid sudoers source found, quittingsudo : unable to initialize poling plugin出错原因:在/etc/目录下的sudoers的权限具
2015-09-03 10:53:04
532
转载 scrot 从入门到精通
无论是撰写技术教程,还是展示桌面或应用,恐怕 scrot 都是必不可少的工具。scrot 是屏幕抓图工具中的~~皎皎~~佼佼者,它小巧而不失为强大,精练而不缺少灵活。scrot 主要用在命令行下,它使用 imlib2 库来抓取并保存图像。在 Ubuntu 中,可以使用sudo apt-get install scrot 指令来安装 scrot。scrot 的使用格式为:scrot [o
2015-08-29 07:55:45
440
原创 Linux实现报警自动发邮件
1、首先需要安装sendmailyum install -y sendmail2、需要开启sendmail的服务service sendmail start3、简单的一个命令就可以实现邮件的发送mail -s 'test' 323XX97148@qq.com
2015-07-31 09:41:35
581
原创 CSS背景图拉伸自适应尺寸,全浏览器兼容
.bg{background:url(bg.jpg);filter:"progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod='scale')";-moz-background-size:100%100%; background-size:100%100%;}
2015-07-23 16:57:39
323
转载 Linux磁盘管理:LVM逻辑卷的拉伸及缩减
在上一篇随笔里面 Linux学习之CentOS(二十六)--Linux磁盘管理:LVM逻辑卷的创建及使用 详细讲解了LVM逻辑卷的创建及使用,我们知道创建逻辑卷的步骤是先格式化物理硬盘位PV,然后创建一个VG,再将多个PV加入到VG中,最后基于VG创建我们的LV。在这篇随笔里,我们将继续学习LVM逻辑卷的知识,包括逻辑卷的拉伸及缩减...一、拉伸一个逻辑卷我们知道相比于传统磁盘管理
2015-07-19 22:16:45
358
转载 Linux磁盘管理:LVM逻辑卷的创建及使用(二)
在上一篇随笔里面 Linux学习之CentOS(二十五)--Linux磁盘管理:LVM逻辑卷基本概念及LVM的工作原理,详细的讲解了Linux的动态磁盘管理LVM逻辑卷的基本概念以及LVM的工作原理,包括LVM中最重要的四个基本点(PE、PV、VG以及LV),这篇随笔将会详细的讲解LVM逻辑卷的创建、使用以及删除.一、创建LVM逻辑卷 我们通过图文并茂的方式来看看如
2015-07-19 22:15:42
762
转载 Linux磁盘管理:LVM逻辑卷基本概念及LVM的工作原理(一)
这篇随笔将详细讲解Linux磁盘管理机制中的LVM逻辑卷的基本概念以及LVM的工作原理!!!一、传统的磁盘管理其实在Linux操作系统中,我们的磁盘管理机制和windows上的差不多,绝大多数都是使用MBR(Master Boot Recorder)都是通过先对一个硬盘进行分区,然后再将该分区进行文件系统的格式化,在Linux系统中如果要使用该分区就将其挂载上去即可,windows
2015-07-19 22:14:28
497
原创 编译安装PHP的插件
这里以Redis为例。1、首先到pecl.php.net下载你所要编译的插件。2、解压你刚才下载的插件。3、在刚才你解压的目录下,执行phpize命令,编译成你当前PHP版本的插件。configure --with-php-config=php-config4、make && make install5、在php.ini加上就可以
2015-07-12 22:34:50
513
转载 Ubuntu12.04通过xinput禁用及启用联想笔记本的触摸板
因为我的lenovo联想笔记本的触摸板没有一个专用的硬件开关去控制触摸板的使用,每次都要使用Fn+F8来禁用触摸板,每次使用机器都会自己又启用触摸板了,而且触摸板也确实敏感,还是禁用了好,有需要的时候在打开。发现通过xinput可以来启用和禁用输入设备,以此来达到我需要的功能。查看设备列表通过xinput先查看一些都有哪些设备xinput #或者 xinput list
2015-07-11 20:59:04
664
转载 BDA 谈互联网 MySQL 开发规范
写在前面:无规矩不成方圆。对于刚加入互联网的朋友们,肯定会接触到MySQL,MySQL作为互联网最流行的关系型数据库产品,它有它擅长的地方,也有它不足的短板,针对它的特性,结合互联网大多应用的特点,笔者根据自己多年互联网公司的MySQL DBA经验,现总结出互联网MySQL的一些开发规范,仅供参考。基础规范 (1) 使用INNODB存储引擎(2) 表字符集使用UTF8(3) 所
2015-07-10 16:50:31
576
原创 xampp的mysql --》Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock'解决
mysql用的套接字文件是:/opt/lampp/var/mysql/mysql.sock于是建立了个软连接, 命令如下。不能建立硬链接,不知道为什么。ln -s /opt/lampp/var/mysql/mysql.sock /var/run/mysqld/mysqld.sock 现在可以用mysql -uroot命令登陆上了~
2015-07-05 10:29:09
450
原创 mysql 中 unix_timestamp和from_unixtime 时间戳函数
1.unix_timestamp将时间转化为时间戳。(date 类型数据转换成 timestamp 形式整数)没传时间参数则取当前时间的时间戳mysql> select unix_timestamp();+------------------+| unix_timestamp() |+------------------+| 1361586358 |+-
2015-06-30 11:18:50
243
转载 MYSQL定位慢查询
在web开发中,我们经常会写出一些SQL语句,一条糟糕的SQL语句可能让你的整个程序都非常慢,超过10秒一般用户就会选择关闭网页,如何优化SQL语句将那些运行时间比较长的SQL语句找出呢?MySQL给我们提供了一个很好的功能,那就是慢查询!所谓的慢查询就是通过设置来记录超过一定时间的SQL语句!那么如何应用慢查询呢?开启MySQL的慢查询日志功能默认情况下,MySQL是不会记录超过一定执行
2015-06-18 16:41:44
2610
转载 Redis系统性介绍
虽然Redis已经很火了,相信还是有很多同学对Redis只是有所听闻或者了解并不全面,下面是一个比较系统的Redis介绍,对Redis的特性及各种数据类型及操作进行了介绍。是一个很不错的Redis入门教程。1.介绍1.1 Redis是什么REmote DIctionary Server(Redis) 是一个由Salvatore Sanfilippo写的key-value存储
2015-06-17 19:51:27
237
转载 十五分钟介绍 Redis数据结构
下面是一个对Redis官方文档《A fifteen minute introduction to Redis data types》一文的翻译,如其题目所言,此文目的在于让一个初学者能通过15分钟的简单学习对Redis的数据结构有一个了解。Redis是一种面向“键/值”对类型数据的分布式NoSQL数据库系统,特点是高性能,持久存储,适应高并发的应用场景。它起步较晚,发展迅速,目前已
2015-06-17 19:38:01
173
转载 php分页原理
1、首先了解SQL语句中的limit用法SELECT * FROM table …… limit 开始位置 , 操作条数 (其中开始位置是从0开始的)例子:取前20条记录:SELECT * FROM table …… limit 0 , 20从第11条开始取20条记录:SELECT * FROM table …… limit 10 , 20L
2015-06-17 17:26:04
262
转载 通俗易懂的 “数据库范式(1NF 2NF 3NF BCNF)详解”
数据库的设计范式是数据库设计所需要满足的规范,满足这些规范的数据库是简洁的、结构明晰的,同时,不会发生插入(insert)、删除(delete)和更新(update)操作异常。反之则是乱七八糟,不仅给数据库的编程人员制造麻烦,而且面目可憎,可能存储了大量不需要的冗余信息。 范式说明 1.1 第一范式(1NF)无重复的列 所谓第一范式(1NF)是指数据库表的每一列都是不可
2015-06-16 17:19:06
697
转载 数据库设计范式的理解
前言为什么要写这篇文章呢,从去年年底开始,就和很多做技术的朋友交流过,从数据库设计到数据库架构各个方面的内容。有一些朋友执着于ORM,执着于所谓的数据库设计,却忘记了一切技术是要为业务服务这个基石。当然这文章里也有一些自己的理解,想向大家表达。范式是什么范式是符合某一种级别的关系模式的集合。关系数据库中的关系必须满足一定的要求,即满足不同的范式。目前关系数据库有六种范式:第一范式(
2015-06-16 16:32:17
249
原创 Mysql数据库的优化技术方面
1、 表的设计合理化(符合3NF)2、添加适当索引(index) [四种: 普通索引、主键索引、唯一索引unique、全文索引]3、分表技术(水平分割、垂直分割)4、读写[写: update/delete/add]分离5、存储过程 [模块化编程,可以提高速度]6、对mysql配置优化 [配置最大并发数my.ini, 调整缓存大小 ]7、mysql服务器硬件升级8、定时的
2015-06-16 11:33:44
227
转载 PHP数据库长连接mysql_pconnect的细节
PHP的MySQL持久化连接,美好的目标,却拥有糟糕的口碑,往往令人敬而远之。这到底是为啥么。近距离观察后发现,这家伙也不容易啊,要看Apache的脸色,还得听MySQL指挥。对于作为Apache模块运行的PHP来说,要实现MySQL持久化连接,首先得取决于Apache这个web服务器是否支持Keep-Alive。Keep-AliveKeep-Alive是什么东西?它是ht
2015-06-16 10:00:48
663
转载 MySQL出了门,Percona在左,MariaDB在右
在MySQL被Oracle收购以后,越来越多的人对于MySQL的前景表示了担忧,对于开源的MySQL,或多或少对于Oracle自家的数据库产品产生冲击,这个开源免费的MySQL 对于Oracle更多的是包袱而不是资产。比如淘宝就从Oracle转成了MySQL,一些大型互联网公司也在推行去IOE(I:IBM,O:Oracle,E:EMC),甲骨文公司收购了MySQL后,有将MySQL闭源的潜在风险,
2015-06-16 09:37:52
302
转载 PHP Warning: phpinfo(): It is not safe to rely on the system's timezone settings
[Sat Oct 12 09:14:53 2010] [error] [client 192.168.1.162] PHP Warning: phpinfo(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or th
2015-06-16 07:56:54
332
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人