首页
学习
活动
专区
圈层
工具
发布

mysql中的各种锁把我搞糊涂啦~

大家好,我是公众号:java小杰要加油, 今天来分享一个关于mysql的知识点——mysql中的锁 话不多说,直接开车 事务并发访问情况 读-读 情况 并发事务读取相同的数据,并不会对数据造成影响,允许并发读...A :事务T1在更改这条数据前,就先内存中生成一把锁与此数据相关联(is_waiting为false,代表没有等待),然后咔咔一顿操作更改数据,这个时候,事务T2来了,发现此记录已经有一把锁与之相关联了...,就把T2的锁结构的(is_waiting为false,代表没有等待)然后把T2事务对应的线程唤醒,T2获取锁成功继续执行,总体流程如上。...不过贴心的我还是列出来了 注:√代表可能发生,×代表不可能发生 隔离级别 脏读 不可重复读 幻读 读未提交(read uncommitted RU) √ √ √ 读提交(read committed RC...其实有两种方案 方案一 :读操作使用MVCC,写操作进行加锁 mvcc里面最重要的莫过于ReadView了,它的存在保证了事务不可以读取到未提交的事务所作的更改,避免了脏读。

59220

我把学习路线都开源了!

之前,为了防止被一些无良机构直接拿去推销,我只提供了文章和思维导图文件给大家。...但现在,因为有了更多支持我的小伙伴,所以我也不去考虑那么多了,直接把所有的学习路线原文档开源,大家可以随时免费下载、根据情况修改和定制!...仓库:https://github.com/liyupi/code-roadmap 这一次,我还提供了稳定的文档网站,大家可以随时随地在线阅读、自由搜索内容: 网站:https://luxian.yupi.icu...这里我建议把大家平时写过的笔记、文档都整理好,可以试着用这种工具把它们转化成网站,也是属于自己的财富。 最后,开源还有一个天大的好处,就是大家可以共同来完善和改进学习路线。...毕竟我一个人的力量和水平是有限的,路线也无法做到面面俱到。

1.1K50
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    我承认,我还是把AI应用想简单了

    但很快,我们发现,这事儿有点想简单了。 生成式 AI 的价值不止于此——我们可以用其构造全新的产品逻辑,抛开所有的“历史包袱”,实现一些完全由 AI 赋能、AI 驱动的应用。...笔者也有幸作为媒体代表,参与了“1000 AIdea 应用计划”的评审工作。说实在的,开始评审前。我很难想象当代 AI 开发者的“脑洞”可以大到这样的地步。比如—— 你考虑过去火星种土豆吗?...我说的不是马特 · 达蒙在《火星救援》里的表演,而是真的围绕可行性进行调研,并开发相关的配套应用,创作团队高呼着“让人类农耕文明的火种燃遍银河”的口号,就把这样一份作品“端”了上来。...应该说,如果本次“1000 AIdea 应用计划”的奖品是运载火箭和火星登陆舱,我愿意投票将他们的团队第一个送到火星上,以保障对整个银河系的薯条供应。...看过这三个作品,我再度确信,我把 AI 应用这事儿想得太简单了。有太多的创意,可以在 AI 的辅助下,孵化自不同的有趣灵魂。

    21810

    MQ消息积压,把我整吐血了

    果然出现了消息积压。通常情况下,出现消息积压的原因有:mq消费者挂了。mq生产者生产消息的速度,大于mq消费者消费消息的速度。我查了一下监控,发现我们的mq消费者,服务在正常运行,没有异常。...接下来,我查了一下划菜表,目前不太多只有几十万的数据。看来需要优化mq消费者的处理逻辑了。我在代码中增加了一些日志,把mq消息者中各个关键节点的耗时都打印出来了。...我查了一下划菜表的数据只有几百万。但通过一些监控,和DBA每天发的慢查询邮件,自己发现了异常。...我查看了一下监控,发现kafka消息又出现了积压的情况。查了一下MySQL的索引,该走的索引都走了,但数据查询还是有些慢。此时,我再次查了一下划菜表,惊奇的发现,短短半年表中有3千万的数据了。...当时我跟产品和DBA讨论了一下,划菜表只保留最近30天的数据,超过几天的数据写入到历史表中。这样优化之后,划菜表30天只会产生几百万的数据,对性能影响不大。消息积压的问题被解决了。

    43620

    对不起,我把APP也给爬了

    【凹凸数据】最近更新了一系列爬虫 爬了图片 爬了公众号 爬了视频 这次终于将“罪恶”的小手伸向了APP 下面有请今日的爬虫师—— ---- 大家好,我是银牌厨师豆腐!...同类型的抓包工具还有很多,像Charles、Burpsuite等等 像其中Burpsuite的功能是比较强大的,它们都是PC软件,不是装在手机端,有兴趣的小伙伴可以去了解一下 抓包工具Fiddler 话不多说,我先教大家怎么设置...把该勾上的勾上后,我们回到HTTPS这个界面,点击Actions,选择Trust,安装证书, 这时候我们的PC端的洗菜流程已经完成啦 2、接下来我们就要设置手机端,我们既然要通过PC端拦截手机发出的请求...万事俱备,只欠东风,食材都清洗好了,现在我就教大家怎么利用Fiddler烹煮小程序。 抓包实战 先打开一个小程序网站,我选择的是Q房网,大家看,菜下锅后,Fiddler是不是变化了。 ? ?...这多少个0我都数不对 import pandas as pd import matplotlib.pyplot as plt df = pd.read_csv(r'F:\PycharmProjects

    65110

    DDD——在我梦里,我还能让你把我给欺负了?

    在《夏洛特烦恼》中有这么的一段剧情:夏洛穿越到了他初中的班级里,当他发现自己在梦中的时候,看着一直讽刺挖苦他的老师说了句经典的台词:“在我梦里,我还能让你把我给欺负了?”。...,后续不知道要听什么歌曲了,而网站给我推荐的歌曲都特别符合我对音乐的品味,那用户自然就更喜欢来这里听歌,那么“音乐品味推荐”就是核心域; - 而网站的各个功能其实都会或多或少的使用会员与权限的能力,所以...六、没有技术内容了,就是随便聊聊 昨天我的一位关系很好的百度同事(化名:小A)结束北漂生涯回老家了,心里也挺不是滋味的。 在百度我们有一个吃饭群,一到中午午餐时间,群里就开始“招呼”大家一起去吃饭。...在去年的年中,群里也就剩下几个人还在百度,而晚上吃饭遛弯也只剩下我和小A了,当时就在公司7层遛弯,聊基金股票、聊新闻趣事、聊以后的人生怎么打算的……,一晃也有一年了,当时的一切历历在目。...当时一帮刚毕业的年轻人们,现在还在北京的也寥寥无几了。或许再过一段时间,自己也会离开这座城市吧。 北京依然是那座城,依然会有一帮刚毕业的年轻人们,背着行李,满载梦想,把青春和激情洒满这片土地。

    50510

    同事C代码中的#、##把我秀了~

    ,而##却实现了标识符的拼接,这样就为编码标识符的处理上能够带来更多的可玩性。...首先要知道原因 : 进行宏定义嵌套的情况,#或者##仅在当前宏有效,嵌套宏中不会再次展开,既然当前宏无法展开,那么我只能再加一级宏定义作为转换宏进行展开,看能不能解决该问题: #include <stdio.h...3 ##的玩法 ##拼接符的玩法有点多,甚至有些还比较绕,当然如果你游刃有余的话,这对于重构代码是一把“ 利器 ”。...所以关键还是你要清晰的把拼接变量找出来,bug菌这里仅展示了一个拼接变量,当然多个也是同样没有问题的,跟我们函数传递参数一样,不过这样也会增加整个替换的复杂度,合理利用即可~ 最后 好了,今天的内容就分享到这里...,我仍然是我,一直没变,觉得有所收获,记得点个赞~

    72710

    我把GPT接入微信了

    费了好大劲,终于是把GPT接入微信了 前言 其实现在很多人不会使用魔法 更别说使用ChatGPT了 旁边不少人和我说,想用ChatGPT 但是太麻烦了 需要 魔法 海外手机号 邮箱 邮箱的问题还好 但是魔法和海外手机号...,难倒了八成的人 所有这里就想弄微信版的gpt,让大家能直接使用 目前部署了一个微信小号 支持个人聊天和群聊 个人聊天 先看下效果 在个人聊天界面,需要以bot开头 不然gpt不接收此消息 以bot开头的消息...才会被认为是问它的 群聊模式 我也创了一个测试群 这个样子的 进群会有一个欢迎语 你可以直接@它,后面接你的问题 他会在思考后给你答案,并@你 最后 目前这个接的是chatgpt3.5 chatgpt4...的成本比较高,没有上 个人体验了一下,还可以,不过自己一般都是直接用gpt4 在微信使用的少 除非有时候手机用户方便,直接微信提问 还是不错的!...想要体验下可以留言 由于只部署了一个号,而且怕聊天太频繁,微信封号 在加上GPT api也有一定的成本 体验的人可能不会太多

    27800

    漫画 | 我把面试官整崩溃了~

    下半部分,还没有看过的朋友可以先看一下哦,讲述的是上一篇中王大拿受不了不懂技术的领导,各种无理的需求与内卷,有了跑路的想法,在面试中发生的一系列故事… 编后 年底了很多同学肯定都会看机会,很多都是年前面试...,年后拿了老东家年终奖再入职,算的上是完美跳槽了,但在面试过程中,经过了层层通关后,步入面试尾声时,技术面试官/HR等通常都会在结束面试前,抛出一个问题:“请问您还有什么想问的吗?”...在这里我收集了几点大家比较认可的建议: 您能谈谈我即将共事的团队吗? 您工作在这儿最喜欢的一点是什么? 您能告诉我该职位的日常工作和安排吗?...,放心大胆的去问吧,面试本就是双向选择,不要带着疑惑和顾虑去了这家公司,否则就有可能跟漫画中的王大拿一样哦,从这个坑掉进了另一个坑…… 切忌,漫画情节不可模仿哦,学王大拿问“会不会跑路…”,你就真完蛋了…

    84420

    终于,在2019年公司把我(们)裁了

    在某个午休的中午,我还沉浸在梦乡的时候,部门领导把我叫过去,我一看领导脸色也不是很好,心想我这也没犯啥事啊,看领导脸色还是有点方的,然后语重心长的让我坐下来跟我说了一大堆公司的近况,总结来说就是,公司最近状况不太好...事情发展 听到领导说被裁了,心里还是有点方的,毕竟年关了,再去找工作也不是很好找,而且今年冬天巨冷,心想裁了就裁了吧,那也没办法,后来回到座位上跟朋友说这个事,朋友问有没有补偿,我脑回路才走回来了,我刚才都没问...,想着第二天再提离职好了;等第二天早上去公司,有一同事把我拉到一个群,我一看都是公司被裁的,人数快60个了,后面一打听,说是这次裁员有一半的员工(实习,试用,正式)都被裁了,而且得到的回复都是不给任何补偿...只不过是补偿多少的问题,到第二天下午,HR把我叫过去谈话,给了我一张解除劳动合同通知书,说要么签字和平解决拿离职证明,要么你就去仲裁,呵!...这种单方面的解除劳动合同搁谁谁受得了啊,还不给补偿,那肯定是要通过法律的手段来解决了,亏的我头天晚上还打算提离职算了,毕竟是试用期,这回我选择刚到底,昨天知乎上也提问了一波,大家都说是可以拿到补偿的:

    1K10

    我是怎么把研发安全做“没”了的

    把项目源码导入,它就会自动化利用已有规则进行安全检查,嘿你别说,这工具还挺灵光,一个项目就能扫出3000+漏洞!再来我把漏洞报告提交给研发人员修复,我的工作就万事大吉啦!...然而事实告诉了我,我不仅Too Young,而且还Naive。 ?...我忽略了一个严重的问题,集团研发项目进度普遍较快,各环节里程碑时间都较为紧凑,研发人员工作量、交付压力普遍较大,故在有限时间下,习惯性将主要精力聚焦在功能问题,主观意识上未将研发安全归为己任,加上DAST...看着手拿白帽子漏洞报告的老板逐渐垮下来的嘴角,我不禁感到丝丝凉意……于是决定拿出我最后的倔强。 既然项目已经上线,不敢贸然做业务切割的排查,于是我购买了最为一流的WAF,把规则控制得天衣无缝,什么?...我是王大锤,我成了马栏山不省心集团的研发安全工程师,万万没想到,最终一通操作之后,我从研发到测试甚至上线后的安全建设全部名存实亡,成功把研发安全做“没”了。。。

    76620

    终于,我通宵把自己的博客怼上线了!!!

    你好呀,我是歪歪。 我趁着中秋三天假期,终于把自己的博客给怼上线了。 我真的太难了。...我把自己之前写的 130 篇文章都搬过去了,还剩下 10 来篇非技术文没有搬运,实在是搬不动了,估计得等到国庆的时候再去搬运了。...荒腔走板里面,我就是把之前散落在文章开头或者结尾的里面的那一部分拿出来了,都汇总在这个里面。 技术之外的东西,就是荒腔走板。 网站里面其实就是这些东西,现在就是一个很简单的雏形。...最后,我在博客对应的数据库里面统计了一下,竟然写了近 82w 字了: 文章搬运的过程中,疲劳作业,难免有点瑕疵,如果大家发现了的话,还请给我指出来,我加以修改,谢谢大家。...最最后,这次整理博客真的是把我给累的够呛,也感谢女朋友在搬运期间给我的各种加油打气。 开个赞赏,大家觉得还行的话多多鼓励。 我也好凑点服务器的钱。

    44510

    Leetcode大大,对不起你,我把你当成测试平台了

    碎碎念 首先,我要为leetcode大大唱一首歌:听我说,谢谢你,因为有了你,温暖了四季,谢谢你,感谢有你,世界更美丽......其次,我要向leetcode大大说一声:对不起,抱歉,我把你当测试平台用了 标签 贪心、动态规划 题目地址 435....intervals[i][1]; } } return intervals.size() - cnt; } 小码匠:第3次提交 继续优化 怀疑是循环中每次计算size导致,把数字长度提取到了循环外面...测试case:真是打不死的小强,又over了 通过:57 超时:1 依然超时。。。...这要这是事实,你就该确实说出来,因为说出来可以获得编译器的囊助,确保这条约束不被违反 关于i++和++i区别,我习惯用i++,没有注意到++i的区别,老码农又拽给我一篇文章,让我自己去看,知道他也讲不明白

    37710

    一道React面试题把我整懵了

    这是小弟第一篇文章,有啥潜规则不懂的,你们就告诉我。小弟明天有分享,等分享完了之后,继续完善。...万一下次别人要移除它,就得去 mixin 中查找依赖多个 mixin 中可能存在相同命名的函数,同时代码组件中也不能出现相同命名的函数,否则就是重写了,其实我一直觉得命名真的是一件麻烦事。。...雪球效应,虽然我一个组件还是使用着同一个 mixin,但是一个 mixin 会被多个组件使用,可能会存在需求使得 mixin 修改原本的函数或者新增更多的函数,这样可能就会产生一个维护成本HOC 解决了这些问题...hooks父子传值父传子在父组件中用useState声明数据 const [ data, setData ] = useState(false)把数据传递给子组件把请求的数据和 Action方法分离开,以保持 Action的纯净。

    1.6K40

    一道React面试题把我整懵了

    这是小弟第一篇文章,有啥潜规则不懂的,你们就告诉我。小弟明天有分享,等分享完了之后,继续完善。...使用这种方法,我们不需要担心this,它会自动绑定到组件实例身上,但是这个API已经废弃了,所以只需要了解。...参考:前端react面试题详细解答但是这种写法相对2,3繁琐了许多:1....针对一些复杂的组件(要绑定的方法过多),我们需要多次重复的去写这些方法名;无法单独处理传参问题(这一点尤其重要,也限制了它的使用场景)。...具体的我也没细看,有需要了解更多的,可以看一下这篇文章Arrow Functions in Class Properties Might Not Be As Great As We Think据此,我们已经

    56530

    什么是Spring Cloud项目,我把它讲清楚了

    就像学校里面做的项目,搞定前端,数据库,部署到服务器,把WEB应用 APP做出来就是以前的单体架构。 其实就是给你用的,基本部署到一个云服务器。...遇到并发和大流量,基本就Over了。 SOA架构 应用软件over了,企业损失惨重,你也可以滚蛋了。一台最垃圾云服务器1G运行内存加50G空间,虽然垃圾,但是我几个服务器一起上。...一个挂了,还有几个撑着,然后我们赶紧把挂的重启,这样不就可以顶住了吗,这就是SOA架构,全面就是Service-Oriented Architecture。...你把企业都有的私密的源码都知道了,万一你突然间要挟涨薪。这时候,就将一个项目分成几个小项目。一个小项目负责一个功能实现,再整合起来,不就是一个大项目。...但是, 2018 年 的断更,也是 Netflix 掉链子了。

    1.7K20

    花了两个星期,我终于把 WSGI 整明白了

    但是今天我并不准备讲这些,一是因为我不怎么熟悉,二是因为我本人从事 OpenStack 的二次开发,对它比较熟悉。...这张图把一个 HTTP 请求粗略简单地划分为两个过程。但事实上,整个过程远比这个过程要复杂得多。...但是,我在阅读 routes 代码的时候,却发现了另一个令我困惑的点。 self....而是 nova.api.openstack.wsgi.ResourceV21 类的实例对象,说白了就是Resource对象。 看到这里,我有心态有点要崩了,怎么还没到 Controller?...至此,一个请求从发出到响应就结束了。 ---- 你能看到这里,真的很难得,本篇文章干货还是不少的。因为我自己不太喜欢讲理论,所以此次我结合了项目,对源码进行实战分析。

    2.1K21
    领券