2018年,王思聪的冲顶大会,西瓜视频的百万英雄,再到映客的芝士超人,直播答题火爆全网。我服务的一家电商公司也加入了这次热潮,技术团队研发了直播答题功能。答题结束之后,红包会以红包雨的形式落下,用户点击屏幕上落下的红包,若抢到红包,红包会以现金的形式进入用户账户。红包雨是一个典型的高并发场景,短时间内有海量请求访问服务端,技术团队为了让系统运行顺畅,抢红包采用了基于Redis+Lua脚本的设计方案。1整体流...
2023-01-04 11:07:16 3500浏览 0点赞 0回复 0收藏
在高并发的场景下,异步是一个极其重要的优化方向。前段时间,生产环境发生一次事故,笔者认为事故的场景非常具备典型性。写这篇文章,笔者想和大家深入探讨该场景的架构优化方案。希望大家读完之后,可以对异步有更深刻的理解。1业务场景老师登录教研平台,会看到课程列表,点击课程后,课程会以视频的形式展现出来。访问课程详情页面,包含两个核心动作:读取课程视频信息:从缓存服务器Redis获取课程的视频信息,返回给前端,...
2023-01-04 11:06:14 3190浏览 0点赞 0回复 0收藏
工作几年的程序员同学,有了一定的项目经验,对于编程也有了自己的理解,但他们偶尔也会感到困惑,不知道接下来该如何提升自己。在笔者看来:"这个阶段的程序员最需要的是提升自身编程能力和视野高度,而学习开源项目是最有效的方法之一"。这篇文章,笔者聊聊自己的学习开源项目的心得,希望对你有所帮助。1学会使用首先,我们需要学习如何使用开源项目。Github是全球最大的在线软件源代码托管服务平台,很多开源项目都托管在他...
2023-01-04 11:05:02 3460浏览 0点赞 0回复 0收藏
RocketMQ是一款开源的分布式消息系统,基于高可用分布式集群技术,提供低延时、高可靠的消息发布与订阅服务。这篇文章,笔者整理了RocketMQ源码中创建线程的几点技巧,希望大家读完之后,能够有所收获。1创建单线程首先我们先温习下常用的创建单线程的两种方式:实现Runnable接口继承Thread类▍一、实现Runnable接口图中,MyRunnable类实现了Runnable接口的run方法,run方法中定义具体的任务代码或处理逻辑,而Runnable对象是作...
2023-01-03 15:55:06 2728浏览 0点赞 0回复 0收藏