海螺!~

吸引力法则

 

2013年5月10日

nginx采用epoll的事件模型,为何效率高

摘要: 前就知道在linux下nginx采用epoll事件模型,处理效率高。但是一直不知道具体为什么,今天查看了下文档,了解了原因。首先nginx支持一下这些事件模型(才考nginx的wiki)Nginx支持如下处理连接的方法(I/O复用方法),这些方法可以通过use指令指定。 select - 标准方法。 如果当前平台没有更有效的方法,它是编译时默认的方法。你可以使用配置参数 --with-select_module 和 --without-select_module 来启用或禁用这个模块。 poll - 标准方法。 如果当前平台没有更有效的方法,它是编译时默认的方法。你可以使用配置参数 --wit 阅读全文

posted @ 2013-05-10 11:23 海螺!~ 阅读(454) 评论(0) 推荐(0) 编辑

2013年5月7日

转 CMAKE使用指南

摘要: CMake是一个比make更高级的编译配置工具,它可以根据不同平台、不同的编译器,生成相应的Makefile或者vcproj项目。通过编写CMakeLists.txt,可以控制生成的Makefile,从而控制编译过程。CMake自动生成的Makefile不仅可以通过make命令构建项目生成目标文件,还支持安装(make install)、测试安装的程序是否能正确执行(make test,或者ctest)、生成当前平台的安装包(make package)、生成源码包(make package_source)、产生Dashboard显示数据并上传等高级功能,只要在CMakeLists.txt中简单 阅读全文

posted @ 2013-05-07 11:01 海螺!~ 阅读(271) 评论(0) 推荐(0) 编辑

2013年1月26日

概念了解:CGI,FastCGI,PHP-CGI与PHP-FPM

摘要: CGICGI全称是“公共网关接口”(Common Gateway Interface),HTTP服务器与你的或其它机器上的程序进行“交谈”的一种工具,其程序须运行在网络服务器上。CGI可以用任何一种语言编写,只要这种语言具有标准输入、输出和环境变量。如php,perl,tcl等。FastCGIFastCGI像是一个常驻(long-live)型的CGI,它可以一直执行着,只要激活后,不会每次都要花费时间去fork一次(这是CGI最 为人诟病的fork-and-execute 模式)。它还支持分布式的运算,即 FastCGI 程序可以在网站服务器以外的主机上执行并且接受来自其它网站服务器来的请求。 阅读全文

posted @ 2013-01-26 12:14 海螺!~ 阅读(150) 评论(0) 推荐(0) 编辑

2013年1月25日

列举一些常见的系统系能瓶颈

摘要: 数据库工作中数据大小超过可用内存 RAM长短查询混合写-写 冲突大的联合查询占光内存虚拟化共享 HDD 存储,磁盘寻道挂起云平台中的网络 I/O 波动编程线程:死锁、相对于事件驱动来说过于重量级、调试、线程数与性能比非线性事件驱动编程:回调的复杂性、函数调用中如何保存状态(how-to-store-state-in-function-calls)缺少profile工具、缺少trace工具、缺少日志工具单点故障、横向不可扩展有状态的应用搓设计:一台机器上能跑,几个用户也能跑,几个月后,几年后,尼玛,发现扛不住了,整个架构需要重写。算法复杂度依赖于诸如DNS查找等比较搞人的外部组件栈空间磁盘本地磁 阅读全文

posted @ 2013-01-25 11:34 海螺!~ 阅读(176) 评论(0) 推荐(0) 编辑

2013年1月23日

一道shell命令笔试题

摘要: 有一个日志文件access.log ,日志文件的格式:127.0.0.1 - - [11/Jan/2013:15:26:19 +0800] "GET / HTTP/1.1" 403 202用shell命令,计算出文件中每个ip访问的记录数 : cat access.log | awk -F " " '{print $1}' | sort -rn | uniq -c一、Sort命令sort [OPTION]… [FILE]…对文件按指定的域进行排序常用选项:-c: 检测文件是否已经排序-m: 将两个已经排序的文件进行合并-u: 在排序过程中 阅读全文

