java秒杀中重启怎么做?并发解决技巧有哪些?

BSO 2020-09-28 16:43:07 java常见问答 6731

随着互联网产业的兴盛与发展,大家对于新技术的渴求也越来越强烈。在日常使用中,java的应用也很广泛。在秒杀时,很容易因为高并发而导致系统奔溃。那么,java秒杀中重启怎么做以及并发解决技巧有哪些?一起来看看吧。

一、java秒杀中重启与过载保护怎么做。

如果系统发生“雪崩”,贸然重启服务,是无法解决问题的。最常见的现象是,启动起来后,立刻挂掉。这个时候,最好在入口层将流量拒绝,然后再重启。如果是redis/memcache这种服务也挂了,重启的时候需要注意“预热”,并且很可能需要比较长的时间。

秒杀和抢购的场景,流量往往是超乎我们系统的准备和想象的。这个时候,过载保护是必要的。

如果检测到系统满负载状态,拒绝请求也是一种保护措施。在前端设置过滤是最简单的方式,但是,这种做法是被用户“千夫所指”的行为。更合适一点的是,将过载保护设置在CGI入口层,快速将客户的直接请求返回。

二、解决技巧

互联网正在高速发展,使用互联网服务的用户越多,高并发的场景也变得越来越多。电商秒杀和抢购,是两个比较典型的互联网高并发场景。

技巧如下:

1.应用层面:读写分离、缓存、队列、集群、令牌、系统拆分、隔离、系统升级(可水平扩容方向)。

2.时间换空间:降低单次请求时间,这样在单位时间内系统并发就会提升。

3.空间换时间:拉长整体处理业务时间,换取后台系统容量空间。

以上就是关于java秒杀中重启怎么做以及并发解决技巧有哪些的主要内容。java中关于秒杀和抢购的应用还是很广泛的,而且使用也是十分便捷的。如果你对java知识感兴趣,想要了解更多java常见问题,敬请关注奇Q工具网。

推荐阅读:

在java中并发部分API包含哪些内容?实际代码展示

java队列处理高并发怎么实现?

java多线程与高并发怎么一起实现?