Java建设者

其他

这是我看过关于微服务架构最好的文章

Mesh相比于微服务框架的优点在于它不侵入代码,升级和维护更方便。它经常被诟病的则是性能问题。即使回环网络不会产生实际的网络请求,但仍然有内存拷贝的额外成本。另外有一些集中式的流量处理也会影响性能。
2020年6月6日
其他

我和面试官之间关于操作系统的一场对弈!写了很久,希望对你有帮助!

时间局部性是通过将近来使用的指令和数据保存到高速缓存存储器中,并使用高速缓存的层次结构实现。空间局部性通常是使用较大的高速缓存,并将预取机制集成到高速缓存控制逻辑中实现。虚拟内存技术实际上就是建立了
2020年6月5日
其他

万字干货!一文详解所有线上故障排查方法

space这个意思是元数据区的内存占用已经达到XX:MaxMetaspaceSize设置的最大值,排查思路和上面的一致,参数方面可以通过XX:MaxPermSize来进行调整(这里就不说
2020年6月4日
其他

怒肝8个月源码,我成为了 Spring 开源贡献者

其实这个问题就是因为英文不好衍生出来的。因为英文不好,自然就会担心我写的东西他能不能看懂呢?我的建议就是,结合你测试的代码去描述问题。你不用去担心别人看不懂你写的代码,就以我那个
2020年6月3日
其他

十分钟带你彻底搞懂原码、反码、补码

https://www.cnblogs.com/zhangziqiu/archive/2011/03/30/ComputerCode.html
2020年6月2日
其他

说了这么多次 I/O,可你知道其中的原理么

软件有两种,一种是我们上面介绍过的基于特定设备的,还有一种是设备无关性的,设备无关性也就是不需要特定的设备。设备驱动程序与设备无关的软件之间的界限取决于具体的系统。下面显示的功能由设备无关的软件实现
2020年6月2日
其他

Java基础知识面试题大集合

实现原理:Java程序是通过java虚拟机在系统平台上运行的,只要该系统可以安装相应的java虚拟机,该系统就可以运行java程序。
2020年5月31日
其他

珍藏已久的 OS 学习网站拿出来分享给大家

《计算机网络:自顶向下方法》:https://www.bilibili.com/video/av41404195?from=search&seid=15854652450440912260
2020年5月29日
其他

如何高效的学习技术 --- 干货推荐

坚持写技术博客,别在意你写的东西在网上已经重复千百遍。当自己动手的时候,才会意识到眼高手低。让文章读起来流畅清晰,需要呕心沥血的删改。写作是对大脑的长期考验,想不到肯定写不出,想不清楚肯定写不清楚。
2020年5月29日
其他

怎么这么能肝?!第三本 PDF 和读者见面了。

我和一些北上广深的架构师也聊过,他们感叹现在年轻人都把精力放在了框架上,科班也好,培训班出来也罢,大家对基础的重视有些不足,也难怪,毕竟框架才能让人吃的起饭,但是随着最近
2020年5月27日
其他

Lambda表达式入门,看这篇就够了!

method();}/**一个参数有返回值*/@FunctionalInterfacepublic
2020年5月27日
其他

用漫画了解 Linux 内核到底长啥样!

来源:https://linux.cn/article-8290-1.html
2020年5月25日
其他

2w字长文给你讲透了配置类为什么要添加 @Configuration注解

(BeanFactoryAware.class.isAssignableFrom(ClassUtils.getUserClass(obj.getClass().getSuperclass())))
2020年5月24日
其他

作为阿里的面试官,我有话想说。

让面试官瞬间点燃,我告诉你,那你就是成功了99.999999%了,而剩下的无非就是唠嗑,快速把氛围点燃,你会发现它不再只是一次面试,更是一次交流,你完成的不仅是一次面试,还结交了一位志同道合的好友。
2020年5月24日
其他

都说变量有七八种,到底谁是 Java 的亲儿子

关键字定义,并且在任何方法、构造方法、块之外的变量都是实例变量。实例变量都是基于特定实例的,实例变量不会在实例之间共享,也就是说,每一个对象的实例都有自己的一个实例变量。下面是实例变量的一个例子
2020年5月23日
其他

Docker 入门看这一篇就够了,万字详解!

