Kafka Stream+WebSocket+Redis实现实时数据大屏

在我们的日常电商大促中,商家需要看到自己所卖的商品的成交量情况、当前的爆品信息、目前的成交额等实时的信息,如下图所示实时大屏

实时数据大屏功能的实现有很多的方…

提高系统的并发能力方案

面试中经常会被问到如何提高系统的并发能力,针对此问题我整理如下的提高系统并发能力的方案:
(1)分流方案:常见的的方案有负载均衡、数据库拆分/集群、消息队列
(…

徒手从零搭建一套ELK日志平台

在复杂的企业应用系统中,系统的服务每天都会产生很多的日志信息,如果没有一套高效记录和搜索日志的平台,那么开发人员和运维人员都无法定位服务和处理线上问题。因此一套…

高并发下如何轻松的保证接口幂等性

日常的开发中有些接口对幂等性有严格的要求,如增加/扣减积分、用户支付/退款等场景,如果没有做接口的幂等性就会造成一定的资损或者用户投诉等问题。如下是增加积分过程…

【并发编程技术】聊聊阻塞队列那些事

01、背景介绍
在之前的文章中,我们介绍了生产者和消费者模型的最基本实现思路,相信大家对它已经有一个初步的认识。
在 Java 的并发包里面还有一个非常重要的…

盘点并发编程中几个实用的线程同步技术

01、背景介绍
下面我们一起来了解一下这些常用的并发工具类!
02、常用并发工具类
2.1、CountDownLatch
CountDownLatch是 J…

Redis中有事务吗?有何不同?

与关系型数据库事务的区别
Redis事务是指将多条命令加入队列,一次批量执行多条命令,每条命令会按顺序执行,事务执行过程中不会被其他客户端发来的命令所打断。也…

NoSQL:在高并发场景下,数据库和NoSQL如何做到互补?

在存储服务的优化中,我们通常从两个方面入手:
第一,提升读写性能,特别是读性能。大部分产品都以“读多写少”为主,比如你每天离不开的微信朋友圈、微博、淘宝等,这些…

如何设计高并发系统

## 1、技术角度

###(1)系统的拆分

把一个系统拆分成多个子系统,也就是将一个单体的应用根据它不同的模块拆分成不同的微服务,如下图所示单体应用:

如何实现Redis和Mysql中数据双写一致性

在我们的实际开发中,我们用到了redis缓存一些常用的数据(如热点数据)用来提高系统的吞吐量。

但是不可以避免的出现了数据的修改场景,这就导致了数据库中的数据…

电商中常见的Mysql与ElasticSearch数据同步的方案

在实际项目开发中,常用Mysql作为业务数据库,ElasticSearch作为查询库。ElasticSearch主要用来应对海量数据的复杂查询,提高查询效率和缓…

Redis 可观测最佳实践

Redis 介绍
Redis 是一个开源的高性能键值对(key-value)数据库。它通常用作数据库、缓存和消息代理。Redis 支持多种类型的数据结构,Red…

一文带你吃透 RabbitMQ 的高可用架构

01、背景介绍
在前几篇文章中,我们详细的介绍了 RabbitMQ 的内部架构和使用操作,以及 SpringBoot 整合 RabbitMQ 实现流量消峰的实践…

3分钟讲透死锁!

01、背景介绍
什么是死锁?它有什么危害?
带着这个问题,今天通过这篇文章,我们一起来深入了解一下死锁原理和解决办法。
我们知道被synchronized修饰…

缓存穿透、击穿和雪崩,到底啥意思?

一 、背景介绍

每场后端面试,似乎都少不了关于 redis 的话题,比如项目使用过哪些分布式缓存服务,为什么要使用 redis,有没有碰到过缓存失效、缓存穿透…

SpringBoot 整合 RabbitMQ 轻松实现流量消峰

01、背景介绍
在上篇文章中,我们详细的介绍了 RabbitMQ 的内部架构以及使用操作,本篇我们一起来实操一下SpringBoot整合RabbitMQ,为后…

面试题:说说看你对数据库事务和ACID的理解?并发事务可能会产生哪些问题,该如何解决?什么是快照读和MVCC,解决了什么问题?

 

面试题概览:

什么是数据库的事务,说说你对事务特性的理解;
说说看Mysql是如何实现原子性的;
Mysql的Inno…

Redis究竟为什么这么快?

Redis为什么这么快?

完全基于内存,数据存在内存中,绝大部分请求是纯粹的内存操作,非常快速,跟传统的磁盘文件数据存储相比,避免了通过磁盘IO读取到内存这…

Redis实现延迟队列的方案总结

redis是我们项目开发中常见的技术中间件,它除了可以实现常见的分布式锁和分布式缓存功能之外,还可以帮助我们实现很多的功能,如延迟队列。下面介绍几种redis常…

如何实现高并发下系统的限流

限流是在高并发大流量的场景下经常提到的一个问题,那么为什么要做限流操作呢?假设有如下的服务之间的调用关系:

假设现在“服务8”的由于调用量大,导致服务的响应慢…