自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

climbs的专栏

勤于记录 三省吾身

  • 博客(77)
  • 收藏
  • 关注

原创 arp攻击

病毒的入侵,比生病了还让人难受,电脑中了毒你不能不管它,要是不管它你就没法使用电脑,没法使用电脑,哪还有什么心思来写程序···,所以,与病毒做斗争是持久战,而且势在必行··~~~·因此,懂点网络安全方面的知识也是很必要的 ~~~起码,可以保护下自己的爱机~也可以顺便学点东西·~~下面是arp攻击的原理,个人的理解有限,还望多多指教。了解ARP地址解析协议简单描述下什么是ARP,AR

2013-09-30 20:55:00 858

原创 vim基础

3.21一些补充*(#)  当光标停留在某个单词上时, 输入这条命令表示查找与该单词匹配的      下(上)一个单词. 同样, 再输入n 查找下一个匹配处, 输入N 反方向查找.f(F)x 本命令表示在光标所在行进行查找, 查找光标右(左)方第一个x字符.       找到后:             输入; 表示继续往下找             输入,

2013-09-30 15:23:38 1171

原创 vimdiff

源程序文件(通常是纯文本文件)比较和合并工具一直是软件开发过程中比较重要的组成部分。现在市场上很多功能很强大的专用比较和合并工具,比如 BeyondCompare;很多IDE 或者软件配置管理系统,比如Eclipse, Rational ClearCase都提供了内建的功能来支持文件的比较和合并。当远程工作在Unix/Linux平台上的时候,恐怕最简单而且到处存在的就是命令行工具,比如di

2013-09-30 14:10:15 845

原创 linux加压rar

Linux下解压rar的方法: wget  http://www.rarlab.com/rar/rarlinux-3.8.0.tar.gz tar zxvf rarlinux-3.3.0.tar.gzcd rarmake installunrar  x   file.rar

2013-09-30 01:23:33 933

原创 xargs使用技巧

xargs是给命令传递参数的一个过滤器,也是组合多个命令的一个工具。它把一个数据流分割为一些足够小的块,以方便过滤器和命令进行处理。通常情况下,xargs从管道或者stdin中读取数据,但是它也能够从文件的输出中读取数据。xargs的默认命令是echo,这意味着通过管道传递给xargs的输入将会包含换行和空白,不过通过xargs的处理,换行和空白将被空格取代。xargs 是一个强有力的命令

2013-09-29 23:38:02 1515

原创 什么是IP分片技术

链路层具有最大传输单元MTU这个特性,它限制了数据帧的最大长度,不同的网络类型都有一个上限值。以太网的MTU是1500,你可以用 netstat -i 命令查看这个值。如果IP层有数据包要传,而且数据包的长度超过了MTU,那么IP层就要对数据包进行分片(fragmentation)操作,使每一片的长度都小于或等于MTU。我们假设要传输一个UDP数据包,以太网的MTU为1500字节,一般IP首部为2

2013-09-29 21:40:28 1302

原创 tcp/ip协议listen函数中backlog参数的含义

要明白backlog参数的含义,我们必须明白对于一个listening socket,kernel维护者两个队列:1.一个未完成连接的队列,此队列维护着那些已收到了客户端SYN分节信息,等待完成三路握手的连接,socket的状态是SYN_RCVD2.一个已完成的连接的队列,此队列包含了那些已经完成三路握手的连接,socket的状态是ESTABLISHEDbacklog参数历史上被定

2013-09-29 18:20:23 865

原创 mysql安装错误

1. 执行./configure --prefix=/usr/local/mysql时,遇到error: No curses/termcap library found的问题。最后几行出了错。完整错误信息如下:checking for tgetent in -lncurses... nochecking for tgetent in -lcurses... no

2013-09-29 17:59:20 766

转载 Linux安装mysql——源码安装

1.假设已经有mysql-5.5.10.tar.gz以及cmake-2.8.4.tar.gz两个源文件(1)先安装cmake(mysql5.5以后是通过cmake来编译的)[root@ rhel5 local]#tar -zxv -f cmake-2.8.4.tar.gz[root@ rhel5 local]#cd cmake-2.8.4[root@ rhel5 cmake-2

2013-09-29 17:58:25 755

原创 mysql的三种安装方式:RPM 二进制包和源代码

一、使用RPM包进行安装    首先可以从安装光盘中或者到mysql的网站上下载对应版本的rpm包如下:MySQL-server-community-5.1.38-0.rhel5.i386.rpmMySQL-client-community-5.1.38-0.rhel5.i386.rpm    接着我们可以使用rpm命令进行安装:rpm -ivh MySQL-serve

2013-09-29 17:37:36 2245

原创 源码包和二进制包区别

二进制格式的包名字很长,都带有版本号、适应平台、适应的硬件类型等,而源码格式仅仅就是一个版本号的tar包。

2013-09-29 17:26:07 2162

原创 linux下C语言编程,include的默认搜索路径

C语言编程时,发现细节的魅力很大。较为详细了看了一下关于include的知识,发现了几点新知:1.include和include"头文件名"如:include和include"stdio.h"前者(使用后者(使用""),来引用stdio.h文件,是首先检索文件的当前路径;如果没有,再检索标准路径,看看这些文件夹下是否有该头文件。2.linux下,上述标准路径

2013-09-29 16:26:08 1442

原创 php安装常见错误

1.memcache support requires ZLIB解决办法checking for the location of zlib... configure: error: memcache support requires ZLIB. Use --with-zlib-dir= to specify prefix where ZLIB include and library a

2013-09-29 16:08:50 2274

原创 phpize和php-config安装模块

今天在配置一台nginx的web服务器时,参考张宴(blog.s135.com)大师的《Nginx 0.8.x + PHP 5.2.10(FastCGI)搭建胜过Apache十倍的Web服务器(第6版)》安装php(fastcgi模式)的时候,常常有这样一句命令:/usr/local/webserver/php/bin/phpize一、phpize是干嘛的?phpize是什么东西呢?p

2013-09-29 15:31:23 3281

转载 你见过ORDER BY -title DESC这种用法吗?

在查看网站SQL语句时,发现这样一样语句,ORDER BY -title DESC。第一反应是不是写错了,-title DESC不是应该和title ASC一样吗?检测了下,两者结果是不一样的。假定title有:旅游1线,20路,112路,113路title ASC,是 112路,113路,20路,旅游1线-title DESC,是 旅游1线,20路,112路,11

2013-09-29 14:42:26 1559

原创 mysql File权限

想给一个用户File权限,以便实现SELECT ... INTO OUTFILE,但是在操作中出错:root@localhost:mysql.sock[(none)] 15:27:30>GRANT FILE on hx.enjoy TO hx@localhost;ERROR 2006 (HY000): MySQL server has gone awayNo connectio

2013-09-29 14:24:32 4633

原创 PHP IP地址函数ip2long(),long2ip()

在百度中函数搜索"php ip2long"基本上可以出来3类文章。归纳如下:一、基本功能介绍1、ip2long()函数,将四个字段以点分开的IP网络址协议地址转换成整数.比如echo ip2long("10.2.1.3");?>我们将得到167903491这是如何计算的,目前我知道有两个算法。其一

2013-09-29 14:20:46 4206

原创 在mysql中存储ip地址

PHPecho ip2long('192.168.1.38');输出:3232235814MYSQLSELECT INET_ATON('192.168.1.38'); 输出:3232235814两个函数返回的结果是一样的,都是A*256*256*256+B*256*256+C*256+D的算法192*256*256*256+168*256*256+1*256+3

2013-09-29 13:52:09 1746

原创 mysql常见错误总结

1.Reading table information for completion of table and column namesYou can turn off this feature to get a quicker startup with -A上面卡住的原因::是由于数据库太大,即数据库中表非常多,所以如果预读数据库信息,将非常慢,所以就卡住了,如果数据库中表非常少

2013-09-29 13:24:37 734

原创 navicat for mysql导出和导入数据库

(1)导出:如上图:在数据库名loan2上右击---->转储SQL文件,然后选择下路径就ok了!(2)导入:先新建要导入的数据库,然后此上右击---->运行SQL文件,然后选择需要导入的数据库就ok了!

2013-09-29 10:44:26 1089

转载 MYSQL高可用方案探究(总结)

前言 http://blog.chinaunix.net/uid-20639775-id-3337432.htmlLvs+Keepalived+Mysql单点写入主主同步高可用方案 http://blog.chinaunix.net/uid-20639775-id-3337448.htmlLvs+Keepalived+Mysql单点写入读负载均衡主主同步高可用方案http://

2013-09-29 00:10:01 2103

转载 DRBD+Heartbeat

DRBD简介  Distributed Replicated Block Device(DRBD)是一个用软件实现的、无共享的、服务器之间镜像块设备内容的存储复制解决方案。      数据镜像:实时、透明、同步(所有服务器都成功后返回)、异步(本地服务器成功后返回)        DBRD的核心功能通过Linux的内核实现,最接近系统的IO栈,但它不能神奇地添加上层的功能比如检

2013-09-29 00:07:15 1081

原创 为进程指定cpu

coolshell最新的文章《性能调优攻略》在“多核CPU调优”章节,提到“我们不能任由操作系统负载均衡,因为我们自己更了解自己的程序,所以,我们可以手动地为其分配CPU核,而不会过多地占用CPU0,或是让我们关键进程和一堆别的进程挤在一起。”。在文章中提到了Linux下的一个工具,taskset,可以设定单个进程运行的CPU。同时,因为最近在看redis的相关资料,redis作为单进程模

2013-09-28 23:03:36 793

原创 linux下五种查找

使用电脑的时候,经常需要查找文件。在Linux中,有很多方法可以做到这一点。国外网站LinuxHaxor总结了五条命令,你可以看看自己知道几条。大多数程序员,可能经常使用其中的2到3条,对这5条命令都很熟悉的人应该是不多的。1. findfind是最常见和最强大的查找命令,你可以用它找到任何你想找的文件。find的使用格式如下:  $ find   - : 所要

2013-09-28 22:59:01 636

转载 进程与线程的一个简单解释

进程(process)和线程(thread)是操作系统的基本概念,但是它们比较抽象,不容易掌握。最近,我读到一篇材料,发现有一个很好的类比,可以把它们解释地清晰易懂。1.计算机的核心是CPU,它承担了所有的计算任务。它就像一座工厂,时刻在运行。2.假定工厂的电力有限,一次只能供给一个车间使用。也就是说,一个车间开工的时候,其他车间都必须停工。

2013-09-28 22:32:42 741

转载 查询系统负载信息

一、查看系统负荷如果你的电脑很慢,你或许想查看一下,它的工作量是否太大了。在Linux系统中,我们一般使用uptime命令查看(w命令和top命令也行)。(另外,它们在苹果公司的Mac电脑上也适用。)你在终端窗口键入uptime,系统会返回一行信息。这行信息的后半部分,显示"load average",它的意思是"系统的平均负荷",里面有三个数字,我们可以从

2013-09-28 22:27:55 922

原创 windows查看进程

Windows下查看进程及结束进程命令1)查看占用8080端口的进程号>netstat –aon | findstr “8080”结果:TCP    0.0.0.0:8080           0.0.0.0:0              LISTENING       3500可知,进程号为3500的进程占用了8080端口可以使用命令 tasklist | findstr 

2013-09-28 22:10:52 1377

原创 Sizeof与Strlen的区别与联系

一、sizeof    sizeof(...)是运算符,在头文件中typedef为unsigned int,其值在编译时即计算好了,参数可以是数组、指针、类型、对象、函数等。    它的功能是:获得保证能容纳实现所建立的最大对象的字节大小。    由于在编译时计算,因此sizeof不能用来返回动态分配的内存空间的大小。实际上,用sizeof来返回类型以及静态分配的对象、结构或数组所占的

2013-09-28 22:01:56 587

原创 puts和setbuf

void setbuf(FILE *steam, char *buf);        说明:setbuf函数具有打开和关闭缓冲机制。为了带缓冲进行I/O,参数buf必须指向一个长度为BUFSIZ(定义在stdio.h头文件中)的缓冲区。通常在此之后该流就是全缓冲的,但是如果该流与一个终端设备相关,那么某些系统也可以将其设置为行缓冲。为了关闭缓冲,可以将buf参数设置为NULL。put

2013-09-28 20:04:48 741

原创 c++变量作用域

C++中变量的作用域与生命周期对一个C++变量来说,有两个属性非常重要:作用域和生命周期,它们从两个不同的维度描述了一个变量--时间和空间。顾名思义,作用域就是一个变量可以被引用的范围,如:全局作用域、文件作用域、局部作用域;而生命周期就是这个变量可以被引用的时间段。不同生命周期的变量,在程序内存中的分布位置是不一样的。一个程序的内存分为代码区、全局数据区、堆区、栈区,不同的内存区域,对应

2013-09-26 20:04:13 845

原创 解析“extern”

解析“extern”1、 声明外部变量现代编译器一般采用按文件编译的方式,因此在编译时,各个文件中定义的全局变量是互相透明的,也就是说,在编译时,全局变量的可见域限制在文件内部。下面举一个简单的例子。创建一个工程,里面含有A.cpp和B.cpp两个简单的C++源文件://A.cppint i; void main(){}

2013-09-26 19:51:46 628

原创 C++中如何建立一个顺序表

准备数据[cpp] view plaincopy#define MAXLEN 100  //定义顺序表的最大长度  struct DATA  {      char key[10];   //结点的关键字       char name[20];      int age;  };  struct  SLType 

2013-09-26 19:29:28 1243

原创 C++条件编译

条件编译:一般情况下,源程序中所有的行都参加编译。但有时希望对其中一部分内容只在满足一定条件下才进行编译,即对一部分内容指定编译条件,这就是“条件编译”(conditional compile)。常用形式:条件编译命令常用的有以下形式:(1)        #ifdef 标识符            程序段1       #else

2013-09-26 18:11:07 806

原创 int (*p)[4]等同于int *p[4]吗?

答:不等同。int *p[4]是一个指针数组,就是数组里面放的是指针。由于[]比*优先级更高,因此p先与[4]结合,形成p[4]形式,这显然是数组形式,它有4个元素,然后再与p前面的*结合,*表示此数组是指针类型的,每个数组元素(也就是一个指针变量)都可以指向一个整形变量。*p[4]是指针数组,他是数组。数组里面放的是指针,简单的说定义了4个指针,分别是*p[0] *p[1]

2013-09-26 18:03:46 1628

转载 PHP依赖管理器:Composer 入门

composer是PHP中的一个依赖关系管理工具。只要(按指定格式)声明项目所依赖的库,composer就可以为我们安装这些库。依赖关系管理composer不是包管理器。不错,它处理“包”或库,但他的管理基于单个项目,它把库安装到项目中的一个目录中(例如:vendor)。缺省情况下,composer从不在全局范围安装任何东西。因此,composer是一个依赖关系管理器。这并

2013-09-25 20:30:42 867

原创 php线程安全

1.Non Thread Safe版本php适用在使用CGI以及fastCGI的web服务器上,如nginx,lighttpd以及IIS的CGI模式下2.Thread Safe版本php适用在使用ISAPI或者module的web服务器上,如IIS的ISAPI模式或者apache module模式

2013-09-25 19:14:59 935

转载 PHP源码加密,以前只知道zend guard,今天才知道,原来还有个 ioncube

今天在客户服务器上,安装产品的时候发现,客户的php源码是用ioncube加密的, 而我们使用的是zend guard,安装了zend optimizer后发现有冲突。。下面是网上看到的关于这两种加密工具的对比。 一、概述        PHP代码属于开源WEB代码,不需要编译,属于解释型语言。(即在WebServer中追加相应扩展名的解释程序即可完成对代码的分析处理)

2013-09-25 17:47:33 1388

原创 Xcache与memcache这两个php缓存

Xcache 和 memcached 是两个不同层面的缓存,不存在可比性。Xcache 是 php 底层的缓存,它将PHP程式编译成字节码(byte code),再透过服务器上安装对应的程式来执行PHP脚本。而 memcached 是应用层缓存,它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态、数据库驱动网站的速度。xcache 是不需要修改PHP程序的,只要安装了就可

2013-09-25 17:17:02 745

翻译 PHP编译器及其性能评估 - 中间码

PHP自从4.0以后成为了编译语言. 在此之前PHP都是被直接解释运行的.2000年, PHP4.0发布的时候,引入了Zend Engine.Zend引擎把PHP代码的执行切分成两个阶段:1. 解析PHP代码并生成二进制中间码Zend Opcodes, Zend Opcodes类似于java bytecodes2. Zend Engine解释运行Opcodes

2013-09-25 17:15:44 716

翻译 PHP编译器及其性能评估 - 中间码

PHP自从4.0以后成为了编译语言. 在此之前PHP都是被直接解释运行的.2000年, PHP4.0发布的时候,引入了Zend Engine.Zend引擎把PHP代码的执行切分成两个阶段:1. 解析PHP代码并生成二进制中间码Zend Opcodes, Zend Opcodes类似于java bytecodes2. Zend Engine解释运行Opcodes

2013-09-25 16:35:23 826

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除