消息队列序及kafka分析

消息队列序及kafka分析 消息队列已经成为各个互联网大厂必用的基础设施,也是现在程序员必须掌握除Java, mysql, redis之外的又一核心技能。从我在大厂接触的项目来看,消息队列主要用于解耦,广播,异步等,具体应用包括多个系统处理能力差异异构解决方案,数据库CDC方案,业务系统和业务系统的


几种常用的散列算法

几种常用的散列算法 最近学习HashMap、ThreadLocal、分库分表等源码,发现采用散列算法都不同。散列算法本质上是将一个极大不定范围的数据缩放到指定范围空间中。那么接下来就来了解不同的散列算法以及对应的使用。 除法散列 通过除法得到余数的方式来进行散列,mod M限制到M范围中。 由于编码


Redis实战三:基于Redis实现优惠券秒杀(黑马点评)

Redis实战三:基于Redis实现优惠券秒杀 全局ID生成器 全局ID生成器,是一种在分布式系统下用来生成全局唯一ID的工具,具有唯一性、高可用、高性能、递增性、安全性。 使用Redis完成全局自增 , 自增工具类 @Component public class RedisIdWorker {


苍穹外卖技术点学习(一)

苍穹外卖技术点学习 1. Nignx实现反向代理和负载均衡 不使用Nignx的场景下,前端请求的接口直接对接后端的端口存在不安全,耦合度高等问题。使用Nignx进行反向代理将前端发送的请求动态转发到后端服务器 请求的接口地址: http://localhost:8080/admin/employee


GO常见问题记录

GO常见问题记录 安装go,配置vscode的go扩展之后出现 解决方法: 命令行:输入 go env -w GO111MODULE=on go env -w GOPROXY=https://goproxy.cn,direct 然后 输入上述报错的cmd命令 go install -V golang


海量数据处理:找出相同的URL

海量数据处理:找出相同的URL 今天做了一下字节青训营的后端笔试,遇到一道经典问题。 题目 给定a、b两个文件,各存放50亿个url,每个url各占64字节,内存限制是4G,找出a、b文件共同的url? 自己的思路 对于这类问题,一般都会使用到位值表示来存储数据,还有就是使用Hash等一系列算法,将


数据库并发控制技术

并发控制技术 并发控制的主要技术有封锁(locking)、时间戳(timestamp)、乐观控制法(optimistic sheduler)和多版本并发控制(multi-version concurrency control,MVCC) 并发可能造成的后果 不可重复读 事务T1读取某一数据之后,事务