[返回自由文学首页]·[所有跟帖]·[ 回复本帖 ] ·[热门原创] ·[繁體閱讀]·[坛主管理]

【首发】留园论坛红包和点赞的技术小知识

送交者: gonewithsmoke[☆★★★声望勋衔15★★★☆] 于 2024-02-25 21:46 已读 899 次 7赞  

gonewithsmoke的个人频道

+关注
关于留园论坛的红包和点赞,有时会出现一些问题,也看到了一些网友对此有一些疑问。经过一段时间以来对留园论坛红包和点赞的观察,大概发现和总结了以下几点技术方面的小知识,这些小知识或许可以解释这些疑问。如有错误之处,欢迎指正:

当点击红包的时候,系统会先检测该红包是否有效,如果有效,那么会执行下列步骤:

1、系统会先检测你是否已经抢过该红包,而且首先是去redis缓存里检测,而不是先去数据库检测(redis缓存是一个缓存程序,网站系统通常利用其快速读取数据)

2、如果redis缓存里没有数据,那么才去数据库检测,看有没有你抢过该红包的记录

  2.1 如果数据库里已经有你抢过该红包的记录,那么提示会是:很遗憾,您抢到的是零金币空白红包,祝下次好运!

  2.2 如果数据库里没有你抢过该红包的记录,那么系统会计算你可以得到的金币,并把数据写入数据库,同时把数据写入redis缓存里进行保存

  这样用户下次再抢该红包的时候,在redis缓存里就有数据可以检测了,就会执行以下这个步骤:

3、如果redis缓存里有你抢过该红包的数据,那么会提示:这个红包您已经抢过了,贪心会长胖的哦!

4、值得注意的是:这个redis缓存数据会过期,在过期后缓存数据就被自动清除,否则如果不清除这个缓存数据,那么数据会越来越多,服务器内存都会不足了。据观察,这个缓存期限大概是几天时间。

所以,假如你看到好几天以前的一个红包还可以领,但你可能忘了有没有领取过而再次去点击领取,如果你其实已经领取过了,那么当你点击的时候,提示会是:很遗憾,您抢到的是零金币空白红包,祝下次好运!

因为这个时候,缓存里已经没有该数据,系统是去数据库里检测的,是去执行上面的第2个步骤。

接着,如果你马上再次点击,那么提示就变成了:这个红包您已经抢过了,贪心会长胖的哦!因为这次redis缓存里刚刚已经有了数据,执行的是上述第3个步骤。

5、另外,如果多个账号去抢红包,而且都是同一个IP的话,那么其它账号抢到的可能会是空白红包或是金币很少的红包,这是系统为了保证一定程度的公平所做的处理。

同样,留园论坛的点赞也是用redis来保存缓存数据的,系统也是先去redis检测是否有过该帖的点赞数据。关于点赞,有时会出现以下几个问题:

有时点赞,提示点赞成功:投票点赞操作完成,谢谢您的参与!

然后刷新页面,页面却不显示点赞。虽然之前的提示里说:系统记录可能会滞后一会显示。但等了好一会,也根本没有显示点赞。

但如果你马上再次点赞,却显示:谢谢,您已对本帖点赞。

所以,redis缓存是有数据了,但由于系统对用户的点赞这个操作做了频率的检测,如果点赞频率超过系统设置,那么系统可能根本不处理这个点赞操作,也并没有把数据保存到数据库,所以页面无法显示这个点赞。但在redis缓存里却是已经有该数据了。

同样,这个点赞数据也是会过期的,假如你点赞了,但页面没有显示你的点赞,那么如果过些天再次去点赞,应该还可以再次成功点赞,这个时候点赞也会显示在页面上了。

另外,如果多个账号在同一个IP的话,其它账号点赞的时候会提示已经点赞过,如果你使用不同IP去点赞,那么可以再次成功点赞。

此外,有时会因为服务器网络卡顿的原因,有时点赞可以连续点2次。


贴主:gonewithsmoke于2024_02_25 22:21:04编辑
喜欢gonewithsmoke朋友的这个贴子的话, 请点这里投票,“赞”助支持!

已标注为gonewithsmoke的原创内容,若需转载授权请联系网友本人。若违规侵权,请联系我们

所有跟帖:   ( 主贴楼主有权删除不文明回复,拉黑不受欢迎的用户 )

多谢礼物! (无内容) - gonewithsmoke (0 bytes) 02/26/24
有人说是30秒 (无内容) - Weiggg (0 bytes) 02/26/24
实验,好像3秒确实会被过滤掉 - 太湖清奇 (683 bytes) 02/26/24
谢谢礼物 (无内容) - gonewithsmoke (0 bytes) 02/26/24
又涨知识了~~ (无内容) - yyykc (0 bytes) 02/26/24
谢谢礼物 (无内容) - gonewithsmoke (0 bytes) 02/26/24

用户名: 密码: [--注册ID--]

标 题:

粗体 斜体 下划线 居中 插入图片插入图片 插入Flash插入Flash动画


     图片上传  Youtube代码器  预览辅助



[ 留园条例 ] [ 广告服务 ] [ 联系我们 ] [ 个人帐户 ] [ 创建您的定制新论坛频道 ] [ Contact us ]