腾讯云智0601

目录

1.redis的常用数据结构

2.String类型的实现

3.各种数据类型的使用场景

4.redis常用的命令

5.用户新增留言,redis如何更新

6.如何保持数据的一致性

7.Redis中留言板的key是什么

8.Redis中留言和对应评论的层级关系如何实现

9.Redis中当只知道留言id时如何获取全部对应评论

10.Redis中当如何获取全部对应评论

11.如果不使用JOIN操作,如何查找

12.进程和线程的区别

13.线程间的临界区

14.用过哪些锁

15.Linux常用的命令

16.网络通信想看一下当前系统某端口是否开启了监听(netstat)

17.HTTP协议浏览器的流程

18.手写算法-对单链表m到n的节点进行翻转


1.redis的常用数据结构

2.String类型的实现

3.各种数据类型的使用场景

  1. 字符串(String):用于存储单个值,可以是字符串、整数或浮点数。常用于缓存、计数器、分布式锁等场景。

  2. 哈希(Hash):用于存储字段-值对的集合。适合存储对象、用户信息、配置等数据,并能够方便地单独获取、修改、删除字段的值。

  3. 列表(List):用于存储有序的字符串元素列表。支持从两端进行元素的插入和删除操作,适合实现消息队列、最新消息推送等场景。

  4. 集合(Set):用于存储不重复的字符串元素集合。提供了对集合的交集、并集、差集等操作,适合去重、标签系统、好友关系等场景。

  5. 有序集合(Sorted Set):类似于集合,但每个元素都关联一个分数,可以根据分数进行排序。适合存储排行榜、优先级队列等场景。

  6. 位图(Bitmap):用于存储位数据,可以进行位操作,如统计用户活跃情况、记录用户签到等场景。

  7. 地理空间(Geospatial):用于存储地理位置信息,支持对地理位置进行查询和计算,适合实现附近的人、地点检索等场景。

4.redis常用的命令

5.用户新增留言,redis如何更新

在留言板中,Redis可以作为缓存层来优化系统性能,将常用的或者热点数据缓存到Redis中,减少访问数据库的负担,并提高系统的访问速度。而如果用户新增留言,我们需要更新数据库以及同步更新Redis数据。常见的做法是使用MySQL数据库作为留言板数据存储,以及使用Redis作为留言板数据缓存,在用户新增留言时需要进行以下操作:

1. 应用程序先将留言信息写入MySQL数据库中,确保数据已经存储到数据库中;
2. 然后应用程序再将留言信息写入Redis缓存中,确保Redis缓存中的留言数据与数据库中的数据是同步的;
3. 在下一次查询请求中,应用程序先尝试从Redis缓存中获取留言信息,如果Redis中不存在,再从MySQL中获取。

在以上过程中,我们要保证MySQL数据库与Redis缓存 数据的实时一致性。为此,我们可以考虑使用消息队列等工具,将MySQL数据库的数据更新操作和Redis缓存的数据更新操作封装成消息,并发送到消息队列中。这样,在应用程序从消息队列中获取到相应的消息后,就可以执行相应的操作,并确保MySQL数据库与Redis缓存中的数据保持一致。

6.如何保持数据的一致性

7.Redis中留言板的key是什么

8.Redis中留言和对应评论的层级关系如何实现

9.Redis中当只知道留言id时如何获取全部对应评论

10.MySQL中当如何获取全部对应评论

11.如果不使用JOIN操作,如何查找

12.进程和线程的区别

13.线程间的临界区

  1. synchronized关键字:synchronized关键字可以修饰方法或代码块,保证同一时间只有一个线程可以执行被修饰的代码。当一个线程进入synchronized代码块时,它会获取锁,其他线程需要等待锁释放才能执行该代码块。synchronized关键字提供了隐式的锁机制,简单易用。

  2. ReentrantLock类:ReentrantLock是Java提供的可重入锁的实现,它提供了更灵活的锁定机制。使用ReentrantLock可以通过lock()方法获取锁,通过unlock()方法释放锁。与synchronized相比,ReentrantLock提供了更多高级特性,如公平锁、可中断锁、多个条件变量等。

  3. Lock接口:除了ReentrantLock,Java还提供了Lock接口,它是一个通用的锁定接口,可以通过不同的实现类选择合适的锁机制。Lock接口提供了与synchronized类似的功能,但更加灵活。

14.用过哪些锁

15.Linux常用的命令

16.网络通信想看一下当前系统某端口是否开启了监听(netstat)

17.HTTP协议浏览器的流程

18.手写算法-对单链表m到n的节点进行翻转

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值