>백엔드 개발 >PHP 튜토리얼 >文件缓存和memcache内存缓存,小弟我该选那个

文件缓存和memcache内存缓存,小弟我该选那个

WBOY
WBOY원래의
2016-06-13 10:13:55873검색

文件缓存和memcache内存缓存,我该选那个?
因为公司需要,要我统计每个用户在网页上的点击状况,进了那些链接。公司网站访问量大概是100多万ip 800w pv 。

在最开始使用了memcache来缓存用户的点击,当点击次数达到一定数量的时候,才写入数据库。 但是由于并发的原因,造成了多php进程同时写入数据库的问题,数据很多重复。

现在我和同事有两种方案,第一种他的是,在memcache中建立多个数组,存放缓存数据,单个数组不能大于1M。然后用独立的一个php进程来做计划任务,定时取memcache中的数组,来执行入库。

第二种我的,就是使用文件缓存,在memcache中点击次数满上限,就把数据存入文件中,清空memcache。然后同样用一个独立的进程来执行入库操作。

我们该选哪种呢?

------解决方案--------------------
既然要入库,又何必用文件缓存呢?
在memcache中点击次数满上限,就把数据执行入库操作,清空memcache
------解决方案--------------------
memcache达到上限的时候,不要急着入库,应该重新创建一个 memcache 缓存。

可以这样来理解:

一共有两个 memcache 缓存,一个正在工作,另一个在后面等着。当前面的那个工作到一定限度了,那就扯下来,另一个上。

典型的换班。。

不知道这样能否解决你的问题

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.