粉丝14.1万获赞173.2万

前端加法就是死路一条,不管你愿不愿意相信,唯一的出路就是找 a i。 现在干的很难受吧,工资也上不去,每天都在担心被裁员,好像再深入学习也没什么太大意义了。接下来摆在你们面前的就是三个选择,第一个,继续上班,继续卷。第二个,送外卖。第三个,创业。创业我就不说了,成功率百分之一。你 如果不想把你过去的血汗钱全部亏进去,那就只有前面两个选择。所以如果你觉得程序员的待遇还不错,还想继续上班,那就接下来把我要讲的好好听一下,否则直接划走拉倒。接下来我将从宏观和微观的角度来分析, 为什么前端架构的出路只有转 ai。 我 们先来看宏观,我们看一个行业有没有前景,你的工资高不高,就看这个行业有没有钱。全球现在所 所有的头部企业,腾讯、阿里、谷歌、智捷、微软等等至少几十家,他们平均每年在 ai 领域的投资是五 百亿,每到一年加起来绝对过万亿,这都是公开可查的数据。不是我在这里大嘴一张乱讲,那这是什么概念呢?我给你们一个参考。现在不是有很多人在吹鸿蒙吗?说,哎呀,鸿蒙牛逼,我们搞鸿蒙,但是你知道鸿蒙这么多年的总投入在多少呢? 只有五百亿人民币不到,所以 ai 的 市场空间是红红的,多少倍我都算不清楚了,你们算吧,一百多倍吧。为什么前端跟 java 现在干的这么难受,你十卷工资也上不去?有一个概念叫做康波周期,什么意思呢?任何行业他都是有生命周期 的,不可能长青,基本上就是十年,你可以看一下建筑行业以前牛逼吧,也就十年的高速发展。那前端 java 它是属于哪个周期啊?它是属于移动互联网周期崛起的 时间线,大概是一五年到二五年。一五年只要是一个人,你在简历上写着几个字,我是程序员,你出来就能拿一万到二零二零年,这个行业发展到巅峰,当年我记得一个本科校招,学校稍微好一点校招啊, 年薪能够到五十万,你现在再出去看一下,你可能想年薪五十万得清北了。到二五年,这个行业基本上没有什么上升空间了,岗位不再增长了,薪资也在下降,所以钱呢,和家瓦大概已经 发展到末期了,周期它是逃不掉的。但是 ai 呢?你什么时候听说 ai 的? 也就今年吧,包括全球各个企业在 ai 领域的大量投资也是从这两年开始的嘛。所以 ai 还只是处于一个行业非常早的时期,它至少还有五年非常快速增长的时期, 远超你的想象。包括你在想一个问题,你现在还写代码吗?你看前端加码不写代码呢,你的核心竞争力就没有了,未来是很容易被取代的。所以无论从哪个角度来讲,就两个字,前端加码没有前途。 接下来我们再来从微观的角度来分析,你看啊,在一五年的时候,前端想拿个十五 k, 需要会哪些技能?只需要会 h t m i 四 s s g s j k r。 这个老一代程序员可以回答一下我说的对不对,因为我就是这一代,我就是一五年进的前端行业,但是卷到后面五年以后,哎,你需要会锐志 v u e 了,薪资还是十五 k。 再到后面你要会 webpack、 快 捷、 node nex 的 微前端,薪资还是十五 k, 但是你掌握的技能,你大脑中装的前端知识比十年前至少多了三倍不止。 薪资是一样的,学历要求也提升了,最开始是只需要大专,后面到本科,后面再到要一本,那我们再来看 java, 它也是一样的,一五年的时候你只需要会一个 supreme, 分 不分表。再后来到了现在,你需要会微服务、分布式销售,对,你薪资还是十五 k。 拿同样的薪资,你所需要学的东西是十五年的三倍。这里我们可以看到什么叫规律,那 ai 行业同样如此啊,现在你去面 ai 应用开发工程师, 只需要会大模型 rap 浪向,就对应一五年前端的 h 向量, c s s j s 节块率。 五年以后,哎,可能你同样拿十五 k, 你 需要懂项目架构,需要有很深入的难点、亮点,包括再卷五年,那可能又需要去懂底层原理了,大模型怎么实现的,那个怎么实现的,各种各样的原理。所以因为我看到了规律,所以这一次 我直接给大家设计到十年以后卷的程度,我们直接干到这里,所以我们第一阶段对标十五 k, 第二阶段直接对标二十五 k, 第三阶段就对标三十五 k 的 程度, 我们一直接一步到位,你想想十年以后的你涌向市场竞争力多强,直接把你所有面试同一个岗位的竞争者全部秒杀,你就是 number one, 这就是我们的体系, 程序员最大的对手就是自己,两个字,拎吧。程序员最大的心魔其实是自己。总觉得,哎,我学了前端 java, 好 像把它放弃,转一个方向我丢了,是不是可惜了?但是选择大于努力,把这几个字给我牢牢记在心里,树挪死,人挪活,好好想一想,到底以后的路该怎么走。

面试被问到怎么设计一个支持手机、 pad 和 web 多端的扫码登录系统,你要是敢跟面试官说,哎,这简单,前端写个定时器,每秒轮询数据库呗,那你的面试基本就凉透了。首先大家思考第一个问题, web 端生成了一个二维码,他怎么知道手机到底扫没扫?很多同学第一反应真的是轮询。大家想想啊,如果是双十一这种高峰期,十万个人停在登录页,你每秒发十万个无效请求,去砸服务器, 你的 tomcat 不 喔姆升天等啥呢?那怎么优化?你看下面这条发光的线,必须要上长连接,用 web socket 或者 http 长轮询发请求后的在咱们右边这个 get 位网关层,手机一旦扫码了,网关主动把状态推给前端,就这一步改变,直接干掉百分之九十的无效并发症,懂了吧? 好,连接稳住了。第二个问题来了,二维码的状态咱们存哪存?买车库吗?千万别这种几分钟就不要的临时数据,读写又这么频繁, 你让数据库去扛,绝对不行,咱们肯定得上 reddit 啊!大家看,这里,以二维码的 u u id 作为 key 丢进 reddit, 顺手给个五分钟的过期时间,当生成是初识化,手机一扫变成已扫描,待确认点确认了,变成已确认了 五分钟,没人理它,自动过期被清理,这叫什么?这就叫优雅的临时状态机。那么问题又来了,状态扭转了,咱们这系统就绝对安全了吗?大家脑补一个场景, 如果你在网吧上网,骗子把网吧屏幕上的二维码截图发给你,骗你说,哥哥帮我扫一下,砍一刀,你单纯啊,你拿手机一扫,坏了骗子,直接在网吧登了你的号,这叫什么扫码劫持啊?那怎么防呢?记住核心原则,手机扫完码绝对不能直接登录,必须要跳转到一个确认页,并且在这个时候,后端必须要校验环境上下文 扫码的机器 ip 在 上海,点确认的手机 ip 在 尼日利亚,你敢让他登?直接风控拦截或者弹人脸识别。防住了骗子,咱们再来看看这道题题干里挖的坑。多端手机 pad web 你 在 web 端扫码,要的是完整的网页版权限,但你在 pad 上扫码,可能只需要一个能看视频的降级权限, 你总不能把手机最高级别的 token 到处乱发吧?那怎么做权限隔离?看这里,手机端点击确认登录的时候,除了传 u i d, 还得把你要登录的是什么端,也就是 client id 带上来,后端一看,哦,是个 pad 是 吧?给你单独下发一个 pad 专属的降了级的 token, 不 同的端走不同的键权,互不干扰。 最后最要命的来了,就算你前面全答对了,面试官再逼问一句,如果是百万并发微博,浏览器连的是网关节点币,但是手机扫码确认的请求被打到了另一台服务器上,那后端怎么把登录成功的 token 精准的跨机器推给那个一直在等着的外部浏览器呢? 难道去便利所有的服务器?当然不行,这时候咱们必须引入 m q 消息中间件业务端发个广播,各个网关节点一听,哎, 这个浏览器的 web socket 连的是我这台机器,然后节点币立刻把 token 推给前端,其他节点直接丢弃消息,这才是真正的大厂分布式网关路由。讲到这里大家明白了吗?一个小小的扫码登录,里面竟然藏着连接调优状态机设计、风控安全、多端隔离和集群消息路由。


上个月被裁员了,加完被裁员是因为公司开始用这个 ai 抠钉,这个被优化掉了。明白,我现在对我现在最大的问题就是彻底找不到工作了,因为我的学历可能是一个大问题,因为我是自考本科, 因为我做了七年的 java 开发技术,算是中高级。现在最大的问题就是我投出去的简历的话呢,就没下班了,半个月了,基本上几百份简历都这样,十三左右。 对,这个确实不高,因为我感觉是市场上一点机会都不给我了。其实学历只是一方面,但是他不占主要优势。问题是现在市面上和咱们一样段位的一样做七年的人大把在有本科的,有一本的,二幺九八五的,甚至有些是本硕的, 他都是目前在和我们在竞争这个招商岗位,所以这个招商对于咱们来说确实不占优势,不如我们就把这 ai 应用开发给搞好。我倒是了解过这个方向,但是我现在为什么犹豫?我担心我付出了时间和精力去甚至是金钱去学习了之后,这个市场上依旧不给我机会,因为 我已狗被搞怕了,因为这个岗位非常缺人,你的技术和项目问题这两个能不能解决后面?所以说你现在其实一方面是在技术板块,一个是开发经验,你具备了, i q 定你学一学,其实你也能掌握,其实后面这几个技术也不多,就这么几项技术,当然不需要你用的很深。 其实在这个板块可能是项目能力,他们可能是欠缺,之前可能没有做过 ai 项目, ai 的 项目比较少,所以你需要把这方面给重点补齐一讲啊,刘哥,你的最终建议就是说不要再加大这块死磕了,就直接转到智能体开发。行,那我知道了,行,谢谢刘哥。

