请马上换掉Dubbo,立刻使用这个后端开发框架!

对于Java工程师来说,几乎没有没听过大名鼎鼎的Spring框架的,Spring框架早已成为了Java后端开发事实上的行业标准,可以说,是Spring成就了Java,Spring也成为Java程序员必修课之一。同时,随着Spring Boot和Spring Cloud的出现,使得开发工程师能更高效的利用Spring和其他基础设施快速搭建系统,Spring全家...
📅 2023-08-16 阅读全文 →

微服务失败的11个原因

在过去的几年里,我对进行数字化转型的多家产品团队进行了架构审查。大多数团队都是遵循微服务架构来构建产品。他们完全有理由使用基于微服务的架构:更快的开发、更好的可扩展性、更小的独立团队、独立的部署、使用正确的技术来完成工作,等等。但是,我经常发现,团队在微服务方面举步维艰。他们未能充分利用微服务的优势。在本文中,我将分享我的观点,阐述团队在微服务方面为何举步维...
📅 2023-08-16 阅读全文 →

实践微服务六年,我获得了这些心得体会

作为微服务架构的忠心拥趸,虽然有时也会对其感到不爽。使用微服务时,我时常能感受到“小中见大”、“稳中有快”等理念,另一方面也会警惕“厨子太多烧坏了汤”。回顾 2014 年,公司正在通过采用微服务架构实施数字化转型。那时数字化、转型和微服务这些词对我就是天籁之音。作为一名解决方案架构师,我非常希望能了解这种新模式。为了跟上技术前沿趋势,我阅读了大量微服务架构相...
📅 2023-08-16 阅读全文 →

由于不知线程池的bug,某Java程序员叕被祭天

说说你对线程池的理解?首先明确,池化的意义在于缓存,创建性能开销较大的对象,比如线程池、连接池、内存池。预先在池里创建一些对象,使用时直接取,用完就归还复用,使用策略调整池中缓存对象的数量。Java创建对象,仅是在JVM堆分块内存,但创建一个线程,却需调用os内核API,然后os要为线程分配一系列资源,成本很高,所以线程是一个重量级对象,应避免频繁创建或销毁...
📅 2023-08-16 阅读全文 →

从谷歌辞职后,作为独立开发者的第三年,我从年入 3 万做到了年入 40 万