posted @ 2013-01-23 11:54 海螺!~ 阅读(215) 评论(0) 推荐(0) 编辑

Nginx rewrite基本语法

摘要: 1 Nginx rewrite基本语法Nginx的rewrite语法其实很简单.用到的指令无非是这几个setifreturnbreakrewrite麻雀虽小,可御可萝五脏俱全.只是简单的几个指令却可以做出绝对不输apache的简单灵活的配置.1.setset主要是用来设置变量用的,没什么特别的2.ifif主要用来判断一些在rewrite语句中无法直接匹配的条件,比如检测文件存在与否,http header,cookie等,用法: if(条件) {…}- 当if表达式中的条件为true,则执行if块中的语句- 当表达式只是一个变量时,如果值为空或者任何以0开头的字符串都会当作false- 直接比 阅读全文

posted @ 2013-01-23 11:45 海螺!~ 阅读(910) 评论(0) 推荐(0) 编辑

2013年1月22日

深入理解HTTP协议(转)

摘要: http协议学习系列1.基础概念篇1.1 介绍 HTTP是Hyper Text Transfer Protocol(超文本传输协议)的缩写。它的发展是万维网协会(World Wide Web Consortium)和Internet工作小组IETF(Internet Engineering Task Force)合作的结果,(他们)最终发布了一系列的RFC,RFC 1945定义了HTTP/1.0版本。其中最著名的就是RFC 2616。RFC 2616定义了今天普遍使用的一个版本——HTTP 1.1。HTTP协议(HyperText Transfer Protocol,超文本传输协议)是用于从W 阅读全文

posted @ 2013-01-22 15:22 海螺!~ 阅读(154) 评论(0) 推荐(0) 编辑

2013年1月21日

转:LINUX有用命令

摘要: 一些强大的命令 再分享一些可能你不知道的 shell 用法和脚本,简单&强大! 在阅读以下部分前,强烈建议读者打开一个 shell 实验,这些都不是 shell 教科书里的大路货哦:)!$!$是一个特殊的环境变量,它代表了上一个命令的最后一个字符串。如:你可能会这样:$mkdir mydir$mv mydir yourdir$cd yourdir可以改成:$mkdir mydir$mv !$ yourdir$cd !$sudo !!以 root 的身份执行上一条命令 。场景举例:比如 Ubuntu 里用apt-get安装软件包的时候是需要 root 身份的,我们经常会忘记在apt-ge 阅读全文

posted @ 2013-01-21 17:57 海螺!~ 阅读(180) 评论(0) 推荐(0) 编辑

2013年1月8日

InnoDB的行锁模式及加锁方法

摘要: InnoDB实现了以下两种类型的行锁。l 共享锁(S):允许一个事务去读一行,阻止其他事务获得相同数据集的排他锁。l 排他锁(X):允许获得排他锁的事务更新数据,阻止其他事务取得相同数据集的共享读锁和排他写锁。另外,为了允许行锁和表锁共存,实现多粒度锁机制,InnoDB还有两种内部使用的意向锁(Intention Locks),这两种意向锁都是表锁。l 意向共享锁(IS):事务打算给数据行加行共享锁,事务在给一个数据行加共享锁前必须先取得该表的IS锁。l 意向排他锁(IX):事务打算给数据行加行排他锁,事务在给一个数据行加排他锁前必须先取得该表的IX锁。上述锁模式的兼容情况具体如表20-6所示 阅读全文

posted @ 2013-01-08 10:44 海螺!~ 阅读(615) 评论(0) 推荐(0) 编辑

2012年12月6日

算法可视化

摘要: http://www.cs.usfca.edu/~galles/visualization/ComparisonSort.htmlhttp://jsrun.it/norahiko/oxIy 阅读全文

posted @ 2012-12-06 17:09 海螺!~ 阅读(225) 评论(0) 推荐(0) 编辑

导航