好,今天我分享一下我个人的 java 加 ai 的 学习路线啊,因为我当时自己在学的时候就网上没找见什么学习路线,导致了啊走了很踩了很多坑嘛。然后今天我就来分享一下我自己的吧。 我第一个学扎瓦入门基础就是学习这个从入门到起飞一共上下步两边,上面主要就是学习他的树叶类型,左上边的向下下步的话主要学习他几何四十五六分异常。这个多线程的话大家可以看就可 ok 了,因为后面还要学习。还有一个要仔细学一下这个多线程,然后大家一定要用这个马克当记笔记, 把大家觉得中南点的一定要记住记住。然后下一个就是学习这个麦瑟克数据库,我认为学目前小白的话,学到基础篇就 ok 了,如果有基础的话可以把精编篇、原理篇也学了。然后下一个就是 j b c, 它是 java 跟数据库连接的底层,大家也可以去学一下,三个小时就学完了。 下一个是 java, 这个就是正式的跟前端跟数据库进行一个交互的,然后它里面也会有讲前论的知识,大家这个一定要仔细听啊。 然后下后面是一个 get, get 就是 我们程序员用来上选或拉取代码的,这个是我们程序员必会的一个,然后下一共三十分钟,后面下一个就是使命步的正式开始学习。框架也是一个非常重要的一个框架,我们主流开发现在目前就是用它, 然后自己就可以学完,之后就自己做个小项目,然后又 get 上人到马云,他是你的第一个作品,然后前前段的话可以用 trees, trees n c n 这个我建议小白用这个就 ok 了,这个是免费的,扣死的话这个是收费的,但它的功能也是比较强大的。然后下面学习这个 letis, 它是非常非常重要的面试必问的。 然后大家它里面有个黑马点评项目是非常重要的,写的也非常精彩,大家一定要自己再重新手写一遍,手敲一遍, 后面再学一个 linux, 然后为我们为服务打基础,为服务里面会配,为服务会在这个 linux 里面配置,然后这个是什么 kind 的 为服务,然后它里面基本上都是一些数件,一些基本的配置,大家一定要跟着一块配置,然后到时候它是我们第一个可以正式写到简历上的项目, 然后大家一定要把里面用用上的中间架都写上去,然后其中的 radis 我 认为是非常需要重点关注的。然后的话我们在写项目的时候,我当时是参考了 get 上的一个,然后 给大家重新找一下 get, 大家要根据自己需要需要的类型来找一下,如果大家有 get, 打不开的可以来私信我。然后我写的是电商项目 有点慢啊,大家一定要先看一下它的评分,这个评级它是这个一看非常多啊, 它底下下面的话也会有各种介绍它这个项目它用到了什么工具, 然后学习完这个之后还可以去在里面加一个 security, 它是专门用来做安全模块, 本来说登录跟交易的框架,放在这个微服里面也是一个非常加分的项。然后学习完这个之后就开始学习 smartisan, 它其实就很简单,就是调用 ai 的 接口, ai 都已经 smartisan 已经把我们封装好了,我们直接调接口就 ok 了。 然后这两个的话其实没有啥区别,一个是这个是在项目中教给你方法,然后这个是直接把方法教给你了,看个人吧。这个然后学习完之后再自己把这个 ai 接口放到自己的微服务里面,然后这时候就可以图简历找实习了,如果时间充裕的话也可以去学习一下这个病发根 jvm。 呃,我感觉啊,这个并发优先级要在 jvm 之上,因为我录小白的话,他我感觉面试官不会问你问小白 jvm 的。 那如果这个都学完之后就开始可以刷立扣了,准备八步。

申请加拿大意义入池,以及在收到邀请后的六十天内,在准备要递交一个完整的移民申请的这个过程当中都有哪些注意事项? 哈喽,大家好,我是凯西 cec。 我 们常说的经验类移民,跟咱们绝大多数留学生都息息相关, 基本上你在加拿大累积了工作经验之后,都要通过 c e c 经验类移民去申请这个永居身份。大家知道 e e 呢,是一个打分系统,它对于申请人的年龄、学历、工作经验、语 言分数啊这些呢,都是它的打分因素。那么第一点,我们说什么情况下可以入职 e e? 对 于在加拿大境内这个应届毕业生来说,你累积完加拿大的一年工作经验以后, 你才符合 cec 的 经验类移民啊,你才可以入池。但是啊,虽然说你一一入池需要十二个月的工作经验,但实际上这个系统有个 bug, 在 入池的时候,只是按照 这个你工作开始的年跟月份去计算。那比如说你是二零二六年一月二十号开始工作的,那其实你不用等到说二零二七年的一月二十号开始工作的,那其实你不用等到说二零二七年的一月二十号你才入池。 其实你到了明年二零二七年一月,只要进入一月份之后,你就可以入池了。但是呢,在入池之后,如果说在你满十二个月工作经验之前收到了邀请, 此时你不要急于递交,因为此时呢,你的工作经验没有满十二个月,所以你要等哎,等到二零二七年的一月二十号之后再去递交。这个完整的申请 意义是在你申请人收到邀请后的六十天内,可以去递交一个完整的移民申请。第二个注意事项就是申请人的语言成绩的有效期,语言成绩是两年有效,那么当你入职之后,现在由于意义的邀请分数一直这个高居不下,所以呢,在 池子里的申请人可能会等很久。咱们的留学生啊,一定要去看一看你的语言成绩的有效期到什么时候,比如说你在入池的时候,以及现在入池以后, 你的语言成绩仍然有效,但是呢,即将要过期。比如说你在下一轮邀请当中收到了邀请,这个收到邀请之后,大家一定要注意啊, 不是说你收到邀请了,你的这个成绩单的有效期就被锁定了,你需要在你递交完整的移民申请的当下的那一刻,都要保证你的语言在有效期内。 所以这是一个大家务必要注意的误区。你如果在递交移民申请的时候,你的语言成绩已经过期,那么你的移民申请一定会被拒签。 第三点呢,要注意的就是年龄,大家要知道你在入池之前,比如说你的年龄是二十九岁,此时你收到邀请,即使你刚刚过完生日,你的年龄变成了三十岁,此时 这个你的总分数是不受影响的,它不会扣掉你的年龄分数。所以说简单理解呢,就是在你收到了 ita 邀请之后,除了年龄是这个锁死的,其他的信息都要保证在你递交最终版的移民申请的那一刻,一定要有效。 看似简单啊,比较直接的,这个意义申请当中其实有很多的细节,如果说你拿不准,或者是你已经收到了邀请,在纠结自己要不要自己去 diy, 还是说找专业机构,那凯西还是建议大家慎重一些啊,尽量找专业人士来办理, 因为现在的加拿大移民非常难,你好不容易收到了一次邀请,如果说在申请上出现一些错误而导致被退件,或者严重的情况下导致拒签,那么你这个试错成本是非常高的。不像说以前啊,他邀请的频率很高,分数也比较低, 即使申请被拒签,你之后收到邀请的概率仍然很高。但现在完全不是了。现在每一位申请人,无论你是通过省提名还是这种意义打分, 你拿到的每一次申请机会都有可能是你最后一次申请加拿大移民的这个机会。所以呢,大家要小心再小心。凯西也祝愿大家在未来的移民申请上一切顺利,如果你遇到什么样的困难或问题,都可以找我聊一聊。

开始突然之间不能发布应用了,但是纯量的服务却是可用的啊。这个问题是我上个礼拜收到一个粉丝的求助的一个内容,他跟我说他的服务啊在之前是没有做任何的改动,但是 就是突然之间啊不能发布了,原因是什么?让我去帮他们看一下。那这个问题当然是解决了,就其实很简单,这个问题理论上只要你用过了,开发时这个问题就很简单啊。屏幕前的各位网友也可以思考一下这个问题是什么问题?有可能是什么问题?其实这个问题非常非常简单,这个问题其实就是啊证书过期,说白了就是证书过期, 因为,呃,很多没有上过生产的,呃。这个 k 八十选手呢?呃,最容易忽略这个问题,为什么呢?因为你在自己做实验的时候或自己玩的时候是不可能会说一个鸡群,我玩一年对吧?他可能就是你搭好的,这过几天对吧, 就不玩了,就给他消毁了。所以真正运行超过一年以上的只有在生产环境。所以说这个问题其实理论上也可以用来啊,顾虑掉很多啊。这个实验型的 运维出来,他没有任何生产经验,他可以假装说他有生产经验,他有一些 k 八十的这个知识,但是你只要通过这个知识点去问他一嘴,他绝对啊很可能就露馅,就能把这个 k 八十的新手给它过滤掉。这个是一个非常简单的一个问题啊。 但这个问题其实修复的话就非常简单,因为开始它本身有这个命令,可以一键更换证书,那替换完之后要做的一些事情就这里就不再复述了,无非就是说你做完之后,你需要把这个证书分发到所有提现里面,当然这个动作其实可以通过流水线定时去啊做维护, 如果说啊,你还需要人工去维护,我觉得是真的是没有必要的,为什么?因为这个东西一个命令就可以解决的事情,分发这个证书其实也很简单啊,所以,嗯,这个问题,呃,大家可以提前去 看一下这个证书是怎么回事,就是什么时候过期,然后在接听流水线里面定时的去更新,这样的话你基本上不用担心这个证书过期的问题了。好,本期咱们下期再会。