/bin/bashbb7f32368ecf0492adb59e20032ab2e6cf6a563a0e6751e58930ee5f7aaef204[root@docker01
2020年5月23日
其他

Java 代码优化之细节是魔鬼

本文的内容有些来自网络,有些来自平时工作和学习,当然这不重要,重要的是这些代码优化的细节是否真真正正地有用。那本文会保持长期更新,只要有遇到值得分享的代码优化细节,就会不定时地更新此文。
2020年5月22日
其他

一次相亲经历,我彻底搞懂了什么叫阻塞非阻塞,同步异步

类比应用程序的IO,应用程序只需要发起一次读取数据的请求,接下来就等着内核将数据拷贝到用户空间,并且内核将数据拷贝完成后会通知应用程序,在整个过程中程序可以继续往下执行。类似下面这样的代码:
2020年5月21日
其他

40 个 Java 多线程问题总结

相互等待对方持有的锁导致程序无限死循环下去。当然也仅限于此了,问一下怎么写一个死锁的程序就不知道了,这种情况说白了就是不懂什么是死锁,懂一个理论就完事儿了,实践中碰到死锁的问题基本上是看不出来的。
2020年5月19日
其他

一个 synchronized 跟面试官扯了半个小时

hash:保存对象的哈希码age:保存对象的分代年龄biased_lock:偏向锁标识位lock:锁状态标识位JavaThread*:保存持有偏向锁的线程IDepoch:保存偏向时间戳安琪拉:
2020年5月18日
其他

HTTP 核心总结 PDF 也出来了!!!

,不管是跳槽还是涨薪都延缓了,虽然今年过的很艰难,但是机会还是有的,应该说任何时候都会有机会,我也是非常喜欢耗子叔说的一句话
2020年5月17日
其他

面试官:小伙子,听说你看过ThreadLocal源码?(万字图文深度解析ThreadLocal)

经过hash计算后应该落到index=4的桶中,由于index=4桶已经有了数据,所以往后迭代最终数据放入到index=7的桶中,放入后一段时间后index=5中的Entry数据key变为了null
2020年5月17日
其他

写的很好!细数 Java 线程池的原理

//纳秒workQueue:一个阻塞队列,用来存储等待执行的任务,这个参数的选择也很重要,会对线程池的运行过程产生重大影响,一般来说,这里的阻塞队列有以下几种选择:
2020年5月16日
其他

看完这篇操作系统,和面试官扯皮就没问题了。

在计算机中,设备驱动程序是一种计算机程序,它能够控制或者操作连接到计算机的特定设备。驱动程序提供了与硬件进行交互的软件接口,使操作系统和其他计算机程序能够访问特定设备,不用需要了解其硬件的具体构造。
2020年5月15日
其他

Java技术核心总结出 PDF 版本了!!!

写的文章还不错。会分享计算机底层、计算机网络、操作系统,Java基础、框架、源码等文章。
2020年5月13日
其他

面试官问:ConcurrentHashMap 如何实现高并发

中,使用一个全局的锁来同步不同线程间的并发访问。同一时间点,只能有一个线程持有锁,也就是说在同一时间点,只能有一个线程能访问容器。这虽然保证多线程间的安全并发访问,但同时也导致对容器的访问变成
2020年5月11日
其他

我肝了一个月,给你写出了这本Java开发手册。

的一个内部类。也就是说,每个内部类都能独立地继承一个(接口的)实现,所以无论外围类是否已经继承了某个(接口的)实现,对于内部类都没有影响。这也是隐藏了内部实现细节。内部类拥有外部类的访问权。
2020年5月9日
其他

【趣事】一根网线发起的攻击

既然刚来时他的网线插口就能用,想必我这儿的也有信号。上一届的肯定都开通过,总不至于走了以后还封掉。趁着有天寝室没人,我把那笔记本的网线拖到我这边一试,果然有信号!顿时来了精神,感觉有希望了!
2020年5月8日
其他

由 bilibili 关于后浪的有感 --- 如何做一个快乐的程序员

需求变来变去,自己的辛勤工作,没有得到肯定,没有发光发热,可能一不小心就变成了无用功,在这种前提下,还要在可能因为工期紧张,面临加班的情况下,再做一次无用功,想想都感觉这样的日子好累啊,日月无光。
2020年5月6日
其他

十大经典排序算法最强总结(含JAVA代码实现)

插入排序(Insertion-Sort)的算法描述是一种简单直观的排序算法。它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。插入排序在实现上,通常采用
2020年5月5日
其他

这是我看过关于 volatile 最好的文章

的高速缓存当中,那么CPU进行计算时就可以直接从它的高速缓存读取数据和向其中写入数据,当运算结束之后,再将高速缓存中的数据刷新到主存当中。举个简单的例子,比如下面的这段代码:
2020年5月3日
其他

我画了35张图就是为了让你深入 AQS

这里用了一步一图的方式结合三个线程依次加锁/释放锁来展示了ReentrantLock的实现方式和实现原理,而ReentrantLock底层就是基于AQS实现的,所以我们也对AQS有了深刻的理解。
2020年5月2日
其他

我是如何被一步步诈骗的?

今天以前,每每看到一些电信诈骗事件,我就会想,被诈骗者是在什么时候,什么地点,以什么样的心情去处理和接受这样残忍的事情。然而,今天下午我也亲身经历了这样惊心动魄,或者说是毫无人性的骗局。
2020年5月2日
其他

你为什么不分享?

其实,有类似文章重要么?我认为一点都不重要,因为第一个读者是你。而你是面向自己去做这个事情的。同时你要明白,同样一篇课文,不同语文老师,不同讲法。同一个老师,不同学生,不同领悟。不要介意,just
2020年4月30日
其他

我写了一份操作系统词典送给你!

Bus):是连接计算机系统与外部设备的一种串口总线标准,也是一种输入输出接口的技术规范,被广泛地应用于个人电脑和移动设备等信息通讯产品,并扩展至摄影器材、数字电视(机顶盒)、游戏机等其它相关领域。
2020年4月28日
其他

