何小靖 2023-04-21 16:34 采纳率: 85.7%
浏览 38
已结题

java 高并发大量用户同时注册

大量用户同时注册,添加,修改,完全没有思路,要用redis吗,希望大lao说一下思路。
我现在想到一种解决方法,就是注册把数据加到redis,然后在人少的时候再把大量用户的数据存到数据库,不知道能不能行,但是如果是发布了信息之类的需要及时跟新怎么办

  • 写回答

2条回答 默认 最新

  • 社区专家-Monster-XH 2023-04-21 16:39
    关注

    基于Monster 组和GPT的调写:

    • 当系统需要支持大量的并发注册、添加、修改操作时,使用Redis可以是一个不错的选择。下面是一个使用Redis的简单思路:
    • Redis作为缓存层:当用户进行注册、添加、修改操作时,首先应该将请求发送到Redis,而不是直接写入数据库。在Redis中进行写操作比在数据库中进行写操作要快得多,因为Redis是基于内存的,而数据库则需要进行磁盘读写操作。
    • Redis使用队列:在高并发情况下,如果直接将所有请求都写入Redis中,可能会导致Redis的性能下降。这时可以考虑使用队列,将请求发送到队列中,并使用多个工作线程从队列中读取请求,然后将其写入Redis中。
    • Redis使用分布式锁:为了避免不同的用户同时进行注册、添加、修改等操作时出现冲突,需要使用分布式锁。Redis可以提供分布式锁的功能,可以确保同一时刻只有一个线程可以对同一个资源进行修改。
    • Redis集群:当Redis的性能无法满足需求时,可以考虑使用Redis集群来扩展性能。Redis集群可以将数据分布在多个Redis实例中,从而提高系统的吞吐量和可靠性。
    本回答被专家选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 5月29日
  • 专家已采纳回答 5月21日
  • 修改了问题 4月21日
  • 修改了问题 4月21日
  • 展开全部