今天刚灭了一个五年 java 后端,我问他 myico 主从延迟怎么产生的,他巴拉巴拉讲了一堆,最后说加从库做读写分离就能解决。我追问了一句,线上从库延迟半小时了,用户刚下单就查不到订单,你怎么处理?他愣在那答不上来。 真实翻车,一个哥们做的订单系统,用户下单后跳转详情页,结果白屏读不到数据,前端以为是缓存问题,后来排查发现从库延迟了四十秒, 存库追上来了,页面才出来,但用户体验已经凉凉了。如果你担心简历上的东西讲不出来,我已经把面试经常问到的技术站场景题都整理好了, 只要你是我的粉丝,留言六六六,打包带走。 my sql 主存延迟四个必须搞清楚的点,一、主存复制的基本原理,主库执行 sql 写入 binlog, 这个过程是同步的,从库 i o 县城拉取 binlog 写入 relay log, 从库 c 县城重放 relay log 执行对应的 cork, 整个链路是异步的,网络抖动, c 口执行慢都会造成延迟累积。二、怎么判断存库延迟了多久? 看 seconds behind monster 这个值不准,它基于存库本地时间计算,主同机器时间不同步就废了。网络抖动时可能显示零,实际延迟正在拉大。 准确做法,对比主库和存库的位置差距,或者直接查同一行数据的时间戳。三、延迟的常见原因,大事物,一条 c 口执行十秒,那这十秒存库都追不上。 存库压力大,大量复杂查询都打到存库 c 库,县城忙不过来。网络延迟,主存之间网络不稳定,硬件差异,存库机器比主库差太多。 四、解决方案,强制读写分离,关键读操作走主库,不依赖存库延迟检测加降级监控,存库延迟超过预值切到主库。半同步复制主库写入后等至少一个存库确认比异步安全。 gt。 id 复制,每个事物有唯一 id, 切换同步时不用找 position。 面试高频追问,半同步和全同步有什么区别?半同步主库写入等至少一个存库确认就返回全同步,主库写入等所有存库都执行完才返回。 全同步延迟最大,但一致性最强。半同步是折中方案。 g t i d。 复制比传统复制好在哪?传统复制靠文件名加 position 定位,存库已经读到哪里了? position 容易出现 relog 损坏,导致复制中断。 g t i d。 基于事物 id 自动跳过已执行的事物更稳主,从延迟这事,表面看是卖 cq 的 配置问题, 实际上考验的是你对读写分离架构的理解,只会加存库不是本事。能说清楚什么场景该走主库什么时候可以等存库才是真正过了关。你们公司现在存库延迟超过五秒,会直接切主库读吗?评论区聊聊。

做后端面试这么久,我发现一个很扎心的现象,很多工作五年的扎挖后端,简历上写着,精通多县城,熟练运用县城池,一问线上真实故障,瞬间就露馅儿了。我当场抛了个生产高频问题,为什么大厂坚决禁止用 executeers 直接创建县城池? 线上经常莫名 cpu 拉满频繁 o o m, 根源到底在哪?获奖人随口就答,应该是县城开多了,任务太多卡住了吧?说实话,这个回答太表面了,完全没摸到本质,只知道县城多会出问题, 却不懂无界队列。无界县城缺少拒绝策略带来的致命隐患,根本达不到生产架构的要求。如果这个问题你也不会回答,我整理了让大厂 hr 沉默的必考题,大厂高频场景题等, 点个赞,评论区甩六六六,打包带走!哇,好棒好棒,真厉害!今天一次性给大家讲透大厂生产环境现成池的核心逻辑,听懂面试直接加分儿! 第一,别再迷信 executives 工具类 new catch phrase 现成无上限高并发症,瞬间把 cpu 打满 newfix tree prom 队列无边界,任务疯狂堆积,直接内存溢出 o o m。 第二,生产必须自己手动定义限程池,核心限程数、最大限程数、有界队列、拒绝策略,一个都不能乱配,这是系统稳定性的底线。 第三,搞懂县城池执行流程,先来任务走核心,县城核心满了进队列,队列满了再扩县城,县城到顶就走拒绝策略,层层限流,保护服务不血崩。第四,线上一定要加监控,县城活跃度、队列积压数、拒绝任务数,实时告警,别等崩了再排查,架构思维一定要前置。 其实面试考县城池从来不是问你怎么拗对象,而是看你有没有线上故障经验,懂不懂,高病发限流会不会规避底层坑。后端架构里县城池就是性能的守门员,配置错一次线上就是一场事故。

今天面了个三年 java 后端简历,写精通 spring 事务,熟练用 etranslation, 我 问 etranslation 啥时候失效,他张口就答, feel romantic try cash 吞异常传播行为错,引擎不支持,背的很溜。我再问 private protector 方法为啥失效?底层 aop 原理内部调用怎么解决? 他懵了半天,权限问题, cg l i b 和 jdk 代理区别?他直接沉默 啊兄弟只会背八股,不懂 a o p 代理这叫啥?精通纯背题机器,非 public 失效是大厂高频坑三到五年长灾。我分五层拆解,到第三层才算入门,只会被注解,不懂底层我整理了大厂必考题, spring a o p 动态代理,事务传播,点赞评论六六六直接带走 nice。 第一层基础概念 app 动态代理是 spring a o p 动态代理, 事务是代理对象帮你开,提交回滚,不是你自己写的那个对象在管事务。第二层,代理规则, jdk 动态代理只能代理接口加 public 方法, cglib 动态代理子类继承加重写 public protected, private 方法根本不能被重写,也不能被代理拦截。 default 包级私有同样无法被外部代理拦截。 一句话,只有 public 方法才能被 a o p 拦截,事务才会生效。第三层,内部调用为什么失效?很多人不知道,本类内部调用 this 点叉叉叉走的是原对象,不是代理对象。 at transactional 只在代理对象上生效, this 叉叉叉直接调用原对象,方法不走代理不走事务, 哪怕方法是 public 的, 内部调用依然无事务,这就是线上最常见的坑。外层方法没事务,里面调用带 at session 的 方法,结果整个方法都没有事务数据一致性直接崩。第四层,底层原理, spring 启动扫描生成代理对象,调用代理对象方法,前置增强开启事务执行目标方法异常则回滚,正常则提交非 public。 内部调用代理拦截不到事务,增强不执行。第五层,工程化解决方案,非要内部调用事务方法三种正规解法, 一,注入自己 at otaurus private x x x service self, 然后 self 点 x x x。 二,用 application contest 拿到代理对象。三,拆分方法到另一个 service 跨类调用啊,这个就叫专业, 很多人只会背失效场景,不会解决,这就是普通开发和能写线上代码的差距。最后我问他,你现在觉得自己真的精通 spring 事务了吗? 他低下了头。这道题考的从来不是你会不会写注解,而是你有没有理解 spring aop 底层代理对象和原对象的区别。事物执行链路同样一个问题,有人背八股, 有人能讲清楚动态代理拦截链,线上事故复现和修复方案。如果这道题你也答不上来,我整理了大厂后端高频灵魂拷问 spring 事务连环问 readis 高可用 mexico 锁机制 jvm 内存模型点个赞,评论区甩个六六六,打包带走,厉害!

