ciaos

ciaos 查看完整档案

填写现居城市  |  填写毕业院校  |  填写所在公司/组织填写个人主网站
编辑

时间是把杀刀猪

个人动态

ciaos 收藏了问题 · 2013-01-23

PHP页面有一个浏览量统计每秒有200并发,造成insert给mysql造成很大压力

lnmp环境,其他页面内容都做了缓存了,没有多大的负载,就是这个浏览量统计功能,给mysql带来不小的压力,请问诸位有什么解决办法吗?

ciaos 赞了回答 · 2013-01-23

解决PHP页面有一个浏览量统计每秒有200并发,造成insert给mysql造成很大压力

怎么都说不要用MySQL来做,每秒200并发对MySQL来说不算啥难事啊。而且换成Redis、Memcached,持久化姑且不说,业务代码和运维部署量都不小。

我给你几个建议,尽量让你的运维部署和业务代码改动小一些。

你可以做主从分离,不要在一个库上高并发插入同时还做大量统计运算。分离之后,查询在从库是做(甚至是导入Hive之类专门的分布式系统来做),主库上可以去掉索引,提升插入的性能。这个方法,业务代码几乎不用任何改动(改个数据库配置文件就好了)。MySQL运维部署也可以选个业务低谷在线做。

如果你可以接受少量业务代码(PHP)改动,还有两个建议:
1. 分库,分表,每个表的数据总量小了,操作起来性能会好一些,特别是对从库的MyISAM表。你插入之前可能会有一些查询,例如查询这个IP在不在库里,以前统计过没。
2. 使用HandlerSocket插件,绕过SQL Parser,直接操作存储文件。如果业务上有可能,还可以使用bulk insert(批量插入)。MySQL InnoDB还推出了类似HandlerSocket的InnoDB NoSQL Plugin,用的memcached协议,共享InnoDB Buffer,再也不用操心MySQL和Memcached之前怎么维护数据一致性了。

关注 8 回答 16

ciaos 接受了回答 · 2013-01-04

请问有什么好用的流程图绘制软件么

windows下用visio;
linux下用dia.

ciaos 提出了问题 · 2013-01-02

解决请问有什么好用的流程图绘制软件么

如题,不太会画流程图(不需要uml之类的太复杂),一直在菜菜地用word画,太不专业了,嘿嘿

关注 0 回答 3

ciaos 回答了问题 · 2013-01-02

有没有办法在打开浏览器之后,服务器一直发送信息过来.

websocket顾名思义就是web版本的socket,可以参照socket.io官网的例子,很简单明了的
http://socket.io

关注 0 回答 5

ciaos 接受了回答 · 2013-01-02

如何用redis做消息队列的应用

redis只是提供一个高性能的、原子操作的分布式队列实现。具体的业务还是得需要你自己定制。
你的需求实际上是一个变形的生产者-消费者实现。对于此类需求,主要是将请求和实际的处理过程解耦,一般都是采取异步的方式来通知请求方,这跟用不用redis其实没有多大的关系。一般的实现方法是你需要将用户的请求封装成一个Task,然后将这个Task再push到redis队列,然后后端的worker.php完全可以多进程、多线程的并发处理Task并将处理结果回调给请求方。这里唯一麻烦点的就是这个Task的设计,需要能够包含请求信息(请求内容,请求方标识等等).

ciaos 评论了回答 · 2013-01-02

如何用redis做消息队列的应用

ciaos 评论了回答 · 2012-12-26

系统管理员要熟知道哪些技能

ciaos 回答了问题 · 2012-12-26

系统管理员要熟知道哪些技能

查看内存是否够用,CPU负载是否太高,磁盘有无坏盘,网络IO是否出现问题等
可以装个glances简单地看看screenshot.png

关注 1 回答 4

ciaos 赞了回答 · 2012-12-25

解决如何用redis做消息队列的应用

redis只是提供一个高性能的、原子操作的分布式队列实现。具体的业务还是得需要你自己定制。
你的需求实际上是一个变形的生产者-消费者实现。对于此类需求,主要是将请求和实际的处理过程解耦,一般都是采取异步的方式来通知请求方,这跟用不用redis其实没有多大的关系。一般的实现方法是你需要将用户的请求封装成一个Task,然后将这个Task再push到redis队列,然后后端的worker.php完全可以多进程、多线程的并发处理Task并将处理结果回调给请求方。这里唯一麻烦点的就是这个Task的设计,需要能够包含请求信息(请求内容,请求方标识等等).

关注 9 回答 5

认证与成就

  • 获得 2 次点赞
  • 获得 5 枚徽章 获得 1 枚金徽章, 获得 2 枚银徽章, 获得 2 枚铜徽章

擅长技能
编辑

(゚∀゚ )
暂时没有

开源项目 & 著作
编辑

(゚∀゚ )
暂时没有

注册于 2012-12-19
个人主页被 351 人浏览