这本书是软件研发领域重要的里程碑,合著此书的四位作者 Erich Gamma,Richard Helm,Ralph Johnson ,John Vlissides 被业内称为GoF(Gang of Four),因此这本书也被人称为GoF设计模式。 1.创建型模式 这一类设计模式的目的是用于创建对象。 2.结构型模式
1. 写在前面 周末就像太阳,总会到来,也总会离开。 此刻,没错,是周六呀!还是双休那种! 昨晚在B站看了几个长视频,导致2点才睡觉,早上一觉醒来已经10点了。 在这里温馨提示各位盆友们,虽然我们都是年轻人,但还是要规律作息,早睡早起。 废话不多说了,
总有粉丝问我有什么免费的学习资料分享么? 我会慎重分享,因为我觉得太多的免费资料,都是“坑”,有的没啥干货,有的甚至出现很多低级错误,所以建议大家慎重选择,偶尔付费一些没啥损失。 之前经常推荐拉勾教育的专栏,虽然每次都是1元钱,但也是要付
不知道你们多长时间没有参加过面试了。 我昨天参加了一线大厂的技术面,被问到了一些并发相关的问题,没想到这么难: synchronized volatile的CPU原语是如何实现的? 无锁、偏向锁、轻量级锁、重量级锁有什么差别? 线程间通信,同机器进程间通信,跨机器进程
今天,我不自量力的面试了某大厂的java开发岗位,迎面走来一位风尘仆仆的中年男子,手里拿着屏幕还亮着的mac 他冲着我礼貌的笑了笑,然后说了句“不好意思,让你久等了”,然后示意我坐下,说:“我们开始吧。看了你的简历,觉得你对redis应该掌握的不错,我
背景 秒杀的特征 秒杀系统 背景 秒杀活动是绝大部分电商选择的低价促销、推广品牌的方式。不仅可以给平台带来用户量,还可以提高平台知名度。 一个好的秒杀系统,可以提高平台系统的稳定性和公平性,获得更好的用户体验,提升平台的口碑,从而提升秒杀活动的
大家好,我是良许。 在我们编写代码的时候,我们经常需要知道两个文件之间,或者同一个文件不同版本之间有什么差异性。在 Windows 下有个很强大的工具叫作 BeyondCompare ,那在 Linux 下需要用到什么工具呢? 本文介绍 9 种 Linux 下常用的 9 种代码比对工具
进入大厂是许多程序员的梦想,挣钱多+成长快+资历牛,想想就让人激动。但往往梦想有多丰满,现实就有多骨感,一个从老牌大厂(阿里巴巴)跳到互联网新贵(字节跳动)的程序员小哥哥就后悔莫及,觉得自己做出了非常错误的选择:
最近网上流行着一个概念,叫做“内卷化效应”。 到底什么是内卷化呢?让我们先来讲一个故事: 不安分的观众 在一个剧场里,本来每一位观众都在安安静静坐在位子上着看剧。 忽然,有一个身材矮小的观众站了起来,并抱怨说:“我看不清楚,我要站起来看!” 他
前面程序喵介绍过C++11的新特性,这篇文章介绍下C++14的新特性。 「函数返回值类型推导」 C++14对函数返回类型推导规则做了优化,先看一段代码: #include using namespace std; auto func(int i) { return i;} int main() { cout
一、Spring Cloud核心组件:Eureka Netflix Eureka Eureka详解 1、服务提供者 2、服务消费者 3、服务注册中心 二、Spring Cloud核心组件:Ribbon 三、Spring Cloud核心组件:Feign 四、Spring Cloud核心组件:Hystrix 五、Spring Cloud核心组件:Zuul 六、总
前言 话不多说进入正题 1. 并发环境下面临的挑战 2. Zookeeper的介绍 3.zookeeper的理论 finally 前言 前面几篇以spring作为主题也是有些时日了,高并发分布式这个主题也挺大能说挺多东西的,也是再开了个坑,然后分P来慢慢跟进吧。 我和大部分人一样是一名学
- 1 - 事件背景 我在凤巢团队独立搭建和运维的一个高流量的推广实况系统,是通过HttpClient 调用大搜的实况服务。最近经常出现Address already in use (Bind failed)的问题。 很明显是一个端口绑定冲突的问题,于是大概排查了一下当前系统的网络连接情况和端
天天加班到12点,可以想象吗?也就是说,除了睡觉,其他时间都在工作,努力成为企业合格的螺丝钉。 阿里巴巴996向来在圈内闻名,32岁老阿姨表示已废,求支招! 在开始展示评论之前,猜猜网友们都会说些啥,哈,肯定有趁机找女盆友滴,噔噔噔,往下一
大家好,我是 yes。 最近我一直扎在消息队列实现细节之中无法自拔,已经写了 3 篇Kafka源码分析,还剩很多没肝完。之前还存着RocketMQ源码分析还没整理。今儿暂时先跳出来盘一盘大方向上的消息队列有哪些核心注意点。 核心点有很多,为了更贴合实际场景,我从