嗯,这个视频割了,确实割了非常非常久。然后今天主要给大家介绍一下这个上一期的自学路线,嗯,这个这个路线都是 b 站视频,都是免费的,因为,嗯,因为上一期这个 这个行业他的视频,他的,他的,呃用到的技术其实都是非常成熟的,所以根本就不太需要花钱,特别去找一些什么资料的。我找的这些资料都是公认的比较好的,然后我自己也看过的,确实是很不错的。 嗯,有时候资料其实并不需要太多,因为你很多时候太多资料你可能就是看一看就就不想看了。我发现很多的身边很多就是可能一时兴起想学一学,但是因为资料太多了,不知道从哪里看,看两下就扔哪去了。 为什么耽误这么久才录呢?是因为我觉得这些视频其实都非常好,这些视频都非常好,其实我觉得只要是动手想学的话,其实都容易找得到。但是后面的话呢,就是我跟我一些 朋友,就是我做项目的时候有些 p l c 啊,或者一些搞技术的,他们想转商机,然后问我要怎么转,然后我会给他们推些视频,但是,但是,呃,可能他们他们,他们可能是对新手来说,他们在边上一搜,搜到做做什么,朝夕教育那种, 怎么说呢,就是反正这样很差的一个视频,然后像我推这些的话,就是公认的比较好的,然后这些讲的都都是很不错的。嗯,按照我这个,按照我这个路线学,然后就是新学员学完就可以入行了啊。话不多说,然后再开始介绍。第一个, 首先上一期他是用到的语言主要是 c 下铺,然后他,嗯,有一些会有 c 加 q 和 qt 这种, 嗯,但是主流的话现在还是 cpx, 因为 cpx 相对大家来说确实很简单,可如果说你是搞 java 的 或者是呃之类的,因为 java 和 cpx 很 像,所以说你学 cpx 其实更容易的。当然我这份上学上一期的自学路线的话是针对陈小白的, 如果你没有任何基础的话,你学这个 capp 的 话,首先是第一个这个 six 学院的,嗯,他是一个,他是一个做 unit unit 开发的老师,然后他的我,我当时学三学学 capp 入门就是跟这个老师学的, 嗯,他这个老师讲的好处就是,嗯,首先他的课程,课程的每一节就是比较短,那就十来分钟这种,而且他每一节课程都会用看就有对应的编程题。其实很多时候我们学东西的话不能坚持下来,就是因为他没有什么 趣味性,就光毕业自己学其实很难学的。他这个的话呢,他就是每一个有自己的练习,你就会自己动手去做一些小东西,这样的话你就会激发你的 兴趣,然后就更容易学的进去。然后其实你初学者的话也并不需要学太高级的语法,其实很多高级的语法你学了也会忘,也没有做过,没有自己去动手写软件的话,其实你学了也没有什么太用,你无法真正的理解,所以你只需要看初级和中级篇这两个篇就可以了。 然后呢,还有一个特别好的老师叫刘天萌,这个基本上,嗯,学习效果的话应该都会知道他的,他的课是讲的是非常好的,这个是没法说的。然后他的他的课真是常看常新,就算我是已经入行非常久了,但是看他的课的话,呃,这些课,嗯,每次看就会有不同的体验。 这个,嗯,如果你时间非常多的话也可以来看,就是你先看前面,一直到第,你坐上来就会写的第, 嗯,第二十五吧,升到二十五这里就够了,后面的话就不要再看了,因为后面再看的话对于小白来说可能就是天书了。还有问题就是他每节课的时间很长,一个小时,可能你就看着看着就不想看了。 嗯,对,所以说我如果是真的是纯小白的话,我觉得你还是更建议看这个,如果你有一些编程基础的话,你可以看下这个。 好,然后就是加微放。所以微放是个什么东西呢?其实它是一个非常非常老的框架,其实就是,而且它是一个,它,它是一个。呃,怎么说呢?嗯 嗯,就是就是,就是界面吗?就是我们可能说你看像这种他是他,他是一个拖拽式的框架,就是我们想实现某些功能啊什么之类的,就直接给他拖过来就可以直接用了,拖过来就可以直接用了,就是他的入门是非常非常简单的,只要只要拖进来就可以直接使用, 只要拖进来就可以直接使用,就有点类似于少儿编程,是非常非常简单的。 呃,其,其实其实怎么说呢?就是,嗯,就这些控件,你每个挨挨进来拖一下,知道他是做什么的就可以了,然后后面开发的时候用到需要用哪些控件,然后再着重的学就可以了。呃,如果说其实我其实你自己自己玩一玩,其实可能就会了。如果说非要看视频的话,可以推荐看下这个的 这民工的他的他就是将把每个空间讲一讲,而且还额外的加了一些他的一些一些技师需要的东西。 嗯,而且时间也不是很长,所以说可以看一下,基本上把它看完之后,你微胖也算入行了。虽然说他这个框架非常老啊,但是怎么说呢,上微这一行不像计算机,计算机可能如果是做前端的你都更理解,他基本上几个月就是一个新框架,几个月一个新框架,他的 技术的更新迭代很快,但是但上微胖这个框架就已经非常老了,但他人还是主流,就就是他不追求你好看,也不,也不追求你什么什么 一一。他他也不是说是非常稳定啊,怎么说就是只能这个行,只能说上一期这个行业他的技术比较成就,真的是技术比较成就,然后大多数啊,只要是能用就行。所以说, 呃,像 vivo 这种他开发比较方便,上手比较容易。可能说大多数,因为大多数的程序员的上一期的程序员他的编程能力都不是很强,像 vivo 他 们上手比较容易,所以大多数人都用,所以说他成为主流。 但是但是他并不说这个框架是非常非常特别好,当然也是从某些方面来说,他开发啊,开发相对容易一点的需求是比较好,但如果说你的 u i u i 的 需求增增大的话,其实用 vivo 来说的话,要资金空间什么之类就会非常麻烦。 呃。但但但如果是初学者的话就不要考虑那么多了,你就等于毕竟还是以先上手入门为准,基本上你自己通自己玩一玩,有可能很快的做一个软件出来还是成就感很好, 非常适合入门新手啊。然后就是串口东西和网网通讯,其实这个东西就怎么说你也也更不需要看什么事情,呃,因为现在 ai 都比较发达了嘛。就是,呃,我先不说那些编程的 a j, 就是 单单的豆包啊、 deepsea 啊这些之类的,你就就问他什么是串口通讯,什么是网网通讯,然后其实这玩意原理的话,你只要大致知道是什么东 西就可以了。但其实编程这个东西,呃,因为不是做算法呢,你只要大致知道是什么东西就可以了。但其实编程这个东西,呃,因为不是做算法呢。你只编程。编程的话其实大多数来说 常办的角色就是写车吊吊库的,吊包的,就是人家写好的,那串口通讯和网口通讯就是人家写好的两个类,然后你直接调用方法把数据传过去就可以了,就基本上就几行代码就可以了。比如说我们做演示,比如串口通讯版, 问一下豆包,串口通讯 c 下一步啊, 嗯, 等一下。 其实我们你看他都已经说出来,他就是用到这一个类,用这个类,然后秘密空间,然后这些参数,然后他也把代码给你了, 然后其实也就是一个接发送数据,接收数据,因为他是个,他是个传递,他那个,他是一个通讯方式嘛,因为这其基本上常用的都是创可通讯、网络通讯 这些这些东西,它也就是调用了两个库而已,就非常的简单,不用想很复杂,原理上什么之类,什么半双工啊,全双工啊,这东西大家就了解一下就可以了。 然后像 modbus 啊, t c p 啊, p r c 同学,这个之前的话来说可能就稍微复杂一点,原理的话呢,可以去路边兜包啊学一学,但现在的话基本上,嗯,跟 p r c 总存的话就只需要用这个东西就可以了。 hsl, 嗯,这个就是一个护工,他他做的一个嗯,集成化的一个东西吧,就相当于是你跟像之前猫他 p l c 各种 p l c 通讯之间的,他就和你集成在一起了,他都给你集成在一起了。 就像之前可能要看一些手册,要自己定义一些呃,一些一些一些一些结构,但是现在都不需要了,他都给你,他都给你写好了,你相信第二个他写的酷,然后就可以直接的做通讯。那这种这这两个都是通讯类方面,其实 这上面接的话题主要就是通讯装装,呃,主要扮演的角色就是,呃一个媒体吧,就是跟 p r c 通讯,跟视觉通讯,跟麦斯通讯,基本上这种,然后处理展示一下数据的这种,他其实只是一个在攻击上面,在电脑上运行的一个本地的一个软件而已, 所以通讯这方面也仅仅是教人家写好的库,所以说如果你是做假话,可能就知道我在说什么东西,就是就真的只是调库而已,没有什么太难太大的技术含量。然后 然后 max 的 话,这个东西 max 的 话其实就是 i t p 就 i t p 呃,或者 i t s 吧,然后就是把把那个要发送的 数据,然后给它转换成 js 文件,然后按照他们那边的 js 那 边文档的要求发送过去。现在基本上写 max 的 话就把就让他们把 max 文档,然后给豆包扔给豆包,让豆包给你写,把代码给你写出来,然后这样看着这方面被加密复制基本都可以用了。这个你像 max 文档就写的很清楚了,直接给豆包,豆包给出来的东西就 已经就是。嗯,就完全可以直接用,然后稍微能看懂一点就可以了。这个真的。嗯,这个 ai 真的 是改变生活,像之前可能前麦斯文档的话,反也是调库嘛,就还需要自己动手写,后面有 ai 之后就基本上就像这种格式化的东西,基本都不太需要自己动手写。 然后第六个记忆视觉。呃,虽然说是搞上位机,但是你看一下招聘软件,其实搞上位机的话或多或少他肯定是需要你有记忆视觉基础的。 并不说是,嗯,并不说是让你特别深入的去用那些海康的 a b m 这些这些东西,但基本上是还需要你两个库,一个是 hockinov cv 或者是微型 pro 二次开发,或者是海康的 v m 二次开发啊,我就加上。 嗯,海海海康的 v m v m 二次开发或者是微型 pro, v m 二次开发就就就是三,就一二三四就是四个二次开发。前两个是算子,然后 v m 和微型 pro 呢?它类似于像是一种组线式开发的 啊。先说算子了吧,算子的话这两个就是算子这个东西。就是就是就像,就像每每一个算子的意思就是他每一个方法,你看,比如说,呃呃,算,还真分分走吧。比如说 how can 常用算子 啊,他会告诉你啊,比如说读文件啊,显示啊这些东西,这些东西都很基础,基本上现在你算子只需要大致知道。嗯, 学这种东西千万不要说是每个算子,每个算子都因为它算子特别特别多,几百个,它分为二类,三 d 啊,常规啊,什么玩意啊,一类东西它就非常的多,真的真的没有必要,没有学,你只需要学,首先你之前基本的膨胀和腐蚀开闭运算,这也知道常用的算子知道之后就够了。 然后至于 hulk 开发的话,基本上也就是让 ai 写,然后你哪个算子, ai 写出来的算子你不会,然后你再反过来问他这个 ai, 这个这个算子到底是干什么的? 包括欧本森也一样,绝对不要说什么每个算子先学完,然后再开始做,就这样你就会陷入到这种算子的汪洋大海中,根本就无法做吧。 啊学,因为学习这个东西他并不说是自驾而上,然后就是先打火机手艺层来,其实像我们工作中基本上最好的学习方式就是先做出来,先用,然后再用用,再开始学, 就一定不要偏窄。像 vm 和 vip pro 的 话呢,就是海康二次开发跟 vip pro 这个东西,海康的二次开发,海康二次开发基本上就,嗯,开了手册就可以,就海康,呃,海康 vm 还是还可以的,是吧? 因为它比较便宜,然后它的呃,效果也还行,因为它,它的扇子二十八扇子我用起来也还可以,非常简单,因为它它的它的库啊,什么之类的都都已经封装的很好,虽然时不时会有会有些 bug, 但是常规来说还是够的。 啊。啊,对,我说错了。呃,反正就是海海航找他的官,找他的官网下就可以了。这个是,嗯,这是海航的。海航那他的他 b 站是有视频,然后他的他他他的官网上也有相应的视频。 嗯 啊,这种微社区这种都是都是有的,然后他微学院,你看这种这种海康那 vm 算法平台,你看二次开发这些东西就是怎么用,看一下基本上就 ok 了,然后这个我来我来考一下他, 然后啊,微星 pro, 微星 pro 这个东西就是,嗯,也是个损失开发,但大部分人用的也是盗版的 啊。这个这怎么说呢?行,这种小公司一般来说,嗯,小公司用到的比较多啊,维普他其实也也是个组建式开发,就看他是这种啊, 这个用用的。哈喽,各位小伙伴。呃,怎么说呢,这个之前我在沙公司也用,然后也也挺好的。然后,嗯,怎么说?用怎么说,这个占比不能说,不能说高,也不能说低,就是确实确实有在用,确实有些公司是在用,继续在开发, 但是海康那边好像稍微还多一点哦,各位小伙伴,因为这个有时候涉及到版权的问题,很多是用盗版的,但是海康他那个就很便宜了,用正版也很便宜。其实 然后这个视频,然后这个学的话呢,我找一下啊,因为因为真的很久没有看啊,这基本上怎么像这种东西。嗯,自己动手做一做,基本上都会。这个我之前看过的,当然学过,这个还可以看一下 其实,嗯,学这种东西就不要太过于偏执,不要过于纠结,说我要学的特别特别特别棒啊,特别特别熟练。什么这些不太需要, 因为他基本上这些东西你不一定用的到,有可能学 hulk, 可能你去找面试工作压根就不用 hulk, 你 只需要大致知道他怎么做就可以了,而且他本身自身也是很复杂的一个东西,基本上你会用,知道什么东西会用就够了。好, 呃,时间来项目中的时候,在项目中学就够了。好,其实也讲到这里,然后运动控制卡,运动控制卡的话,呃,运动控制卡 怎么说呢?就是因为开始先先说下运动控制卡是什么东西吧,他就是现在不是很现在,现在做运动控制,比如说控制电机啊,控制一些 l l l l 信号啊,这些不都是用 plc 吗? 呃,现在话就是有一个趋势,就是如果稍微简,稍微,嗯,不稍微简单就是,呃,会用运动控制卡来代替 p l c, 确实是个趋势。可能这样呃,我跟 p l 搞搞 p l c 人聊过,确实是这样,因为搞,因为这样的话运动控制卡就跟上位机在一起了, 这样的话他不管是数据,数据就就不太需要数据传输了。这种东西,然后像卓蛙什么之类的基本上都呃,操作什么更简单,也不会像也不会像 p r c 那 样搞那么复杂。因为也是用 c 下步调吗? c 下步代码调调,用的调用一些库而已,然后 真的会有,真的,真的,现在有很多的设备真是有运动控制卡,哎,很多运动控制卡都开始代替 plc, 当然 plc 的 统治力还是在的,只能说是特别特别多轴的情况下会, plc 还是还是很厉害的,但如果说传统的可能几十个一百个以内的轴的话,基本上都运动控制卡都能 hold 得住。 当然,嗯,对于上个上衣来说的话,现在很多公司他还会要求你搞回运动控制卡, 哎,像这样搞的话就像视觉啊,上围巾啊。运动卡本来是三个行三个岗位的,其实可能等后期越来越 会融合到一个好,然后话说多了,然后先看一下,就是运动卡的话,其实我先刚学运动卡的时候也是不知道怎么学,其实这个玩意应该是最好学的一种,不过是那常见的联赛不高, 呃。雷赛酷高,还有郑一栋,还有还有小雷的那个汪,那个小 g, 呃,都这些。他他其实就是说就是就是厂家嘛,他卖运动控制卡, 然后你要用运动控制卡学运动控制卡,学个软件。怎么说呢?就是,呃,最好最简单的方式,就你就你就直接直接打,打那个啥,你再再打厂家的电话,让他,让他,让他帮你。对,因为他他这里是。呃,你像不管是雷赛尔,谷歌啊,他是有手册的,比如说,嗯,产品中心, 嗯,移动控制卡,移动控制 p r c p r c。 哎。这东西,这东西看哪里?哎呀,等一下啊,我看正移动 好,这边一般正移动比较便宜,但是真真真的比较便宜,所以说,所以说小公司用的比较多。那雷塞过高的话呢?它它它的。 嗯,他就是说他这个行业站的比较久了,然后他的技术也很稳定的,他市场份额还很大的, 所以基本上都可以学一学,然后其实其实不管是哪一个,不管是哪一个公司的,其实嗯,就两点,第一你要学的话因为你没有实体吗?你我我也怎么说呢?除非你报班或者是除非你报班,其实我真的不建议你,你你 或者买二手看一下是不是便宜点,其实买二手也没用,你买这玩意,买这玩意之后你也没有那些轴让你动,基本上你就会做一个 l 输出,他没有你想象中的那么难。其实黑风他真的是很简单,因为 像这种它又只它又只是一些信号传输,比如窗口啊,还有网关啊,通讯,然后它的 i o i o 输和 i o 输出基本上它。呃,然后你看附件下载,你看它是有用户手册的,这种它有用户手册的,把它编成手册。那我们可以下看一下。 呃,比如直接直接点。为什么?就是我们刚学的话可能大部分就是看不懂,比如型号啊,是干什么的呀?什么叫脉冲啊?是什么叫做那个?呃,一个一个一个一个脉冲,一个是网网网口吗? 有点忘了场景。呃,就啊总线啊,说错了,一个一个一个一个一个总线,一个脉冲,一个总线型,一个脉冲型,这两个区别哪里呢?嗯,脉冲的话他就是如果轴力多的话你就用左线就可以了, 因为一个脉冲控制一个是一个一个总线控制,一般来说你要单轴或者是一二三轴轴,轴线比脉冲要贵。 然后呢脉冲的话呢,他需要接线,就是他他他 i o 线需要接,但是 啊,但是你用总线的话呢,基本就不需要接那么多线了,你就跟那个驱动器不用接那么多线了,你就跟呃总线就可以通过一根网线就可以控制驱动器,因为这个控制卡其它作用就是控制驱动器嘛。这个驱动器什么意思?就是电机你就控制这个电机走嘛,这个电机又是被驱动器控制了,而驱动器呢,就是有那个呃运动控制卡控制的。 那这个这个这个假设呢?后面会再做一下科普吧,反正就是他是个通讯方面的东西。然后那这些直线叉步、圆弧叉步了吧了吧?这些很难啊,你是不觉得这这什么什么叉步,什么数学上东西什么乱七八糟,其实也没什么,我打错 好吧,然后他这些东西都是都是都是,不用你担心的,因为这都是人家厂商写好了的,比如说你看这种这种,这他的书你是可能第一次见,会觉得啊,有点啊,怎么看不懂啊?什么什么之类的,什么线,什么双脚线这些东西,其实这些都都不太需要, 其实这些都不太需要,因为这个是接线的时候,电工那边会会看一下这个这个。嗯 嗯,这怎么说呢?就是啊,这个还没有编程这方面,嗯,其实你大概知道他是要干什么就可以了。然后其次的话呢,呃,就是你要动手去做,学学最快的,如果没有的话,那还就是看他的算子手册,因为,嗯,产品 他的,他的编程的时候是有算子算算子手册我看一下,就是他也跟跟我刚讲的一样,他主要是调一些库啊,比如说怎么连接连接用户卡呀?连接用户卡之后呢?是然后他会获取他的轴,然后让哪个轴动动多远动多久。都是都是有 都都都是有相应的算子,只需要用算子传入相应的参数就可以了,其实都都是非常简单的东西。 嗯很多时候像生意这一块其实没有很难的不能在,而他也是有很难的地方在,但对于小白来说和对大多数来说其实就单单只是个调个库而已, 像软件设计加购的话,嗯怎么说大多数程序员是是他水平还还还达不到,但大多也只是只是能跑就行。 哎但是怎么说呢这个东西并不是一蹴而就的事情就是慢慢的学,但他一入门来说的话你只需要第一知道他干什么的,第二把把那个算子手册拿到之后看看他的哪一扇子就可以了还有最简单就是问问问豆包还问 deepsea 啊,都都是可以的,他会比如说你看吧。嗯这个好像这嗯 我看一下有没有有没有有没有编程的我看一下有没有编程的 开发手册。 编程手册啊还说你看这个 首先大家就是比较怕,因为这个东西真的很很简单你只要去学他就能学会很多时候,呃我我见过很多人啊这个呃编程好难啊这个英文字母看都看不懂,然后没有一点汉字的全都是英文字母好难,是不?还有英语好其实,呃 怎么说就是他只是真的只是一些符号而已,他真的是非常简单只是一些逻辑线逻逻逻辑之间的判断和和调用而已,就最难的部分就是就你去学他就只要你开始学他你最难的部分已经过去了,其实, 然后他这个还是我们学主要为了找工作吗?这个上微机哎,怎么这个行业他他经常就是如果刚前期的话,你分两种,完全一种是嗯搞工业的和不搞工业的吧。如果说你真的是嗯从前没之前没有接触过工业的话呢?你要搞上微机的话,就考虑一下他的工作环境,因为毕竟是工厂,还要会出差。 如果你是搞工业的,比如说你是搞 p l c 的, 或者搞视觉的,这样你你了解这个行业的话,嗯,他会知道其实上鱼相对于这种他的上下游的话,其实他相对来说还是比较好的,因为他出差对于跟 p l c 比那些是少太多了。加班跟 p l c 比少太多了,像我之前的公司,那些非常大的公司了,也就是然后,但他那边 p l c 的 基本上是 十点之前下班上早班。反正是啊,真的,我觉得搞 p l c 的 人都是牛人,真的,我就觉得他们这是神人,怎么能那么能加班,那么能出差。我不管是认识多久 p l c 啊,就是你工作个一两年两三年,我认识最长的是搞 p l c 搞了十五年的,但仍然是一年回不上去,回家。 就说如果说你真的是想找份工作,然后呢?呃,是可以来搞双面机,因为他入门门槛比较低,如果你是搞 p l c 或搞几搞搞,那真的我不会,我建议我如果相比于你搞 p l c 的 话,我更建议你搞双面机, 因为搞 p l c 的 话,你不管你工作多久,你都是要出差,这个是没办法避免的,只要你工作完播完呢,你都是要出差,你都是要加班, 跟你搞上麦机的话就不太一样,因为你搞上麦机可能前期也是会,但是你后期的话,你搞上麦机有那种正规一点公司,它会有自己的售后,你基本上去把软件调试 ok 就 可以走了,就并不需要一直待在那里。 出差相对于 plc 真的 是少了,少了非常多,少了非常多。好,这现在好了,然后这件,这就是我刚跟你说这些,比如说,嗯,韩酷使用啊这些这些封装, 你看这还有例子,比如说多轴,你看调用的,你看这些都是调用的, 嗯,你看连接,嗯,怎么连接,看就是一个方法,然后这个设置轴,类型轴,加速度,你看这些都是都是,你看这个 z a, u x 这些东西都是写好的方法,你只需要重复相应的参数就可以了,不管是雷塞的过高的还是什么都是一样的。我跟你说就是首先是去魅,就是 就这把这个这个东西他一点都不难,只是因为他就很成熟了,就是别人装好的轮子,你不需要自己造轮子,你只需要把像乐高搭积木一样,你就给他搭起来就好了, 并不需要纠结他乐高的材料是什么,就只能学这样东西。学编程首先是去美,它是一个非常容易的事情。 好,然后咱继续往下讲,嗯,然后就是,嗯,移动库,库库库,肯定是学的库库库,大家不管你知不知道应该是不是这个行,应该都知道库这个东西, 它这个存数据的呢,一般来说我们做点 night 的 话,就是用两个,一个 server 和一个 circular, 就是 微软出来的嘛,然后它,呃, 嗯,推荐这个视频,他这个基本上已经看视频也是非常短的,十来分钟,几十分钟这种东西,呃,基本上你看完之后就会了,因为他基本上我们也不太需要那么特别高级的操作,一般也都是存个数据,图个数据,然后查询一下,就就这些东西,基本上搜搜就够用了,因为他毕竟是微软,微软旗下的。 呃,用 c 叉谱的话一般都用 c c 就 就可以,然后还有个 sql, 当然一般来说如果数量不大的话,就直接用 sql 就 可以了。 sql 的 话就推荐这个,因为它并不需要一个正式的一个数据库, 是这样的,也非常非常数据库,它是这样的,是数据库分为数据库和数据库管理系统,它是两个东西,数据库就单纯数据数据库管理系统,它是能够查看数据,这种 sql 这个东西它就是。 呃,它这个数据库嘛,然后它它比较小,它不需要安装什么软件,它只需要加两个,加两个文件在你的软件里面就可以直接用了,非常的小,基本上你要存一些小点数据的话就够用了,然后查看的话你就说 nokia, 然后那具体怎么用就看这个视频就可以了,这视频讲的还可以, 然后那搜索语句这种东西的话也是过一下,然后不会不会的问豆包就可以了啊,所以说真的有 ai 的 话,基本上 ai 给你写的又快又好。 嗯啊,不要不要说是特别难的那种逻辑啊,什么?这个透明,这个按钮基本上简单逻辑是完全 ok 的, 但前提就是你用 ai 前提是自己得会,如果你不会的话也没关系,反正 ai 告诉你之后,你看一下能不能达到那个实验需求,如果实验需求的话,你就 反推用 ai 给你的代码,或者搜那个搜索数据库啊,那个搜索语句啊,什么东西你就反推,哪里不懂再问 ai 这行代码什么意思啊?这个这个,这搜索语句什么意思啊?就这样从下来,从上到下反过来学习,把 ai 当做自己的一个学习的一个帮手 啊。然后,然后接下来就是打个 p f, 就 接受微风,我嫌太丑了,实在他不管怎么用它太丑,不管你用各种主键库都是太丑,因为它是真正的 空间太老了。所以说我们现在还有很多公司是搞大 p f, 那 搞大 p f 还有好处,就是如果你后面不想搞上微机了, 想搞医疗啊,或者什么之类,就点那个平台上之类的话,呃,大 p f 的 找工作的,呃,方面会比 vivo 大 很多,因为它确实好看很多。就有以后。以后你后面想找纯软件开发的话,你学 w p f 的 话肯定是更好的,因为很多纯软件开发的话不可能说是基本太丑。 然后他 p f 的 话呢,就推荐三个,第一个是男的鬼王啊,这个帅小伙透明,这个案例他应该是他,他 p f f 系列的视频是比较多的,而且讲的也很好。呃,然后这个他课间做的很棒啊,人长也挺帅的。然后, 嗯,就是可以看他的,但是,嗯嗯是讲课太太太。没有什么废话,就是可能, 可能有点有点少,就是有点机械吧,类似于那种其实,呃,他讲的是非常不错,认真听可以,但如果一跑时的话,可能可能反过来再重新听了。就是,但讲的是很好的,而且 ppt 做的是应该最好的课应该做的最好,看 你跟他学就可以了。然后,呃,然后微软,微软企业就这个是因为我们来说我们做大 p f 的 话,那么接着上做大 p f 的 话,它是它是一个框架嘛?然后我们来说,是 啊,还有个技术,哎,框架,然后它就是我们一般说,嗯,不可能是,就是纯纯纯用大 p f 开发,哎,怎么说呢?就是我们会用 prisma 框架来开发大 p f, 它相于是,嗯,不是大 p f 有 一些, 嗯,一些绑定呢,还有一些,呃,一些页面新导航啊什么之类的。就它大 p f 可能是用纯大 p f 来实现的话,可能就稍微复杂一些,但我们 prisma 框架的话,可能是它就它像是把复杂的东西又给你做了一下二次封装, 然后我就只需要调用就可以了,就就非常的简单明了。其实这一行就是不停的优化,不停的优化,不停的不停的把一些复杂的轮子变成一个简单的轮子,然后只需要调用就好,就这个样子。 然后基本上你学像学这个话,也就是看报告那个的话,这个不同框架跟他做一下知道哪些东西就可以了。然后我当时大 p f 的 时候也就是看一看,然后你不这有这个东西,然后后面的话,你自己只要用大 p f 来做过一个软件,基本上你就入门了。 然后然后第三个就是这个龙马的,他这个就真的是很牛逼了,这真的很牛逼了。那是那可能他他这个主要是 他把他把这个当个书,那个书整理,当当教案,给他从头到尾讲一下,就 wpf, 所有 everything, 所有的东西都给讲了一遍, 这东西非常非常的多啊,你,你最好就是把它当做一个查询的一个工具,因为当是一个工具视频,工具书吗?工具视频,你把前两天看完之后,你在工作中遇到哪些问题,然后想科普一下这方面知识,然后就相对的找了对应的 对应的功能,然后我就看一下,比如说这种三 d 绘图啊什么之类的,基本上你呃你要用到再学就没必要再起早学,起早学你也会忘就这些东西, 那这个卡还真是非常多,这个老师讲的也也不错的,也很不错啊。然后,嗯,好,基本上都讲完了,基本这些东西啊,总结一下, c f 基础, 然后 infom 上过通讯, modbus, max, 记忆视觉,还有一个公式卡,数据库,然后他 pf, 这就够了。基本上你,呃学完这些,你说你找一份上一份工作就不成问题了。 然后,嗯,然后现在下一个问题的话就是,嗯,就写简历嘛,其实这个如果说你是刚毕业的学生,其实你就不用太担心,刚毕业的话确实没太需要什么简历,你就把大学里面学到的东西写就可 像。但是如果说你是工作的话,其实稍微有点难了,因为,因为因为工作的话,就是他可能不知道你做过哪些,做做做做做做哪些项目,如果你不是这行,不用搞加班,基本上你 这么说你根本都不知道这行业的那些机子叫什么名字,基本上稍微问一下,露馅了,虽然说你没有什么太大太大的用,想说因为他毕竟你这技术你就会了吗?技术都会了,但是他在面试的时候肯定还是想要有经验的吗?然后这时候要么就两种,一种就是报个班,一种就是 呃,先先先找,先随便找,先入这个行,入行了之后你就不管是你是主做开发呀,还是说是去呃,是怎么说当个就是,嗯,可能去现场待啊什么之类的都没关系。 呃,你就去先入行,入行之后你稍微是入行一个月两个月你就知道了啊,你就会用到用到上位机就别人写的上位机的软件,这样的话你就 呃他就是你就知道这个是看什么东西的,基本上你看一下别人写的软件你就知道看什么东西,然后这后面你再再写简历的时候你就可以把你做过的项目啊,别人写的软件就包装成是自己写的,这样的话因为你你用过这软件,你也实际参与项目中,这样话不管别人怎么问你都是没问题的,所以这是一种方式。 然后还有一种方式就是你真是要报个班,但是报班的话我实话实说就是市面上他的班的费用太贵了,因为我觉得, 呃,因为现在你报个上面的班可能张嘴就要一个,如果现场线下的班的话就要一个至少一万五以上,其实真的很没有必要因为这些这些东西, 这些东西只要我他们现在报的班讲的这些东西我说实话不一定,或者说很大可能性都没有上述这些人讲的好, 可能他最多就做了一个现场答疑的,就是有有问题的话,比如你可能你安装个软件有问题啊,或者是你代码找不出来, bug 什么之类的都有, 都可能是你去现场的话,可能是有人能够那个告诉你,如果你不行的话只能在网上搜,但是现在好处就是你在网上搜的话,你有 am 嘛,所以说你搜其实也不会说费特别大的力气,尤其是后面再会教你们用一下。嗯,编程软件开发的话,直接就因为这是网页嘛?这是网页,如果你直接用那种编程 agent 的 话, 呃,像像像,像这些那个 vsco 啊,这些东西,像那个 kylo 之类的,它那种的话就可以整体告诉你 就就更方便一点啊。但是怎么说呢,像如果你全指望 ai, 其实也也不太行,有时候会因为使用如何使更好的使用 ai 也是怎么说,你使用久了会会有一些新的体会,如果完完全全考 ai 的 话,嗯,可能会越问越乱, 然后我跟你说,那意思就是如果说你们确实需要做那个,呃呃,说说不想我去找工作,然后是浪费自己的时间去去那个先去现场授课。什么像真的是需要有人搞培训啊,找找个,找个培训机构,然后来来做,但这个不要找太贵的,你像 花一万五花一万多来做这种东西,真的是,我真的说是别拿球真是有才,因为他技术真的是很成熟的技术,他如果说你真的是需要有人,第一就是,嗯,很多人说啊,我没有什么自制力啊,还有说就是没有人帮你去, 没有没有人帮你去指导这些问题啊,或者是面试啊或者什么之类的,我们真的是需要说啊,需要有人帮你指导来做培训的话,请你们可以来找我。 然后我怎么我也是才刚做培训这个东西,因为他这个东西,嗯,怎么说他就,嗯不是不是不是很有难度的一个事情,因为如果说你是做因,因为你可以看一下这个, 呃,学到这些东西,其实都这些东西没有说特别特别难的事情,如果说你说要非常贵的话,我觉得真的是非常非常非常坑人。 然后呢?呃,我说一下我们这边的培训,然后如果说我也不需要大家私信啊什么之类的,就是你可以去有真的是想要去找培训的话可以对比一下。然后我们这边的话就是,呃,刚开始做我们说话就是收费很很很便宜,就是五千块钱,然后就是两个月, 就一个月的话基本上你一个月学技术,基本上你一个月学技术,一个月学基础, 有些基础基基础知识。然后另一个月的话就就是拿设备跟运动控制卡呀,像我们那些工厂一些设备啊,就开始开始写软件啊,写交货什么之类的,或者跟我们一些项目来做,就是做实战 啊,然后我们这边话是预,嗯,这五千就算是预付学费嘛。很多人就说啊,我找了之后会不会是贷款啊,或者是啊 找到包包工作啊什么之类的啊?其实我刚毕业的时候也遇到过,他们毕业刚来深圳的时候是他说自己招聘,然后去了现场之后呢就让你贷款,哎,一去了去了现场之后呢,他又说他是搞培训的,然后培训话呢说是什么啊?不花钱,然后等你找到工作之后呢?每个月从你工资里面扣,他其实是一开始就让你贷款了, 然后相当于是每个月可以乘以你后面找到工作之后每个月还给代公司钱,而且张嘴就要好几万,我真觉得真真的太贵了,也真的没必要。然后我们这边是这样的,我觉得我们是预付学,预预付学费五千, 然后第一个月学基础就学基础知识,然后第二月学实战,然后我们这边的话等你拿到 offer 之后之后拿到 offer 之后,然后我们需要支付 offer 费用的一半,所以你也不太清楚,不太需要担心。说是,呃找不到工作怎么办?呃其实我们其其实两个月五千块钱真的是 在深圳写字楼这种地方真的是真的真的是很亏,然后我们主要还是还是想拿你后面 offer 的 钱,所以说你不用担心,我们会绝地的帮你找到 offer, 然后这 offer 公司的话呢,基本上啊七八千可能能找到的,如果你搞商业机开发,如果你搞视觉的话,那就那就可能低一点六千多,他基本上加加班出差之类的,七八千倒是不成问题。 然后,呃不要说还还有很多人,就是啊,我拿到 offer 之类的七八千倒是不成问题。然后,呃不要说还还有很多人。就是啊,我什么都不会 啊,然后要被辞了怎么办?就没关系,我们这边的话我们,呃就算你拿 offer 之后,嗯没关系,我们会做一个月的,就是我们就就这一个月我们会 遇到什么问题来找我们,然后我们来就给你做,呃,我们来帮你解决问题,就让你更平滑去过度这个东西,然后等你们一个月拿到证,拿到手一个月工资之后,然后我们会再要求你付 offer 的 另一半, 然后如果说在,然后当你付完 offer 另一半之后,然后我们不还有十七期吗?就我们是三个月十七期。如果,如果你们付了 offer 的 另一半之后啊,这十一期内你没有过,比如说十一期啊,因为各种原因啊,就是说是觉得公司不好啊,或者说是呃觉得自己的技术,嗯,没达到要求啊,或反正各种原因,只要是 被辞退了,你可以艾特继续学习。 嗯,怎么样?因为我也是刚做,我们也刚做这个培训,所以说,嗯,我觉得这个如果我站在一个初学者角度,或者我站在一个想做培训班的,想报培训班的人角度来说,我觉得我还是能够接受的, 至少我觉得不会,不会,不会说是让贷款啊,或者说是嗯可以随便找个垃圾 offer 啊,或者是, 嗯,或者是拿 offer 是 不管你,我觉得这应该是能让一个想报培训班的人放心,当然我只是给他们给大家做广告之类的,嗯,因为我也是才才做这个东西。 如果说,嗯,其实你们可以真的可以自己先去找,像我说第一条,第一种方式就自己先去找,找到之后,嗯,工作个一两个月,然后我现在是摸了门清之后自己重新改简历,自己搞都可以。 好了。然后后续的话呢,就给大家介绍一下,等下一期视频都给大家介绍一下那个如何在上一期这种领域更好的使用员,然后这个这个路线的话呢,我会,我会分享,我那个 我会发在评论区,然后如果没有的话呢,就因为他有时会失效,你们就私信我,然后我会私发给你们,都是可以的啊,就这样了。嗯, 哎,就多说一句吧,就是如果说你真的是找不到工作,因为我,呃,我当时来,我当时我入这一行的呢,就是就是因为找不到工作,然后,嗯,这行需要人,所以说就稀里糊涂入这一行, 因为现在的话就压力比较大,很多搞家,因为你真的,我建议就是你不学尚为经验,千万不要学 java, 尤其是初学者,尤其你是专科,你真的搞 java 的 话,你基本上找不到工作,现在 java 根本就不招新手,就搞外包,可能就很难找的,都 真的不要搞家务,要搞 p l c 的 话,无论你学 p l c, 我 更建议学尚维基,不是因为我培训尚维基,因为你搞尚维基真的是不管你工作多久都是要出差,都是要加班,我觉得这真的是 很难转行,我真觉得这个是相比之下,因为我身边很多 p l c 朋友,他很想来转尚维基,所以我而且公司的话,其实尚维基和 p l c 工资是差不多,甚至可能尚维更高一点, 其实我但有些地方可能偏向更高,但是他他那个工资其实基本上没有任何差,没有什么差距的,就更希望大家来说是来学商,学商危机是吧?因为还有就是搞视觉方面,搞视觉,搞售后这种,其实 只要视觉售后这种真的是你搞久了整个人都麻了,你在工厂里待着,你要调那些机子轻松是轻松,但是说句实话,你没什么前途啊。我靠,这种就是,哎,这种就是, 嗯,又要混又要混日子,而且我身边,嗯,我是搞售后的,也有年龄很大的,我不知道他们是从从年纪出来搞还是老了之后开始搞的,反正不是对自己的人,就是如果对自己的职业规划有有要求的话, 啊,我希望就是你不要太满足于刚售后,拿几千块钱的工资还是可以好学一下技术来的。嗯,既然怎么说就是你只要学技术,然后这个行业他一定是在缺人的,因为这个行业他并不说是。 呃,因为这压力确实没有那么大,他公司没有计算机的高,压力也没有计算机的大,然后他又是工厂性质的,所以说很多人来了又走,所以他的用户他的那个啥招人是一直都有的,所以说只要你学,这一生能够一定能够找到的,如果你确实需要有人知道,你也可以来找我。 嗯,好,就这样想到这个视频录这么久,如果能看到这里的话,也非常感谢你啊,听我在这叨叨好了,祝大家好好学习,找到新的工作吧,拜拜。

