首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

利用 leanCloud 实现点赞功能

点赞功能 社交平台的必备良药,谁谁谁什么时候给你点了个赞,点赞什么的貌似已经深入人心了。...之前在 @火喵酱 的博客页面有看到说想用 leancloud 实现 do you like me 的点赞功能,之前没接触 leancloud 的 SDK 不知道咋搞,后来就不了了之,然后因为最近做了 valine...的最新评论排行,所以借这个风顺便来做个点赞功能~ 点赞按钮 实践操作 和 valine 最新评论一样,首先需要引入 sdk 并初始化完成化后接入具体实现的代码即可(这个就不说了,上篇笔记里有写的) 实现思路...这里再聊下思路,一般做点赞功能都是在本地点击计数之后再把数据上传到云端服务器,访问页面的时候直接根据页面拉取对应的数据填充即可。...(目前点赞和海报生成暂未开放仅限测试页面目前已全站开放,欢迎测试报bug~)下次聊下如何设置博主显示和置顶评论以及利用 html2canvas+qrcodejs 生成文章分享海报~ 上面有写到利用该方法统计页面访问量的情况

14110
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    点赞功能,用 MySQL?还是 Redis!

    数据一致性 点赞功能是目前app开发基本的功能 今天我们就来聊聊 点赞、评论、收藏等这些场景的db数据库设计问题, 1....我们先来看看场景的需求: 显示点赞数量 判断用户是否点过赞,用于去重,必须的判断 显示个人点赞列表,一般在用户中心 显示文章点赞列表 我们先看一下头条和微博的例子 ? ?...下面说下redis作为storage的方案: 场景a :显示点赞数量 在点赞的地方,只是显示一个点赞数量,能区分用户是否点赞过,一般用户不关心这个列表,这个场景只要一个数字就可以了,当数量比较大时,一般显示为...:tid:888 //实现数量自增 (integer) 899 场景b:点赞去重,避免重复点赞 要实现这个需求,必须有文章点赞的uid列表,以uid为key场景c:一般在用户中心,可以看到用户自己的点赞列表...存储点赞的用户id,如果点赞用户很多,避免id过多产生性能问题,可以单列出来,用sorted set结构保存,热点的毕竟是少数。

    2K20

    点赞功能设计与实现

    点赞业务本身并不复杂,无非是对数据的update,但是点赞本身是无意识行为,并且同一个用户可对博文进行点赞/取消点赞,如果直接操作数据库,无疑会增加数据库io操作。...方案: 缓存+异步推送 缓存+定时任务 优点: 降低对数据库的操作 提高点赞的效率 缺点: redis挂掉,或者mq延迟使数据库数据与redis数据不一致(正在发生) 解决方案:定时同步redis与数据库数据...(infoId%6); boolean flag = redisService.isMember(key, userId); 3.是否点赞枚举,1:点赞,2:取消点赞 public enum ThumbEnum...("isLike", 1);//1未点赞2已点赞 } else { //记录点赞用户 redisService.sadd(key, userIdStr...按理说读取与写操作应该分为两个redis,但是点赞统计的是评论数,大key进行拆分后,无需对其读写分离。

    9.1K51

    点赞功能,用 MySQL 还是 Redis ?

    作者:一起web编程 www.toutiao.com/i6825148720728769028 点赞功能是目前app开发基本的功能 今天我们就来聊聊 点赞、评论、收藏等这些场景的db数据库设计问题, 1...我们先来看看场景的需求: 显示点赞数量 判断用户是否点过赞,用于去重,必须的判断 显示个人点赞列表,一般在用户中心 显示文章点赞列表 我们先看一下头条和微博的例子 ? ?...下面说下redis作为storage的方案: 场景a :显示点赞数量 在点赞的地方,只是显示一个点赞数量,能区分用户是否点赞过,一般用户不关心这个列表,这个场景只要一个数字就可以了,当数量比较大时,一般显示为...star:tid:888 //实现数量自增 (integer) 899 场景b:点赞去重,避免重复点赞 要实现这个需求,必须有文章点赞的uid列表,以uid为key场景c:一般在用户中心,可以看到用户自己的点赞列表...如果点赞过显示红色,没有则显示黑白色, 今日头条是没有地方可以看到点赞列表的,而微博点进去,详情页可以看到点赞列表,但是只会显示最近的几十条,没有分页显示。

    1.1K30

    自部署 GitHub 风格的 Reactions 点赞功能

    前言 各路大佬用了各种方式实现了文章的点赞功能。 有的是博客系统自带的; 有的是评论系统集成的; 有的通过统计代码的 API 实现的; 有的通过第三方 SaaS 服务实现的。...虽然这个后端代码暂时没有提供初始化数据库的代码,不过通过源代码逆向出了初始化 Cloudflare D1 的命令。 Why this? 为什么选择了这个点赞功能呢。...这是模仿的 GitHub 的点赞功能的,基本上 1:1 还原了。 GitHub 即正义! 步骤 1. 部署后端(可选) 部署后端不是必需的,用官方提供的 API 就可以使用了。...[triggers] crons = [ ] 登录 Wrangler: wrangler login 在弹出的浏览器页面中,点 Allow 授权就可以了。...在 HTML 中引入 JS Module。

    26820

    点赞功能,你用 MySQL 还是 Redis ?

    作者:一起web编程 链接:www.toutiao.com/i6825148720728769028 点赞功能是目前app开发基本的功能 今天我们就来聊聊 点赞、评论、收藏等这些场景的db数据库设计问题...我们先来看看场景的需求: 显示点赞数量 判断用户是否点过赞,用于去重,必须的判断 显示个人点赞列表,一般在用户中心 显示文章点赞列表 我们先看一下头条和微博的例子 [897b7172-a444-4a0e-a984...下面说下redis作为storage的方案: 场景a :显示点赞数量 在点赞的地方,只是显示一个点赞数量,能区分用户是否点赞过,一般用户不关心这个列表,这个场景只要一个数字就可以了,当数量比较大时,一般显示为...star:tid:888 //实现数量自增 (integer) 899 场景b:点赞去重,避免重复点赞 要实现这个需求,必须有文章点赞的uid列表,以uid为key场景c:一般在用户中心,可以看到用户自己的点赞列表...:tid:888 456 //判断是否点赞 (integer) 1 点赞的地方,如果点赞过显示红色,没有则显示黑白色, 今日头条是没有地方可以看到点赞列表的,而微博点进去,详情页可以看到点赞列表,但是只会显示最近的几十条

    67040

    Redis实现点赞取消点赞

    点赞功能在很多系统中都有,但别看功能小,想要做好需要考虑的东西还挺多的。 点赞、取消点赞是高频次的操作,若每次都读写数据库,大量的操作会影响数据库性能,所以需要做缓存。...项目需求需要查看都谁点赞了,所以要存储每个点赞的点赞人、被点赞人,不能简单的做计数。...下面来对这5种数据结构类型作简单的介绍: 1.4 点赞数据在 Redis 中的存储格式 用 Redis 存储两种数据,一种是记录点赞人、被点赞人、点赞状态的数据,另一种是每个用户被点赞了多少次,做个简单的计数...因为 Hash 里的数据都是存在一个键里,可以通过这个键很方便的把所有的点赞数据都取出。这个键里面的数据还可以存成键值对的形式,方便存入点赞人、被点赞人和点赞状态。...设点赞人的 id 为 likedPostId,被点赞人的 id 为 likedUserId ,点赞时状态为 1,取消点赞状态为 0。

    3.1K31

    Redis是如何实现点赞、取消点赞的?

    点赞功能在很多系统中都有,但别看功能小,想要做好需要考虑的东西还挺多的。 点赞、取消点赞是高频次的操作,若每次都读写数据库,大量的操作会影响数据库性能,所以需要做缓存。...项目需求需要查看都谁点赞了,所以要存储每个点赞的点赞人、被点赞人,不能简单的做计数。...1.4 点赞数据在 Redis 中的存储格式 用 Redis 存储两种数据,一种是记录点赞人、被点赞人、点赞状态的数据,另一种是每个用户被点赞了多少次,做个简单的计数。...因为 Hash 里的数据都是存在一个键里,可以通过这个键很方便的把所有的点赞数据都取出。这个键里面的数据还可以存成键值对的形式,方便存入点赞人、被点赞人和点赞状态。...以上就是点赞功能的设计与实现,不足之处还请各位大佬多多指教。

    3.3K50

    Redis位图实现点赞签到相关功能

    前言 对于我们平时的一些社区应用,如微博,知乎,掘金等应用点赞,评论这类功能是不可或缺的,例如点赞功能我们其实是可以通过 mysql 去做实现的,但是每次点赞都去实时改库可以想象一下当遇到一个热点文章例如...用户在线状态 统计活跃用户 各种状态值 自定义布隆过滤器 点赞功能 可以想象一下假如我们要统计一个用户一年的签到记录,签了是 1,没签是 0,要记录 365 天。...我们先拿点赞功能来做一个简单的编码介绍: 帖子1(post1): postId:1 postName:《震惊!...点赞功能 我这里的处理方式是异步改库,点完赞之后异步修改数据库,不要求实时处理结果其实可以用定时任务去批量改库(需要存一定时间内的 postId 和 userId 索引关系); @Override public...一个简单的位图实现点赞等功能就实现了,大家一个举一反三哈,玩法还是很多的,大家也可以根据自己的需求去做优化,希望可以对大家有帮助,有不对的地方希望大家可以提出来的,共同成长。 ❞

    1K10

    【微信小程序】文章点赞功能的实现

    今日学习目标:第二十期——文章点赞功能的实现 ✨个人主页:颜颜yan_的个人主页 ⏰预计时间:15分钟 专栏系列:我的第一个微信小程序 ---- 文章目录 前言 效果图 实现步骤 总结...本期主要内容是文章点赞功能的实现。...每期内容是连载呢,建议大家可以看看往期内容,更好理解噢~ ---- 效果图 实现步骤 点赞功能的思路和上期收藏的思路是一样的噢~ 首先在接口中添加处理点赞操作的方法。...// 点赞功能 up(){ var data = this.updatePostData('up'); return data; } 在updataPostData...并在组件中添加响应用户点赞的方法。 添加响应用户点赞的方法,当用户点击点赞按钮后 ,该方法将调用接口中的up方法并将返回的最新数据使用this.setData更新。

    1.6K30

    Redis是如何实现点赞、取消点赞的?

    点赞功能在很多系统中都有,但别看功能小,想要做好需要考虑的东西还挺多的。 点赞、取消点赞是高频次的操作,若每次都读写数据库,大量的操作会影响数据库性能,所以需要做缓存。...项目需求需要查看都谁点赞了,所以要存储每个点赞的点赞人、被点赞人,不能简单的做计数。...1.4 点赞数据在 Redis 中的存储格式 用 Redis 存储两种数据,一种是记录点赞人、被点赞人、点赞状态的数据,另一种是每个用户被点赞了多少次,做个简单的计数。...因为 Hash 里的数据都是存在一个键里,可以通过这个键很方便的把所有的点赞数据都取出。这个键里面的数据还可以存成键值对的形式,方便存入点赞人、被点赞人和点赞状态。...以上就是点赞功能的设计与实现,不足之处还请各位大佬多多指教。 如有更好的实现方案欢迎在评论区交流…

    2.6K20

    Redis是如何实现点赞、取消点赞的?

    点赞功能在很多系统中都有,但别看功能小,想要做好需要考虑的东西还挺多的。 点赞、取消点赞是高频次的操作,若每次都读写数据库,大量的操作会影响数据库性能,所以需要做缓存。...项目需求需要查看都谁点赞了,所以要存储每个点赞的点赞人、被点赞人,不能简单的做计数。...下面来对这5种数据结构类型作简单的介绍: 1.4 点赞数据在 Redis 中的存储格式 用 Redis 存储两种数据,一种是记录点赞人、被点赞人、点赞状态的数据,另一种是每个用户被点赞了多少次,做个简单的计数...因为 Hash 里的数据都是存在一个键里,可以通过这个键很方便的把所有的点赞数据都取出。这个键里面的数据还可以存成键值对的形式,方便存入点赞人、被点赞人和点赞状态。...以上就是点赞功能的设计与实现,不足之处还请各位大佬多多指教。

    2.5K20

    Redis 是如何实现点赞、取消点赞的?

    点赞功能在很多系统中都有,但别看功能小,想要做好需要考虑的东西还挺多的。 点赞、取消点赞是高频次的操作,若每次都读写数据库,大量的操作会影响数据库性能,所以需要做缓存。...项目需求需要查看都谁点赞了,所以要存储每个点赞的点赞人、被点赞人,不能简单的做计数。...1.4 点赞数据在 Redis 中的存储格式 用 Redis 存储两种数据,一种是记录点赞人、被点赞人、点赞状态的数据,另一种是每个用户被点赞了多少次,做个简单的计数。...因为 Hash 里的数据都是存在一个键里,可以通过这个键很方便的把所有的点赞数据都取出。这个键里面的数据还可以存成键值对的形式,方便存入点赞人、被点赞人和点赞状态。...以上就是点赞功能的设计与实现,不足之处还请各位大佬多多指教。

    7K64

    点赞模块设计:Redis缓存 + 定时写入数据库实现高性能点赞功能

    点赞功能在很多系统中都有,但别看功能小,想要做好需要考虑的东西还挺多的。 点赞、取消点赞是高频次的操作,若每次都读写数据库,大量的操作会影响数据库性能,所以需要做缓存。...项目需求需要查看都谁点赞了,所以要存储每个点赞的点赞人、被点赞人,不能简单的做计数。...下面来对这5种数据结构类型作简单的介绍: 1.4 点赞数据在 Redis 中的存储格式 用 Redis 存储两种数据,一种是记录点赞人、被点赞人、点赞状态的数据,另一种是每个用户被点赞了多少次,做个简单的计数...因为 Hash 里的数据都是存在一个键里,可以通过这个键很方便的把所有的点赞数据都取出。这个键里面的数据还可以存成键值对的形式,方便存入点赞人、被点赞人和点赞状态。...以上就是点赞功能的设计与实现,不足之处还请各位大佬多多指教。

    1.9K60

    Redis 是如何实现点赞、取消点赞的?

    点赞功能在很多系统中都有,但别看功能小,想要做好需要考虑的东西还挺多的。 点赞、取消点赞是高频次的操作,若每次都读写数据库,大量的操作会影响数据库性能,所以需要做缓存。...项目需求需要查看都谁点赞了,所以要存储每个点赞的点赞人、被点赞人,不能简单的做计数。...1.4 点赞数据在 Redis 中的存储格式 用 Redis 存储两种数据,一种是记录点赞人、被点赞人、点赞状态的数据,另一种是每个用户被点赞了多少次,做个简单的计数。...因为 Hash 里的数据都是存在一个键里,可以通过这个键很方便的把所有的点赞数据都取出。这个键里面的数据还可以存成键值对的形式,方便存入点赞人、被点赞人和点赞状态。...以上就是点赞功能的设计与实现,不足之处还请各位大佬多多指教。

    2.9K10

    点赞模块设计:Redis缓存 + 定时写入数据库实现高性能点赞功能

    点赞功能在很多系统中都有,但别看功能小,想要做好需要考虑的东西还挺多的。 点赞、取消点赞是高频次的操作,若每次都读写数据库,大量的操作会影响数据库性能,所以需要做缓存。...项目需求需要查看都谁点赞了,所以要存储每个点赞的点赞人、被点赞人,不能简单的做计数。...1.4 点赞数据在 Redis 中的存储格式 用 Redis 存储两种数据,一种是记录点赞人、被点赞人、点赞状态的数据,另一种是每个用户被点赞了多少次,做个简单的计数。...因为 Hash 里的数据都是存在一个键里,可以通过这个键很方便的把所有的点赞数据都取出。这个键里面的数据还可以存成键值对的形式,方便存入点赞人、被点赞人和点赞状态。...以上就是点赞功能的设计与实现,不足之处还请各位大佬多多指教。 后期继续分享会当下最流行的xxl-job,Elastic-Job

    6.5K40

    点赞模块设计 - Redis缓存 + 定时写入数据库实现高性能点赞功能

    点赞功能在很多系统中都有,但别看功能小,想要做好需要考虑的东西还挺多的。 点赞、取消点赞是高频次的操作,若每次都读写数据库,大量的操作会影响数据库性能,所以需要做缓存。...项目需求需要查看都谁点赞了,所以要存储每个点赞的点赞人、被点赞人,不能简单的做计数。...因为 Hash 里的数据都是存在一个键里,可以通过这个键很方便的把所有的点赞数据都取出。这个键里面的数据还可以存成键值对的形式,方便存入点赞人、被点赞人和点赞状态。...设点赞人的 id 为 likedPostId,被点赞人的 id 为 likedUserId ,点赞时状态为 1,取消点赞状态为 0。...以上就是点赞功能的设计与实现,不足之处还请各位大佬多多指教。 如有更好的实现方案欢迎在评论区交流… 项目地址:https://github.com/cachecats/coderiver

    2.2K50
    领券