这个用户很懒,还没有个人简介
私信
主帖 26
回帖
视频
提问
回答
资源
专栏
什么是数据库死锁在操作系统领域当中,死锁指的是两个或者两个以上的进程在运行的过程中,因为争夺共同的访问资源而相互等待阻塞,最终导致进程继无法续执行的一种阻塞现象。那么在数据库领域当中死锁又是怎样的表现形式呢?数据库死锁又会带来怎样的问题呢?在理解数据库死锁之前,我们先来明确下数据库的锁到底是什么?有过Java编程经验的同学都知道,Java中的锁是为了解决共享数据的并发访问安全问题,防止并发访问导致的共...
2022-06-07 16:58:02 216浏览 1点赞 0回复 0收藏
什么是数据库死锁在操作系统领域当中,死锁指的是两个或者两个以上的进程在运行的过程中,因为争夺共同的访问资源而相互等待阻塞,最终导致进程继无法续执行的一种阻塞现象。那么在数据库领域当中死锁又是怎样的表现形式呢?数据库死锁又会带来怎样的问题呢?在理解数据库死锁之前,我们先来明确下数据库的锁到底是什么?有过Java编程经验的同学都知道,Java中的锁是为了解决共享数据的并发访问安全问题,防止并发访问导致的共...
2022-06-07 16:57:56 186浏览 0点赞 0回复 0收藏
引言对于一个软件平台来说,软件平台代码的好坏直接影响平台整体的质量与稳定性。同时也会影响着写代码同学的创作激情。想象一下如果你从git上面clone下来的的工程代码乱七八糟,代码晦涩难懂,难以快速入手,有种想推到重写的冲动,那么程序猿在这个工程中写好代码的初始热情都没了。相反,如果clone下的代码结构清晰,代码优雅易懂,那么你在写代码的时候都不好意思写烂代码。这其中的差别相信工作过的同学都深有体会,那么我...
2022-06-07 16:57:49 161浏览 0点赞 0回复 0收藏
引言最近很多同学问如何进行Java入门学习以及构建自己的技术体系,不少人总感觉Java技术知识浩如烟海,网上资料又多如牛毛,根本不知道应该从哪里入手进行学习,另外觉得自己学习的内容零零碎碎不成体系,感觉十分的迷茫。为了解答大家的疑惑,笔者特意梳理了Java小白到技术专家成长过程中必备的技术体系(这次可是拿出来压箱底的技术总结思维导图)。希望这份技术成长路线总结可以对大家在学习Java的过程中有所帮助,在学习上...
2022-06-07 16:57:24 157浏览 0点赞 0回复 0收藏
RedisRocketMQElasticsearch思维模型总结以上知识体系思维导图是对Java技术入门的不完全总结和提炼,希望对想入门学习的同学能够有所裨益。另外这边分享给大家一些心得,写代码其实没什么特别的捷径可以走,无非是靠不断的学习、不断的重复练习实战,量变就会引起质变。但是有一点需要提醒大家,写代码其实只是一个基本技能,要想真正在互联网行业有所成就的话仅仅靠写代码是远远不够的。因为写代码的可替代性实在太强了,同样...
2022-06-07 16:57:08 129浏览 0点赞 0回复 0收藏
引言跳表是一种用于数据查找的数据结构,它虽然不是常见的数据结构,但是在Redis、Hbase等中间件中却被广泛使用,是一款性能比较优秀的底层数据结构,可以支持高速的数据查找、删除以及插入。这种数据结构是由WilliamPugh发明的,最早出现于他在1990年发表的论文《SkipLists:AProbabilisticAlternativetoBalancedTrees》,以下是论文中关于跳表的描述。Skiplistsareadatastructurethatcanbeusedinplaceofbalancedtrees.Skiplist...
2022-06-07 16:56:59 159浏览 0点赞 0回复 0收藏
引言PostgreSQL是一款功能非常强大的开源关系型数据库,它支持哈希索引、反向索引、部分索引、Expression索引、GiST、GIN等多种索引模式,同时可安装功能丰富的扩展包。相较于Mysql,PostgreSQ支持通过PostGIS扩展支持地理空间数据、支持嵌套循环,哈希连接,排序合并三种表连接方式等一系列的强化功能。本文主要整理总结了30个实用SQL,方便大家可以高效利用PostgreSQL。实用SQL语句一、数据库连接1、获取数据库实例连接数sele...
2022-06-07 16:56:51 143浏览 0点赞 0回复 0收藏
引言在前面的几篇文章中分别从DDD概念、核心思想以及代码落地等层面阐述了DDD的落地实践的过程,但是很多同学表示对于DDD的某些概念还是觉得不太好理解,影响了对于DDD的学习以及实际应用。因此本文针对大家反馈的问题进行详细的说明,希望可以用大白话的方式把这些看似复杂的概念形象化、简单化。领域、子域、核心域等这么多域到底怎么理解?在DDD的众多概念中,首先需要搞清楚的就是到底什么是领域。因为DDD是领域驱动设计,...
2022-06-07 16:56:46 217浏览 0点赞 0回复 0收藏
引言今年的三月好像比往年要冷的多,同样在互联网求职市场上以前的金三银色已然变成了铜三铁四,各大公司不是收紧HC就是各种裁员,求职的同学们已经感受到了互联网寒冬的到来,在职的同学们也都人心惶惶。在这样的大环境下,不论是已经被裁员的同学还是在职的同学们,都需要思考如何才能独善其身立于不败之地?凛冬将至,谁能独善其身3月某一天的微博中关于裁员的热搜一个版面就占了三条,一时间互联网行业人人自危。因为如果头...
2022-06-07 16:56:41 208浏览 0点赞 0回复 0收藏
引言数据库性能优化是每个后端程序猿必备的基础技能之一,而Mysql中的explain堪称Mysql的性能优化分析神器,我们可以通过它来分析SQL语句的对应的执行计划在Mysql底层到底是如何执行的,它对于我们评估SQL的执行效率以及确定Mysql的性能优化方向具有重要的意义。但是很多同学对于如何根据explain对已有SQL进行深度的执行分析还是丈二和尚摸不着头脑,因此本文详细阐述通过explain分析定位数据库性能问题。explain基础对于每个SQ...
2022-06-07 16:56:20 219浏览 0点赞 0回复 0收藏
(3)eqref在进行数据查询的过程中,如果SQL语句中在表连接情况下可以基于聚簇索引或者非null值的唯一索引记性数据扫描,那么此时type对应的值就会显示为eqref。(4)ref数据查询的时候如果命中的索引是二级索引不是唯一索引,测试查询速度也会很快,但是type是ref。另外如果是多字段的联合索引,那么根据最左匹配原则,从联合索引的最左侧开始连续多个列的字段进行等值比较也是ref的类型。(5)refornull这种连接类型类似于ref...
2022-06-07 16:56:14 190浏览 0点赞 0回复 0收藏
问题分析在进行数据库查询的时候,我们都知道索引可以加快数据查询的效率。但是在实际的业务场景下,经常会遇到即使在表中增加了索引,但是同样还是会出现数据查询慢的问题。这就需要具体分析数据查询慢的具体原因到底是什么了。首先需要进行确认的就是SQL语句中对应的条件查询中字段有没有建立索引。虽然说表中已经有索引,但是不一定SQL语句中的查询字段有建立索引,所以第一步应该进行SQL中的字段索引确认。如果没有建立对应...
2022-06-07 16:55:56 278浏览 0点赞 0回复 0收藏
引言无论是在实际的工作中还是短视频的搞笑段子中,程序猿和产品经理之间似乎总是一对欢喜冤家。我相信大家在现实项目中也经历过程序员和产品经理为了需求吵得脸红脖子粗的场景。产品经理觉得某个需求实现起来应该很简单为什么研发总是各种理由推脱。而技术人员觉得这个需求做出来没有用,而且对现有的产品有冲击增加复杂度,为什么产品总是提这种很SB的需求。造成这种互相不理解的情况的根本原因,实际上就是技术同学与产品同...
2022-06-07 16:55:16 214浏览 0点赞 0回复 0收藏
引言二维码已经成为我们日常生活中必不可少的组成部分了,登录需要扫一扫二维码、买东西付钱需要扫一扫二维码、开会签到也需要扫一扫二维码,那么如此广泛使用的二维码技术,背后的原理是怎样的呢?本文将结合二维码的发展历程以及典型应用场景,分析二维码背后的技术原理。二维码发展简史2.1条形码的诞生在理解二维码技术原理之前,我们先来简单看下它是怎么发展起来的。早在1948年,伯纳德·塞尔沃还是费城煤气科技学院的一名...
2022-06-07 16:55:05 244浏览 0点赞 0回复 0收藏
什么是分布式锁?它能干什么单体系统中,在高并发场景下想要访问共享资源的时候,我们需要通过加锁的方式来保证共享资源并发的安全性,确保在同一时刻只有一个线程对共享资源进行操作。相信大家对于Java提供的synchronized关键字以及Lock锁都不陌生,在实际的项目中大家都使用过。如下图所示,在同一个JVM进程中,Thread1获得锁之后,对共享资源进行操作,其他线程未获得锁的线程只能等待Thread1释放后才能进行对应的操作。但是...
2022-06-06 17:49:01 137浏览 0点赞 0回复 0收藏
另外还应该注意的是,在我们设置锁的时候,还需要带有自身服务的业务属性,否则容易造成错乱。为什么这么说呢?举个栗子,库存服务在加完锁之后开始执行扣减库存的任务,当扣减库存完成之后,服务挂了,原先需要删除的锁资源,等到过期之后被Redis删除,此时库存服务2可以继续申请锁,如果此时库存服务1恢复了,它并不知道锁资源已经释放,起来后立马删除了库存服务2加的锁,那么此时就会出现两个问题:1、库存服务执行完库存扣...
2022-06-06 17:48:11 151浏览 0点赞 0回复 0收藏
引言其实网上有很多关于ThreadLocal的文章了,有不少文章也已经写得非常好了。但是很多同学反映还有一些部分没有讲解的十分清楚,总觉得有一些疑惑没有理解的十分清楚。因此本文主要结合常见的一些疑问、ThreadLocal源码、应用实例以注意事项来全面而深入地再详细讲解一遍ThreadLocal。希望大家看完本文后可以彻底掌握ThreadLocal。ThreadLocal是什么?它能干什么在阐述ThreadLocal之前,我们先来看下它的设计者是怎么描述Threa...
2022-06-06 17:47:52 136浏览 0点赞 0回复 0收藏
经过上述的源码的分析,我们可以得出这样的结论,ThreadLocal之所以可以实现变量的线程隔离访问,实际上就是借助于Thread中的ThreadLocalMap属性来进行操作。由于都是操作线程本身的属性,因此并不会影响其他线程中的变量值,因此可以实现线程级别的数据修改隔离。为什么会出现OOM?内存泄漏演示我们都知道,ThreadLocal如果使用不当的话会出现内存泄漏的问题,那么我们就通过下面的这段代码来分析下,内存泄漏的原因到底是什么...
2022-06-06 17:47:43 134浏览 0点赞 0回复 0收藏
引言相信通过前面几篇文章的介绍,大家对于DDD的相关理论以及实践的套路有了一定的理解,但是理解DDD理论和实践手段是一回事,能不能把这些理论知识实际应用到我们实际工作中又是另外一回事,因此本文通过实际的业务分析把之前文章中涉及的理论和手段全部带着大家走一遍,我想通过这种方式,让大家实际的感受下DDD落地过程中会遇到哪些问题以及我们应该怎样去解决这些问题。项目需求信息这里还是大家比较熟悉的电商场景来进行说...
2022-06-06 17:47:20 207浏览 0点赞 0回复 0收藏
Elasticsearch是什么?它能干什么?Elasticsearch(以下称之为ES)是一款基于Lucene的分布式全文搜索引擎,擅长海量数据存储、数据分析以及全文检索查询,它是一款非常优秀的数据存储与数据分析中间件,广泛应用于日志分析以及全文检索等领域,目前很多大厂都基于Elasticsearch开发了自己的存储中间件以及数据分析平台。从核心概念开始LucenceLucene是Apache下的一个子项目,是一个开放源代码的全文检索引擎工具包,但它不是一...
2022-06-06 17:46:10 130浏览 0点赞 0回复 0收藏
获得成就
已积累 1053 人气
获得 1 个点赞
获得 0 次收藏