今天面了一个四年经验的 java 后端,简历上写了两次霹雳事故处理经验。我问他线上 cpu 突然飙到百分之一百,你的排查思路是什么?他说,先 tab 找到 java 进程,再 tab 到 hp, 看哪个县城 cpu 高,拿县城 id 转十六禁制去 gtech 搜流程。说得挺溜, 我追问,如果 gtech 导出来一看全是微定和 timet, 微定一个 runble 都没有,你怎么办?他想了一会儿说,那就不是 java 的 问题吧。我说是吗? 他没答,上来两个真实翻车,某服务 cpu 持续百分之九十九运维。 g t i 一 看全是微顶,以为不是 java 的 事,查了两小时,最后发现县城池无界队列搞出一万多个县城上下文切换把 cpu 吃光了。还有一个 g t i 看到 runnable 以为死循环改了重启还是高 g t i 一 看每秒好几次 fo g c 内存泄露才是元凶。 cpu 飙高排查四个方向。如果你担心简历上的东西讲不出来,我已经把面试经常问到的技术战场景题都整理好了,只要你是我的粉丝, 留言六六六,打包带走。一、先确认是 java 进程还是系统问题。一, top 看 cpu 最高的进程,如果是 kswp 零这种系统进程,说明内存不够,触发了频繁回收, 不是 java 的 事。二、确认是 java 进程后, top 杠 h p 找最高现成现成 id 转十六禁制去 java 搜。三、这套流程只能抓某个县城吃 cpu 的 情况,另外几种它搞不定。 二、县城太多导致上下文切换。一症状, gtech 大 量微停,没有 runnable, 但 cpu 就是 高二原因,几千上万个县城不停切换上下文切换本身号 cpu 一 千人抢一个电话停,没人打电话,但排队切换花的时间比打电话还多。 三、排查 web sites, 看 c s 列几十万上百万,就是切换太频繁。四、强戒原因,现成时无戒对列,最大现成数硬件 max value 无解决限制,现成数有戒对列加拒绝策略。三, gc 频繁导致 cpu 高一症状, gtat 看到 f o gc 频率异常,老年代接近百分之一百 二,很多人忽略这个方向, cpu 高不一定是业务代码的问题。三, f o gc 时所有用户现成 stw, gc 现成全速跑 cpu 直接拉满。四、解决压大堆排查泄露对象,优化大对象创建。 四、死循环踩样不到怎么办?一, gtx 是 瞬间踩样,可能刚好没抓到死循环堆战。二、技巧,连续 gtx 三次,间隔一到两秒,三次都出现在同一行代码的大概率是死循环。三、坑点一, concurrent hashmap, compute, faxent 在 jdk 八里嵌套调用扑特会死循环以及 bug。 四坑点二,正则回速特别隐蔽简单,正则匹配长四幅串回速指数级增长,堆站看着正常,但 cpu 拉满 cpu 标不是只有 j t x 找 runnable 一 条路线程切换 gc 频繁,正则回速哪个都能打满 cpu, 先搞清楚是哪种再对症下药。你们线上 cpu 标高最后查出来是什么原因?评论区说说。