我辞掉在谷歌的工作,创办自己的软件公司已经 3 年了。这是我迄今为止收入最高的一年,年收入 6.3 万美元,比 2019 年增长了 7 倍。今天是我辞掉在谷歌的工作,创建自己的软件业务的 3 周年纪念日。在第 1 年和第 2 年结束时,我都作了总结,所以,是时候分享我的进步了。这一年,一切顺利在我自己工作的头两年里,我的总收入不足 1 万美元(约人民币 6....
📅 2023-08-16 阅读全文 →

毕业就在小公司躺了3年,面试大厂发现,没有高并发经验没人要……

"所有程序员,做好准备,来3、2、1,上链接!",好吧,我承认,这里没有李佳琦。秒杀玩法在电商,直播带货业务中运用的非常广泛,越来越多的秒杀玩法不断出现,秒杀系统几乎成了所有互联网公司的“标配”。秒杀系统中涉及到的很多技术点也是许多一二线大厂面试重点考察的知识点,也是在大厂工作中必须掌握的技术门槛。“如何设计一个好的秒杀系统“,互联网大厂面试中最常问的一个问...
📅 2023-08-16 阅读全文 →

微服务架构10个最重要的设计模式

自从软件开发的早期(1960年代)以来,解决大型软件系统中的复杂性一直是一项艰巨的任务。多年来,软件工程师和架构师为解决软件系统的复杂性进行了许多尝试:David Parnas的模块化和信息隐藏(1972),Edsger W. Dijkstra的关注分离(1974),面向服务的体系结构(1998)。他们所有人都使用了久经考验的成熟技术来解决大型系统的复杂性:...
📅 2023-08-16 阅读全文 →

扔掉源码,15张图带你彻底理解java AQS

java中AQS是AbstractQueuedSynchronizer类,AQS依赖FIFO队列来提供一个框架,这个框架用于实现锁以及锁相关的同步器,比如信号量、事件等。在AQS中,主要有两部分功能,一部分是操作state变量,第二部分是实现排队和阻塞机制。注意,AQS并没有实现任何同步接口,它只是提供了类似acquireInterruptible的方法,调...
📅 2023-08-16 阅读全文 →

某大厂程序员爆料:按摩时喜欢上比自己小的漂亮女技师,靠谱吗?

按摩、足疗、spa等项目已经成为现代人缓解身心压力的有效方法之一,程序员天天伏案对着电脑,肩颈更容易出现各种问题,多去按摩不仅能放松身体,还能减轻心理压力。但按摩时免不了会和技师发生身体接触,如果技师是个年轻漂亮的女技师,很容易让被按摩的男人心猿意马。一位字节的程序员就在按摩时喜欢上了给自己做足疗的女技师,是个很年轻的小姑娘,比自己小两岁。楼主问大家:这段感...
📅 2023-08-16 阅读全文 →

推荐一个特别适合架构师的副业,有人靠它月收入2万多!

孔子说:“三十而立,四十不惑。”实际上,大多数人根本做不到:30岁的时候,本该有所成就,但现实却是没房没车也没钱,一事无成;40岁的时候,上有老下有下,中年危机重重,根本做不到不惑。三四十岁,其实是最尴尬的一个年龄段了。工作了十几二十年,生活有变得更好吗?最后还是被现实的残酷打败,因为打工无法真正的改变生活,更不能跳出越来越固化的阶层。富人越来越富,穷人越来...
📅 2023-08-16 阅读全文 →

微博并发这么牛逼!看他架构如何设计的?

1架构以及我理解中架构的本质 在开始谈我对架构本质的理解之前,先谈谈自己的个人见解,千万级规模的网站感觉数量级是非常大的,对这个数量级我们战略上要重视它 ,战术上又要藐视它。先举个例子感受一下千万级到底是什么数量级?现在的优步(Uber),从媒体公布的信息看,它每天接单量平均在百万左右,假如每天有10个小时的服务时间,平均QPS只有30左右。对于一个后台服务...
📅 2023-08-16 阅读全文 →

“北大实习生遭遇字节PUA”后续来了!字节回应:部分指控没有证据,无法查实!当事人:不接受!

前几天“北大实习生遭遇字节职场pua”事件在网上迅速发酵,闹得沸沸扬扬,引发许多人关注。(具体请看我们之前发的文章《北大学生遭遇字节PUA!实习生离职前必须找到两个继任者,找不到就拒批离职申请和薪资证明!》)近日,字节官方给出了针对此事的调查结果:在这份报告中,字节承认了“找到backup才能离职”,但以没有证据等原因否认了“leader拒批离职申请或扣留薪...
📅 2023-08-16 阅读全文 →

看看人家 SpringBoot 的全局异常处理多么优雅...

1SpringBoot全局异常准备 说明:如果想直接获取工程那么可以直接跳到底部,通过链接下载工程代码。开发准备环境要求JDK:1.8SpringBoot:1.5.17.RELEASE首先还是Maven的相关依赖:<properties>        &l...
📅 2023-08-16 阅读全文 →

面试被问BIO、NIO、AIO的区别,怎么破?

来源:juejin.cn/post/6844903985158045703很多文章在谈论到BIO、NIO、AIO的时候仅仅是抛出一堆定义,以及一些生动的例子。看似很好理解。但是并没有将最基础的本质原理显现出来,如果没有没有从IO的原理出发的话是很难理解这三者之间的区别的。所以本篇文章从Java是如何进行IO操作为开头进行分析。Java中的IO原理首先Java...
📅 2023-08-16 阅读全文 →

排名第一的安全软件,为啥会变成流氓软件?

来源:胡萝卜周(carrotchou)评测机构AV-Test此前发布的杀软排名榜显示,360旗下的360安全卫士、360杀毒位于前列,腾讯旗下的电脑管家位列第三。瑞星兴起提起杀毒软件,在更早的时候,不得不提的是瑞星,相信还是有部分网友对小狮子有深刻印象。你可能不知道,瑞星杀毒软件曾经占领了杀毒软件市场份额高达80%,年销售额达到了惊人的7亿元。要说瑞星发展史...
📅 2023-08-16 阅读全文 →

ThreadLocal为什么要使用弱引用和内存泄露问题

在threadlocal的生命周期中,都存在这些引用. 看下图: 实线代表强引用,虚线代表弱引用.下面来看两个问题:1为什么要使用弱引用2为什么会出现内存泄露问题- 为什么要使用弱引用 - 每个thread中都存在一个map, map的类型是ThreadLocal.ThreadLocalMap.Map中的key为一个threadlocal实例. 这...
📅 2023-08-16 阅读全文 →

张一鸣宣布卸任字节CEO!网友:完不成OKR被优化了!

近日,字节跳动创始人张一鸣发布内部全员信,宣布自己将卸任字节跳动CEO,由字节跳动联合创始人梁汝波接任成为新CEO。在内部信里,张一鸣说,对去年关于探索远景新战略 、研究组织和管理、提升社会责任的三个年度OKR,自己觉得都不满意。所以决定放下公司日常管理工作,聚焦远景战略、企业文化和社会责任等长期重要事项。下面是张一鸣的内部全员信:对张一鸣的“急流勇退”,许...
📅 2023-08-16 阅读全文 →

百度某程序员哭诉:发现相恋七年的女友和别人开房!婚房已买,房本只写了女方名字,怎么把钱拿回来?

相恋七年准备结婚却遭遇对方背叛,自己买的婚房房本上却不是自己的名字……这些听起来像电视剧的情节却真实发生在百度一个程序员身上。这位程序员小哥哥发帖讲述了自己的悲情故事:发现相恋七年的女友网恋,看记录已经开过房了。两人还没领证,本打算今年领证。去年买的婚房共300万首付,女友出了100万,自己出了200万,但房本上只写了她的名字,没想到会出现这种情况,请问该如...
📅 2023-08-16 阅读全文 →

Redis中ZSet的底层数据结构跳跃表skiplist,你真的了解吗?

一、前言老周写这篇文章的初衷是这样的,之前项目中有大量使用 Redis 的 ZSet 数据结构来实现各种排行榜的功能。老周以前也写过关于跳表的数据结构,但那是纯数据结构方面来分析的,今天我们就来从跳跃表在 Redis 中的底层实现方向来分析。我们都知道 Redis 有五种常用的数据结构:String、Hash、List、Set 以及 ZSet,其中 ZSet...
📅 2023-08-16 阅读全文 →

美团二面:Redis与MySQL双写一致性如何保证?

前言四月份的时候,有位好朋友去美团面试。他说,被问到Redis与MySQL双写一致性如何保证?这道题其实就是在问缓存和数据库在双写场景下,一致性是如何保证的?本文将跟大家一起来探讨如何回答这个问题。谈谈一致性一致性就是数据保持一致,在分布式系统中,可以理解为多个节点中数据的值是一致的。强一致性:这种一致性级别是最符合用户直觉的,它要求系统写入什么,读出来的也...
📅 2023-08-16 阅读全文 →

千人千面系统,这样搞比较靠谱【干货】

本文详细描述了千人千面的具体业务逻辑、技术方案和推荐算法,以及需要注意的问题。阅读全文需要15分钟。互联网行业的快速发展,给我们带来了极大的便利。回顾整个互联网行业的发展历程,从PC时代到移动互联网时代,从移动互联网时代到IOT(物联网)时代,现在又即将从IOT时代迈入AI(人工智能)时代。这些飞速发展的背后,其实是对数据利用的巨大变革。当下,移动互联网技术...
📅 2023-08-16 阅读全文 →

三流面试问技术,二流面试问平台,一流面试……

前几天面了一位 91 年的大数据架构师,他工作 8 年,5年后端开发经验,从事架构设计只有短短 3 年时间,上份工作已经10万月薪了。但让我惊讶的是,他对架构设计的理解深度与广度,远在很多经验丰富的“老江湖”之上,并且已经完全形成了一套自己的方法论!话说回来,那个小伙子要100k真一点也不多,看看行业的 JD 就知道了,现在高阶架构师这么缺,到哪他都抢手。和...
📅 2023-08-16 阅读全文 →

面试官:啥是集群策略啊?

之前有读者问了 Dubbo Cluster 集群的一些问题。那么本文聊一聊 Dubbo 的 Cluster 集群和 Failover Cluster (失败自动切换)策略。如果没有特别说明的地方,源码均是来自 2.7.5 版本。在阅读之前先抛出几个问题:1.Dubbo Cluster集群的作用是什么?2.Dubbo Cluster的10个实现类你能...
📅 2023-08-16 阅读全文 →

故事篇:数据库架构演变之路

故事的开头总是这样,适逢其会、猝不及防。今天我哼着“也是黄昏的沙滩上,有着脚印两对半......”在海边散步,迎面走来了一位身穿黄金甲的男子,来海边还穿这么花哨,真是个傻X。定睛一看,这不是嘉文吗?❝背景介绍:嘉文四世,德玛西亚皇子,是有名的高富帅。与盖伦、菊花信并称草丛三剑客,整天嚷嚷着“犯我德邦者,虽远必诛”。❞「嘉文:」 我在老爸的支持下自己开了家银行...
📅 2023-08-16 阅读全文 →

25种代码坏味道总结+优化示例

前言什么样的代码是好代码呢?好的代码应该命名规范、可读性强、扩展性强、健壮性......而不好的代码又有哪些典型特征呢?这25种代码坏味道大家要注意啦1. Duplicated Code (重复代码)重复代码就是不同地点,有着相同的程序结构。一般是因为需求迭代比较快,开发小伙伴担心影响已有功能,就复制粘贴造成的。重复代码很难维护的,如果你要修改其中一段的代码...
📅 2023-08-16 阅读全文 →

36岁前百度员工哀叹:结婚三年老婆要离婚,要求分走大半财产,并且带走孩子。阴差阳错之下,发现孩子不是自己亲生的!

都说本命年不是特别顺就是特别背,走顺字也就罢了,如果走了背字,那真是有苦难言,尤其是人到中年以后,各种不顺心的事纷至沓来。一位过三十六岁生日的百度程序员就遇到了人生中的大坎,他发帖哭诉:几乎所有的不幸都汇聚在了这段日子,公司站队失败,大领导被挤兑走,自己恐怕也待不久了。结婚三年老婆要离婚,要求分走大半财产,并且带走孩子。阴差阳错之下,发现孩子不是自己亲生的,...
📅 2023-08-16 阅读全文 →

震惊!马士兵竟然和腾讯干上了...

多线程编程的理论↓↓↓多线程编程的现实↓↓↓(无声视频)看到这,你什么心情?此时此刻心情”好烦烦“!今天给小伙伴们出几道阿里必问的面试题,测测你能完美的回答几道呢?有没有一种一定能保证线程安全的代码写法?(偷偷告诉你,真的有!)多个线程如何保持A1B2C3等顺序交替输出?synchronized volatile的CPU原语是如何实现的?无锁、偏向锁、轻量级...
📅 2023-08-16 阅读全文 →

Redis 实战篇:巧用 Bitmap 实现亿级海量数据统计

在移动应用的业务场景中,我们需要保存这样的信息:一个 key 关联了一个数据集合。常见的场景如下:给一个 userId ,判断用户登陆状态;显示用户某个月的签到次数和首次签到时间;两亿用户最近 7 天的签到情况,统计 7 天内连续签到的用户总数;通常情况下,我们面临的用户数量以及访问量都是巨大的,比如百万、千万级别的用户数量,或者千万级别、甚至亿级别的访问信...
📅 2023-08-16 阅读全文 →

几个简化算法理解的网站,进来收藏!

有小伙伴后台留言说,算法难懂、数据结构太抽象不好理解,作为一个过来人,我初学数据结构与算法直接是啃的大学教材,这样的学习方式不是适合所有人。尤其是编程基础比较差的同学,后来我找到了「捷径」学习方法,如果算法和数据结构能够以动画的形式呈现,那该多好。这就是算法可视化,下面就来分享几个关于算法和数据结构可视化的网站和项目。Data Structure Visua...
📅 2023-08-16 阅读全文 →

《互联网大厂交友搭讪指南》

单身程序员最头疼的问题之一就是:如何跟陌生人搭讪?如今有程序员总结了一份《互联网大厂交友搭讪指南》,有了它,你再也不必头疼“不会跟陌生人说话”的问题了!指南在此,请速速收好!来看看这份《指南》:字节员工:你也住这个小区?为了拿1500元的住房补贴吗?我们在一起吧!可以拿3000元的房补!(按照这个节奏,等交了朋友就可以顺理成章地同居了吧?)腾讯员工:你也在等...
📅 2023-08-16 阅读全文 →