随笔分类 -  实战

摘要:一、前言vmstat命令:用来获得有关进程、虚存、页面交换空间及CPU活动的信息。这些信息反映了系统的负载情况二、虚拟内存运行原理在系统中运行的每个进程都需要使用到内存,但不是每个进程都需要每时每刻使用系统分配的内存空间。当系统运行所需内存超过实际的物理内存,内核会释放某些进程所占用但未使用的部分或... 阅读全文
posted @ 2014-05-22 17:41 李占卫 阅读(56892) 评论(0) 推荐(1) 编辑
摘要:Linux下可以创建两种类型的交换空间,一种是swap分区,一种是swap文件。前者适合有空闲的分区可以使用,后者适合于没有空的硬盘分区,硬盘的空间都已经分配完毕。例如:安装redhat的时候,你可以默认划分硬盘空间,交换区的大小事系统默认配置,当你安装完系统后需要安装一个oracle数据库,突然发... 阅读全文
posted @ 2014-05-22 10:53 李占卫 阅读(14168) 评论(0) 推荐(0) 编辑
摘要:获取某用户的好友最新动态。我们大体上来说先按照用户ID将用户的好友一致性哈希到几个mongodb集群,然后把用户的最新信息也存储到mongodb中。然后利用消息系统保持数据库中的数据和mongdb中的数据一致。当用户获取这个列表的时候我们先获取好友然后批量获取好友的最新信息最后排序返回。目前该解决方案投入mongodb服务器9台,获取好友服务器7台共16台服务器,数据总量在3.6亿左右,每获取100个好友花费10ms。部署图活动图序列图 阅读全文
posted @ 2013-12-03 16:55 李占卫 阅读(588) 评论(0) 推荐(0) 编辑
摘要:已知child parenta ba cd bd cb eb fc gc hx gx hm xm no xo n则c 2+c+g 2+c+h 1+a+c 1+d+ch 1+c+h 1+x+hd 2+d+b 2+d+cb 1+a+b 1+d+b 2+b+e 2+b+fo 2+o+x 2+o+n e 1+b+em 2+m+x 2+m+nx 2+x+g 2+x+h 1+m+x 1+o+xa 2+a+c 2+a+b也即gc[0] = a gc[1]=dgp[0] = g gp[1] = h gc[0] = a gc[1]=dgp[0] = e gp[1] = f gc[0] = m g... 阅读全文
posted @ 2013-10-16 16:37 李占卫 阅读(334) 评论(0) 推荐(0) 编辑
摘要:MongoDB shell version: 2.0.5connecting to: test{ "host" : "TENCENT64.site", --server的hostname "version" : "2.0.5", --mongo版本 "process" : "mongod", --进程名 "uptime" : 1238418, --启动时间(单位:S) "uptimeEstimate" : 1230730, --基于Mo 阅读全文
posted @ 2013-07-26 11:17 李占卫 阅读(1318) 评论(0) 推荐(0) 编辑
摘要:应为原文:http://www.ilsistemista.net/index.php/linux-a-unix/6-linux-filesystems-benchmarked-ext3-vs-ext4-vs-xfs-vs-btrfs.html?start=1还有一篇相关介绍:http://www.phoronix.com/scan.php?page=article&item=ext4_benchmarks&num=2另一篇:http://tetralet.luna.com.tw/index.php?op=ViewArticle&articleId=214&blo 阅读全文
posted @ 2013-07-19 17:53 李占卫 阅读(111237) 评论(1) 推荐(4) 编辑
摘要:1大家都知道微博的难点在于明星会员问题,什么是明星会员问题了,就是刘德华来咱这开了微博,他有几百万的粉丝订阅者,他发一条微博信息,那得一下子把微博信息发布到几百万的粉丝里去,如果黎明、郭富城等四大天王都来咱来开微博,那咱小站不是死翘翘了.所以这时消息队列上场了。在我的架构里 有一个异步publish集群,publish的任务都去zeromq队列读取队列.zeromq是目前已知开源的消息传递最快的一个。具体关于zeromq可以自己google。zeromq有一个问题是不能持久化数据,这个自己做持久化存储.回过刚才那个话题, 把明星会员的粉丝按照"活跃度"进行分级。" 阅读全文
posted @ 2013-07-19 10:40 李占卫 阅读(340) 评论(0) 推荐(0) 编辑
摘要:原文地址:http://bbs.chinaunix.net/thread-3675396-1-1.html上一篇Redis资料汇总专题很受大家欢迎,这里将MongoDB的系列资料也进行了简单整理。希望能对大家有用。1.MongoDB是什么•MongoDB介绍PPT分享http://bbs.chinaunix.net/thread-3674201-1-4.html•MongoDB GridFS介绍PPT两则http://bbs.chinaunix.net/thread-3674202-1-4.html•初识 MongoDB GridFShttp://bbs.chinaunix.net/threa 阅读全文
posted @ 2013-07-19 10:31 李占卫 阅读(270) 评论(0) 推荐(0) 编辑
摘要:原文地址:http://bbs.chinaunix.net/thread-3672734-1-1.html很多朋友反映,说NoSQLFan上的资料不少,但是要找到自己实用的太难,于是萌生做这样一个专题的想法。通过将不同NoSQL产品从入门到精通的各种资料进行汇总,希望能够让大家更快的找到适合自己的教程或文章进行阅读。本篇为Redis部分的资料汇总。保持持续更新。1.Redis是什么?•十五分钟介绍 Redis数据结构http://bbs.chinaunix.net/thread-3672088-1-3.html•Redis系统性介绍http://blog.nosqlfan.com/html/3 阅读全文
posted @ 2013-07-19 10:30 李占卫 阅读(426) 评论(0) 推荐(0) 编辑
摘要:前段时间看到brendangregg的Linux Performance Analysis and ToolsPPT里面提到Linux常用性能调优工具, 见下图:其中提到了的工具,大部分在我日常工具箱里或者在实践的案例里面使用过, 都有很高的价值,这里方便大家索引下:nicstat: 参见这里oprofile: 参见这里perf: 参见这里systemtap: 参见这里iotop: 参见这里blktrace: 参见这里dstat: 参见这里strace: 参见这里pidstat: 参见这里vmstat: 参见这里slabtop: 参见这里tcpdump: 参见这里free: 参见这里mpsta 阅读全文
posted @ 2013-07-18 16:14 李占卫 阅读(183) 评论(0) 推荐(0) 编辑
摘要:服务器配置:64G内存,8核心,redhat1:value大小对性能的影响测试用例:200并发插入数据{100byte,3ms,39415res/sec :200并发,平均执行一次插入操作花费3毫秒时间,平均每秒执行39415次}2:并发对性能的影响测试用例:插入3000bytes数据{100tcp,2ms,37215res/sec表示100个并发tcp连接,执行插入3000bytes操作,平均每次执行耗时2毫秒,平均每秒执行37215次}3:集群对性能的影响测试A: 200并发写入3000bytes数据{单点,5ms,27815res/sec表示:200并发,插入3000bytes数据,单点 阅读全文
posted @ 2013-07-03 18:30 李占卫 阅读(13868) 评论(2) 推荐(2) 编辑
摘要:DataSet ds = new DataSet(); ds.ReadXml(dataFile); Console.WriteLine(data.Length); string dataxml = ds.GetXml(); DataSet ds1 = new DataSet(); using (System.IO.StringReader xmlSR ... 阅读全文
posted @ 2013-07-02 18:21 李占卫 阅读(307) 评论(0) 推荐(0) 编辑
摘要:1:C#Contact public class Contact { private int _Id; private string _Name; public int id { get { return _Id; } set { _Id = value; } } public string name { get { return _Name; } set { _Name = value; } ... 阅读全文
posted @ 2013-07-01 15:50 李占卫 阅读(3716) 评论(0) 推荐(0) 编辑
摘要:原文地址:https://blogs.oracle.com/opal/entry/converting_ref_cursor_to_pipeREF CURSORs are common in Oracle's stored procedural language PL/SQL. They let you pass around a pointer to a set of query results.However in PHP, PDO_OCI doesn't yet allow fetching from them. And fetching from REF CURSORS 阅读全文
posted @ 2013-06-27 11:02 李占卫 阅读(408) 评论(0) 推荐(0) 编辑
摘要:步骤:1:建立健康监测文件。文件内容随意,这里以healthcheck.aspx命名,内容是hellow word2:利用vbs语言执行IIS重启文件名称:AppPoolRecycle.vbs注意:自行修改进程池的名称这里是“DefaultAppPool”strComputer = "."Set objWMIService = GetObject _ ("winmgmts:{authenticationLevel=pktPrivacy}\\" _ & strComputer & "\root\microsoftiisv2&quo 阅读全文
posted @ 2013-06-26 13:37 李占卫 阅读(2195) 评论(0) 推荐(0) 编辑
摘要:1:前言实际上本文说的是跨进程的异构语言调用,举个简单的例子就是利用PHP写的代码去调C#或是java写的服务端。其实除了本文提供的办法还有其他办法,例如http+xml(json)等等都能做到。本文的意义是介绍thrift,记录我在调试thrift时遇到的问题和相应的解决方案,避免大家走弯路。2:大概的流程thrift是通过socket+序列化协议来完成跨语言调用的。类似的方案有protocolbuffer(http://code.google.com/p/protobuf/)这个性能出众,thrift性能我回头再做测试。使用的流程是A:定义自己的通信接口,接口可以使用的数据类型有strin 阅读全文
posted @ 2013-04-11 16:05 李占卫 阅读(3278) 评论(1) 推荐(2) 编辑
摘要:vi vim 显示乱码vi ~/.vimrcset termencoding=gbksource ~/.vimrcwindows下开启PDO的方法在php.ini中增加//extension=php_pdo.dll//extension=php_pdo_firebird.dll//extension=php_pdo_informix.dll//extension=php_pdo_mssql.dllextension=php_pdo_mysql.dll//extension=php_pdo_oci.dll//extension=php_pdo_oci8.dll//extension=php_pd 阅读全文
posted @ 2013-04-02 17:31 李占卫 阅读(561) 评论(0) 推荐(0) 编辑
摘要:1:安装ftpsudo apt-get install vsftpd默认的ftp路径在 /srv/ftp需要设置这个目录的权限:chmod -R 777 *2:修改配置/etc/vsftpd.conf1.配置# 设定系统本地用户账户登陆ftplocal_enable=YES# 使用用户的本地账户目录作为ftp目录chroot_local_user=YES# 允许用户上传文件write_enable=YES修改完成后保存并重启vsftpdsudo /etc/init.d/vsftpd restart三. 添加ftp使用用户sudo useradd -d /home/ftp_testuser -m 阅读全文
posted @ 2012-08-02 17:26 李占卫 阅读(2155) 评论(0) 推荐(0) 编辑
摘要:1:安装sambasudo apt-get install samba smbfs smbclient2:修改配置/etc/samba/smb.conf1.全局设置部分security = user 这行设置了samba的安全等级,Samba一共可以设置四个安全登记,由底到高分别为: share 这个选项表示任何人都可以不需要输入密码登录。 user 这个是Samba的默认级别,要求每个用户必须输入密码才能登录。 server user级别的密码都是保存在本机上,而server级别的密码和用户名都保存在另一台主机上。 d... 阅读全文
posted @ 2012-08-02 11:10 李占卫 阅读(1476) 评论(0) 推荐(0) 编辑
摘要:追加内容【用于apache2.4.7启用event】1:安装APR的时候要加上--enable-nonportable-atomics2:安装apache的时候要加上--with-included-apr3:如何设置各种配置ps -ef|grep http|wc -l 连接数【设置maxclients】ps aux | grep ‘httpd’ | awk ‘{print $6}’ 占用内存数【单位K】内核优化vim /etc/sysctl.confsysctl -pnet.ipv4.ip_forward = 0net.ipv4.conf.default.rp_filter = 1net.i. 阅读全文
posted @ 2012-07-31 15:58 李占卫 阅读(433) 评论(0) 推荐(0) 编辑