兄弟们,刚刚 java 面试被摆了一道最左匹配被卖 sql 被策了。这道 sql 题很多人都会,但是也有坑,特别是遇到刁钻的面试官,你就得小心了。正常的答案我们都知道,威尔 f 三等于一,因为缺少 f 二这个条件,不符合最左匹配原则,所以不会用上这个联合缩影。但是 任何情况都用不上吗?不是的, maccode 八点零点一三版本出了一个 skype 机制,使得在某些不满足最左匹配原则的情况下还能用上联合锁芯。我当时看到这个特性,第一反应是 maccode, 你 也开始不讲武德了。来,我们做个实验打打脸。先建个表,加上联合锁芯,插入一些实验数据,表里一共一百六十条数据。注意,此时 f 二的基数很低, 只有一和二这两个值。然后我们直接执行 select asterisk from table where f three equals one。 按照我们的理解,应该用不上这个联合锁影,但是请看执行计划, type 是 range, k 是 联合锁影的。用上基于这个联合锁影的范围扫描是不是很奇怪?第一,它为什么能用上锁影?第二, f 三等于一明明是等值查询,怎么变成了范围扫描?如果你也对这类题也答不上来的话,我整理了能让大厂 hr 沉默的必考题库,覆盖了 jvm 夺命连环问 spring 灵魂八股高并发必考场景 release 深度陷阱,点个赞扣幺二三直接带走!真相只有一个, nice! 我 们关注一下 extra using index for skip scan 就是 它在作怪。拆解一下具体原理,第一步,先统计锁引的最左自断 f 二的基数,看看有哪些值,这里一共有一和二两个值。第二步,把 c 口偷偷把 f 二的值拼入查询条件中,构造出 where f 二等于一 and f 三等于一, where f 二等于二 and f 三等于一这样的条件进行查询,是不是有点羞啊?你不带锁引最左的条件是吧,我 代码给你拼上去,所以一条查询就变成了多次查询,这也解释了为什么 type 就 变成了 range。 因此最终还是没逃出最左匹配原则,只是 my sql 隐式的构造了查询条件,使得看起来好像不需要最左匹配原则而已。这个优化点就是很多人说的缩隐跳跃扫描,但是不要高兴太早。这个优化还是有很大的局限性,它要求最左条件的基数很低, 因为需要列出最左条件的所有值来构造查询。例如最左条件有上万个,那还不如直接全标扫描对吧?其实也不需要上万个。 改一下表里的数据,把 f 二的值随机化,这样 f 二的基数就变大了,再加一些数据,现在有两千多条可以看到。此时再查询的话,执行语句就用不上 using index for skip scan, 变成了基于二级所引的全扫描。总结一下, 能用上这个优化的场景比较有限,就基数很低。这一条限制我觉得不小了,所以这也不是什么万能药,我们当一个知识点知晓一下即可,到时候遇到特殊场景能用上的时候装一下,或者在面试官问你最左匹配的时候提提嘴。老师你说的那是老版本了, mycoco 八点零点一三版本啊。他做了一个优化叫 skip scan, 基数低的时候就算没有最左条件也能用上联合缩音。 面试官听完眼神里会写满四个字,这小子行啊!最后送大家一句话, mycoco 这玩意版本一变答案就变了,你以为背了八股就稳了? 不知人家八点零点一三开始已经不按套路出牌了。所以兄弟们没事多看看新版本特性,不然面试官问你 mexico 八点零有什么新特性,你还在打?呃,支持 emoji 了,这场面要多尴尬有多尴尬。

