数据库

首页 标签 数据库
# 数据库 #
关注
180555内容
秒杀的理解
秒杀系统需解决并发读写问题,核心在于减少用户请求数据量、路径和依赖,并确保高可用、一致性与高性能。架构设计需遵循“稳、准、快”原则,保障系统稳定运行、数据准确及响应迅速。专栏将围绕高性能、一致性与高可用展开,探讨数据分离、库存控制与兜底方案等关键技术。
了解关系型数据库
关系型数据库基于表结构,支持SQL查询,适合复杂关系和事务处理,如Oracle、MySQL;而非关系型数据库如Redis、MongoDB采用灵活模型,适用于高并发、大数据场景。关系型数据库维护成本低但扩展性差,非关系型数据库读写快、成本低但不支持事务。索引可提升查询速度,但占用空间影响更新效率。数据库索引多采用B+树,因其更适合范围查询、磁盘读写效率高且查询性能稳定。
java常识2
本内容介绍了并发编程中的核心概念与实现机制,包括悲观锁与乐观锁的原理及应用、Java中的synchronized与ReentrantLock的区别、线程池的参数配置、线程创建方式、Lambda表达式的特性、反射机制及其应用场景。内容涵盖了数据库锁、第三方中间件锁、JUC并发包中的常用工具类,以及BIO、NIO、AIO的基本原理和使用场景,适合对Java并发编程有深入学习需求的开发者参考。
杂项8
缓存三剑客(穿透、击穿、雪崩)解析及解决方案:穿透指请求数据在Redis和数据库均不存在,可通过校验、空值缓存、布隆过滤器应对;击穿针对热点数据失效,可用互斥锁或永不过期策略;雪崩因大量缓存同时失效,可采用随机过期、集群部署、降级机制缓解。
杂项7
本资料介绍了Git分支管理与远程仓库操作,包括本地与远程分支创建、文件提交流程及IDEA操作指南。同时涵盖Redis常用数据类型如String、Hash、List、Set、ZSet的应用场景与操作示例,以及缓存使用策略,帮助开发者高效管理代码与数据。
初识MP
本文介绍了 MyBatis-Plus 在复杂应用中的使用技巧,涵盖条件构造器(如 QueryWrapper、UpdateWrapper 及其 Lambda 表达式版本)、自定义 SQL 的优化方式,以及分页和多表查询的处理方法。重点比较了 LambdaQueryWrapper 与 QueryWrapper 的适用场景,推荐单表操作优先使用 Lambda 方式以提升类型安全性,而多表联查则更适合使用 QueryWrapper 的灵活性。同时,通过示例说明了如何结合 Wrapper 与自定义 SQL 来构建高效、可维护的数据库操作逻辑。
了解ORM
MyBatis与MyBatis-Plus区别在于:MyBatis是半自动ORM框架,需手动编写SQL,适合复杂查询场景;而MyBatis-Plus是其增强工具,提供零SQL的CRUD操作,简化开发流程,适用于简单增删改查场景,提升开发效率。
杂项4
本内容涵盖Java中Lambda表达式对变量的final要求、锁机制中的synchronized使用注意事项、分布式锁与悲观锁的应用场景对比,以及Docker镜像文件(.tar)的正确处理方式。重点解析了多线程与多实例环境下资源竞争的解决方案,并提供代码示例和决策依据,适用于并发编程与微服务架构开发。
sql了解2
本文介绍了SQL中多表连接查询的核心概念,包括内连接(取交集)、左外连接和右外连接(交集+单表全集)的用法及结果特征。同时讲解了子查询的不同形式(标量、列、行、子表),以及IN和BETWEEN操作符的区别和应用场景。此外,还说明了一对多关系中以“一”或“多”表为主对查询结果条数的影响,并通过示例展示了如何正确使用连接条件和子查询。
杂项3
本内容为Java编程相关知识点整理,涵盖集合遍历、动态代理、网络编程、多线程、注解、IO流操作及POJO、DTO、VO的区别等内容,适合开发者学习与参考。
免费试用