小心点,别被当成垃圾回收了。

FileOutputStream:当你创建此对象的实例时,它从操作系统分配文件句柄。如果你让流的引用在关闭前超过了其作用范围,该文件句柄会怎么样?实际上,每个流都会有一个
2020年4月22日
其他

看完这篇Exception 和 Error,和面试官扯皮就没问题了

https://www.java67.com/2012/12/noclassdeffounderror-vs-classnotfoundexception-java.html
2020年4月8日
其他

看完这篇 Session、Cookie、Token,和面试官扯皮就没问题了

身份验证可以在本地进行,而不是在请求必须通过服务器数据库或类似位置中进行。这意味着可以对用户进行多次身份验证,而无需与站点或应用程序的数据库进行通信,也无需在此过程中消耗大量资源。
2020年4月5日
其他

计算机最魔幻的事情就是它能感知到你的思想

控制器的任务是把串行的位流转换为字节块,并进行必要的错误校正工作。字节块通常会在控制器内部的一个缓冲区按位进行组装,然后再对校验和进行校验并证明字节块没有错误后,再将它复制到内存中。
2020年4月2日
其他

简直不要太硬了!一文带你彻底理解文件系统

虽然日志结构系统的设计很优雅,但是由于它们和现有的文件系统不相匹配,因此还没有广泛使用。不过,从日志文件结构系统衍生出来一种新的日志系统,叫做日志文件系统,它会记录系统下一步将要做什么的日志。微软的
2020年3月25日
其他

看完这篇 HTTPS,和面试官扯皮就没问题了

通常情况下,数字证书的申请人将生成由私钥和公钥以及证书签名请求(CSR)组成的密钥对。CSR是一个编码的文本文件,其中包含公钥和其他将包含在证书中的信息(例如域名,组织,电子邮件地址等)。密钥对和
2020年3月14日
其他

内存:你跑慢点行不行?CPU:跑慢点你养我吗?内存:我不管!

那就是顺序执行)。在个人计算机上,一般会打开很多应用程序,比如输入法、电子邮件、浏览器,这些进程在不同时刻会有一个进程正在运行,其他应用程序可以通过鼠标来唤醒。在系统中没有物理内存的情况下很难实现。
2020年3月9日
其他

写给大忙人看的进程和线程

中所有进程都是平等的,唯一类似于层次结构的是在创建进程的时候,父进程得到一个特别的令牌(称为句柄),该句柄可以用来控制子进程。然而,这个令牌可能也会移交给别的操作系统,这样就不存在层次结构了。而在
2020年3月3日
其他

写给大忙人看的操作系统

设备中的第一个扇区被读入内存并执行。该扇区包含一个程序,该程序通常在引导扇区末尾检查分区表以确定哪个分区处于活动状态。然后从该分区读入第二个启动加载程序,该加载器从活动分区中读取操作系统并启动它。
2020年2月28日
其他

震惊 | HTTP 在疫情期间把我吓得不敢出门了

协议则不同,它是应用层的协议,数据到达之后需要告诉应用程序这是什么数据。当然不告诉应用这是哪种类型的数据,应用也可以通过不断尝试来判断,但这种方式无疑十分低效,而且有很大几率会检查不出来文件类型。
2020年1月31日
其他

你还在为 HTTP 的这些概念头疼吗?

Connection、Keep-Alive、Proxy-Authenticate、Proxy-Authorization、Trailer、TE、Transfer-Encoding、Upgrade
2020年1月19日
其他

对不起,学会这些知识后我飘了

围起来的部分,是给构成程序的命令和数据的集合体上加一个名字而得到的,称为段定义。段定义的英文表达具有区域的意思,在这个程序中,段定义指的是命令和数据等程序的集合体的意思,一个程序由多个段定义构成。
2020年1月15日
其他

你看那个 HTTP ,它飞起来了

2.0的设计目标是在兼容1.x语义和操作的基础上,给用户带来更快捷、更简单、更安全的体验高效地利用当前的网络带宽,为此2.0做了很多调整主要包括:二进制化分帧、多路复用、头部压缩等。
2020年1月11日
其他

看完这篇HTTP,跟面试官扯皮就没问题了

Connection、Keep-Alive、Proxy-Authenticate、Proxy-Authorization、Trailer、TE、Transfer-Encoding、Upgrade
2020年1月10日