刚灭了个三年 java, 简历上写着熟悉电商购物车模块开发。我问他,购物车功能登录用户最多加一千个, s k u, 未登录用户只能加两百个,你怎么涉及他?想都没想,简单,前端存 local storage, 未登录就用它,最多两百, 登录后切到后端数据库存到 radius 或 my sql, 限制一千。我点点头,方案听着挺顺。那我问你,未登录用户在 a 设备加了两百个登录后,这些数据怎么合并? 如果他在 b 设备登录购物车,数据又是空的,用户体验怎么保证?还有,用户专门写个脚本,不断切换登录登出,把数据库的 key 越记越多,你怎么防?他愣了一下,合并 可以在登录接口里做,把 local storage 的 s k u 发到后端去,重后写入。我是问,那如果用户未登录时加了一百五十个,登录后又加了八百个,总量超了一千,你优先保留谁的?更狠的是,恶意用户伪装成未登录, 用分布式 ip 轮换打你的添加接口,每个请求都生成一个新的匿名 session, reddit 里瞬间几百万个零食购物车,你内存怎么扛? 他额头开始冒汗,面试也到这结束了。二零二六年设计登录未登录容量隔离已经不是前端存加后端存两句能糊弄过去的了。你要面对的是无状态绘画漂移防爆内存攻击、跨端合并一致性以及配额弹性伸缩四个维度的绞杀。真正的工业级设计分三层。如果这道题你也不会的话, 我整理了让大厂 hr 沉默的必考题库,包含 jvm 夺命连环问 spring 灵魂八谷高并发必杀场景、 radis 深度陷阱,点个赞, 评论区甩六六六,打包带走吧。第一层,身份锚点与容量预见,别让匿名成为攻击后门。传统做法用 session id 标识未登录用户,但二零二六年 web 已经全面拥抱 pwa 和客户端持久化, session id 容易被篡改和伪造。 正确的做法是设备指纹加短时 token 绑定,后端根据用户代理 ip 段 canvas 指纹生成不可逆的设备 id, 再签一个时效两小时的 anon token。 每次购物车操作必须携带这个 token。 服务端用布谷鸟过滤器记录 token 是 否活跃,而不是直接写 readis。 一个未登录用户最多占几十字节,恶意用户伪造百万 token 也撑不死。内存 容量限制不再是硬编码两百一千,而是动态配额。未登录用户根据行为风险评分调整上限,正常浏览给两百,疑似爬虫直接降到二十。登录用户则根据会员等级、历史订单金额动态扩容,大促期间临时提升到一千五百配额配置存在配置中心实时生效,不需要重启。 第二层,跨端合并的冲突仲裁,没有完美的自动合并,只有可接受的策略。未登录购物车和登录购物车合并,二零二六年不再追求无冲突融合标准,做法是时间戳加显示冲突队列,每个 sku 的 添加时间精确到毫秒,合并时同 sku 取时间最新的数量不同。 sku 取并集, 如果并级超过一千,超出的 s k u 不 进主购物车,而是放入待确认队列。前端弹窗让用户手动勾选保留哪些,这种人机协调比任何自动策略都安全。同时后端为每个登录用户维护一个 merchant transaction 字段,每次合并后版本号加一。 如果用户在 a 设备合并后又操作了购物车, b 设备在登录时发现版本落后,直接拒绝自动合并,提示购物车在其他设备已变更,请手工确认,这样避免了数据无声覆盖。第三层存储架构的分冷热与退币。 read 不 能存,所有分级才是王道,未登录用户的两百个 sku 根本不需要进 readis。 二零二六年的最佳实践是边缘 kv 存储在 cdi 边缘节点或网关层,用 rexdb 本地盘缓存,只存设备指纹和 sku 列表。 ttl 设为七天用户登录后,边缘节点把数据一步推送到中心 radis, 这样即使百万级未登陆购物车,压力也不到核心级群。 登录用户的一千个 s k u 也要分热冷。最近七天活跃的 s k u 放 radis, 长时间未访问的自动归党到对象存储加原数据表,每次查询时先读 radis, 读到再异步加载归党,同时写入路径上做动态压缩。 s k u 列表超过五百个时,用 z t d 压缩后再存,内存占用减少百分之六十。 所以这道题考的是什么?不是会不会用 local storage and readis, 而是你有没有把登录未登录容量隔离,从简单的 ifelse 逻辑升级为身份铰定防攻击、跨端合并可仲裁存储分级分冷热的可伸缩架构。二零二六年,一个糟糕的购物车设计, 可能在垃圾请求里把 readis 内存打爆,或者在合并逻辑里悄悄丢掉你的高价值用户数据,而你还在查日记找原因,厉害。

