09 2012 档案

摘要:注意三件事:磁盘io,网络io,内存换页率可以为不同的进程分配不同的cpu注意吞吐量和延迟,吞吐量不稳定会影响延迟 阅读全文
posted @ 2012-09-23 10:55 安子 阅读(192) 评论(0) 推荐(0)
摘要:用多线程来写,假如你想测试100并发下的情况,你就写一个创建100个线程,然后让他们不停的跑,比如跑1天,或者几个小时,来观察现象,最后得出每秒的处理数, 阅读全文
posted @ 2012-09-14 07:42 安子 阅读(326) 评论(0) 推荐(0)
摘要:当你发现某个应用连接另外一个应用不太稳定的时候,需要先写一个测试程序,可以是连续循环n次,假如这样没发现问题,线上确实有问题,那就做并发测试,要充分考虑线上环境,比如php前端是不断打开关闭,打开关闭...而且可能是并发的。网络问题我遇到的有两种,一种是建立连接打开慢,一种是拿数慢,当然都是偶尔发生,测试的时候一定要能分清楚是打开慢,还是拿数据慢,这种问题排除程序性能和高并发导致的外,还有可能是系统内核版本问题,或者是交换机问题,这些都要考虑 阅读全文
posted @ 2012-09-14 07:36 安子 阅读(154) 评论(0) 推荐(0)
摘要:最近用c++实现了分布式并发拿用户动态的功能,效果还不错,由原来的1秒左右到现在的20毫秒左右具体需求是这样的:一个用户A关注了500个用户,a需要显示500个用户的及时动态并按时间排序,分页等,开始考虑后端异步推的模式就是为每个用户的粉丝生成动态,考虑到粉丝可能很多,明显这样做及时性差点,主要是会浪费机器资源,还不跟直接去拿,需要多少就拿多少,让多个机器同时去拿具体实现:首先分成两个进程,进程a负责拿到用户的关注者列表,并分拆成几分,利用多线程,信号量,发送给多个进程b,信号量是允许多个线程同时进入临界区的,这里是并发的概念然后进程b也是同样利用多线程,信号量来并发取数据,这里实现了一个线程 阅读全文
posted @ 2012-09-14 07:20 安子 阅读(372) 评论(0) 推荐(0)