10 2013 档案
Redis配置文件说明
摘要:Redis介绍Reids是一个比较高级的开源key-value存储系统,采用ANSI C实现。其与memcached类似,但是支持持久化数据存储,同时value支持多种类型:字符串(同memcached中的value),列表,集合(Set),有序集合(OrderSet)和Hash。 所有的值类型均支持原子操作,如列表中追加弹出元素,集合中插入移除元素等。Rdids的数据大部分位于内存中,其读写效率非常高,其提供AOF(追加 式操作记录文件)和DUMP(定期数据备份)两种持久化方式。Redis支持自定义的VM(虚拟内存)机制,当数据容量超过内存时,可以将部分Value 存储到文件中。同时Redi
阅读全文
Linux下ffmpeg的完整安装
摘要:最近在做一个企业项目, 期间需要将用户上传的视频转成flv格式或mp4格式并用flash插件在前端播放, 我决定采用ffmpeg (http://www.ffmpeg.org/ )实现. 当然以前也用过ffmpeg, 但是没有安装额外的库, 只是源代码下简单地 ./configure, 最后发现好多功能都用不了, 比如最流行的x264编码器. 所以决心完整地安装一下ffmpeg, 经过两天痛苦地折腾, 终于成功了, 现在将过程记录下来. 主要参考了 [1] 和 [2] 两篇博文, 其中 [1] 是2007年写成的, 其中所提到的依赖库版本比较老, 本人安装的都是相应最新的版本.首先要安装各种解
阅读全文
C++ error: passing 'const std::map<>]' discards qualifiers或pass-by-reference-to-const-map导致的“discards qualifiers”
摘要:产生问题的场景:int func(const map &aMap) { string value = amap[0]; }或者int Test::func()const{ string value = amap[0]; //amap是Test类的成员函数.是就会产生传说中的null引用。}用g++编译上面的代码,会报……discards qualifiers。 这里是原因。 简单来说,map的[]运算符会在索引项不存在的时候自动创建一个对象,有可能会改变map本身,所以不能够用在一个const map上。解决办法有两个: 方法1、不要将形参声明为const方法2、用find...
阅读全文
Nginx 配置文件详解
摘要:Nginx配置文件详解user nginx ;#用户worker_processes 8;#工作进程,根据硬件调整,大于等于cpu核数error_log logs/nginx_error.log crit;#错误日志pid logs/nginx.pid;#pid放置的位置worker_rlimit_nofile 204800;#指定进程可以打开的最大描述符这个指令是指当一个nginx进程打开的最多文件描述符数目,理论值应该是最多打开文件数(ulimit -n)与nginx进程数相除,但是nginx分配请求并不是那么均匀,所以最好与ulimit -n的值保持一致。现在在linux 2.6内核下开
阅读全文
Makefile选项CFLAGS,LDFLAGS,LIBS
摘要:CFLAGS 表示用于 C 编译器的选项,CXXFLAGS 表示用于 C++ 编译器的选项。这两个变量实际上涵盖了编译和汇编两个步骤。CFLAGS: 指定头文件(.h文件)的路径,如:CFLAGS=-I/usr/include -I/path/include。同样地,安装一个包时会在安装路径下建立一个include目录,当安装过程中出现问题时,试着把以前安装的包的include目录加入到该变量中来。LDFLAGS:gcc 等编译器会用到的一些优化参数,也可以在里面指定库文件的位置。用法:LDFLAGS=-L/usr/lib -L/path/to/your/lib。每安装一个包都几乎一定的会在安
阅读全文