面试官,服务挂了怎么办?他重启加机器,面试官,机器不够用呢?他沉默了三秒,真实翻车。某电商大促,营销服务超时,没做垄断,直接把下单链路拖垮,最后整个系统全挂了。 降级、垄断四个必须搞清楚的点。如果你担心简历上的东西讲不出来,我已经把面试经常问到的技术站场景题都整理好了, 只要你是我的粉丝,留言六六六,打包带走。一、搞清楚,降级和熔断是两回事。一、降级主动关闭非核心功能,让出资源保住主流程,比如大促时关掉评论推荐服务。二、熔断背痛触发,当某个服务持续超时或报错,自动切断调用,避免血崩。 三、很多人以为熔断就是降级,其实熔断是保险丝,降级是关空调,不一样。二、熔断器三个状态必须掌握。 一、关闭状态,正常调用,统计失败次数达到预值就打开。二、打开状态直接返回,否败不发请求,等冷却时间结束。三、半开状态,放一个请求试试水,成功就关闭,失败就继续打开。 四、 santa 的 滑筒窗口, district 的 滚动时间窗,核心就是控制统计精度。三、降级策略写错比不做降级还惨。一、常见错误查询缓存失败就查数据库,还美其名曰都抵查询。二、这种降级策略等于没降,直接把数据库打死了。三、正确的降级, 查不到就返回空或默认值,绝对不能再调用依赖方。四、熔断域值设置要看业务。一、大部分人背参数,五秒内失败,百分之五十就熔断。一问为什么是这个数就蒙了。二、这个域值要根据你的服务 sl a 来定,比如支付服务 p 九九是两百零秒,那就不能设一秒超时 三,还要考虑是不是冷启动场景,新服务刚启动没有预热,失败率本来就高。四半开恢复时放多少请求也很关键,放太多会直接把刚恢复的服务打挂 熔断不是配个注解就完事,降级不是返回怒就收工,线上出过事的都知道,配错了比不配更危险。你觉得你们系统现在的降级熔断配置经得起一次大促吗?