随笔分类 -  后端技术

摘要:某年某月的某一天,就像一张破碎的脸。。。 错了,重来。 某天,忽然发现大量的告警,经过多番调查研究考察(此处省略3000字),发现是由于 Eureka 服务下线太慢,而仍然有大量的请求打进来导致的报错。 于是,又经过了大量详细周密的考察和研究,终于找到了问题并且解决了(此处省略5000字)。 全文完 阅读全文
posted @ 2022-06-08 17:57 艾小仙 阅读(916) 评论(0) 推荐(2) 编辑
摘要:对于 Java 部分的面试来说,突然想到并发这一块的内容是不太完整的,这篇文章会通篇把多线程和并发都大致阐述一遍,至少能够达到了解原理和使用的目的,内容会比较多,从最基本的线程到我们常用的类会统一说一遍,慢慢看。 进程&线程 对于基本的概念,大家应该都很熟悉了,进程是资源分配的单位,线程是CPU调度 阅读全文
posted @ 2022-06-01 10:48 艾小仙 阅读(644) 评论(0) 推荐(0) 编辑
摘要:大部分公司都会有一个通用的模板项目,帮助你快速创建一个项目。通常,这个项目需要集成一些公司内部的中间件、单元测试、标准的代码格式、通用的代码分层等等。 今天,就利用 Maven 的 Archetype 插件来简单实现这一功能。 通过上面的图很清楚可以看到,实际利用这个插件机制就简单的几个步骤: ar 阅读全文
posted @ 2022-01-14 15:57 艾小仙 阅读(892) 评论(0) 推荐(0) 编辑
摘要:所有的垃圾回收器的目的都是朝着减少STW的目的而前进,G1(Garbage First)回收器的出现颠覆了之前版本CMS、Parallel等垃圾回收器的分代收集方式,从2004年Sun发布第一篇关于G1的论文后,直到2012年JDK7发布更新版本,花了将近10年的时间G1才达到商用的程度,而到JDK 阅读全文
posted @ 2021-06-23 11:31 艾小仙 阅读(559) 评论(0) 推荐(0) 编辑
摘要:互联网的格局,是和别处不同的:都是格子衫,稀疏的头发,双肩包,男。 写代码的人,傍午傍晚散了工,每每三两人,背着手,沿着软件园溜达一圈。 倘肯花点钱,便还会走到星巴克,买一杯咖啡,那样便能再多摸几分钟的鱼。 我从十九岁起,便在软件园的星巴克打工,老板说,看着还算清秀,就让我去收银。 我从此便成为了收 阅读全文
posted @ 2021-04-30 10:37 艾小仙 阅读(146) 评论(0) 推荐(0) 编辑
摘要:文章是正经文章,标题不要在意,哈哈 Git作为现在主流的版本控制工具,但是如何在软件开发过程中进行合理的分支管理是一个见仁见智的问题。 接下来我会对比下现有的几种比较普遍的分支管理方式和之前在阿里时候使用Aone的区别。 Git Flow 先看一张图片,这张图片来自Vincent在2010年提出的方 阅读全文
posted @ 2021-04-29 18:53 艾小仙 阅读(1406) 评论(0) 推荐(4) 编辑
摘要:中台的概念说了好多年了,起源就是芬兰的游戏公司supercell,之后阿里就提出了大中台小前台的战略,然后和疯狗一样侵蚀了中国。 很多小公司为了显得牛逼,管他呢,干他,就要硬怼个中台出来,反正有个名字叫出来就显得很叼的样子。 其实然并卵,中台的目的还是为了更快的能承接业务的需求,释放开发的重复劳动。 阅读全文
posted @ 2021-04-22 11:02 艾小仙 阅读(1818) 评论(2) 推荐(2) 编辑
摘要:单例可以说是最简单的一个设计模式了,单例模式要求只能创建一个对象实例。通常的写法是声明私有的构造函数,提供静态方法获取单例的对象实例。 常见的单例写法就是饿汉式、懒汉式、双重加锁验证、静态内部类和枚举的方式,写法可能大家都知道,不过针对不同的写法还是有可以继续深挖一下的地方,让我们从最简单的几种写法 阅读全文
posted @ 2021-04-15 13:27 艾小仙 阅读(979) 评论(9) 推荐(1) 编辑
摘要:最近刚入职新公司,发现数据库设计有点小问题,数据库字段很多没有NOT NULL,对于强迫症晚期患者来说,简直难以忍受,因此有了这篇文章。 基于目前大部分的开发现状来说,我们都会把字段全部设置成NOT NULL并且给默认值的形式。 通常,对于默认值一般这样设置: 整形,我们一般使用0作为默认值。 字符 阅读全文
posted @ 2021-04-05 21:35 艾小仙 阅读(5556) 评论(2) 推荐(5) 编辑
摘要:平时在面试中你肯定会经常碰见的问题就是:RocketMQ为什么快?Kafka为什么快?什么是mmap? 这一类的问题都逃不过的一个点就是零拷贝,虽然还有一些其他的原因,但是今天我们的话题主要就是零拷贝。 传统IO 在开始谈零拷贝之前,首先要对传统的IO方式有一个概念。 基于传统的IO方式,底层实际上 阅读全文
posted @ 2021-03-17 16:00 艾小仙 阅读(1739) 评论(1) 推荐(4) 编辑
摘要:这一周,个税申报可以退税了,去年我退了3000,今年美滋滋的点进去一看,补5000。。。 这就让我有点怀疑人生了,折腾了半天,研究了1个多小时,总算搞明白了到底这个怎么算的,最后愣是操作到了要补3000多。 折腾了很久,最后不光是少补2000块的事情吧,还弄懂了一些其他的规则。 小提示 首先,可能很 阅读全文
posted @ 2021-03-06 21:27 艾小仙 阅读(325) 评论(0) 推荐(0) 编辑
摘要:关于MVCC的原理,在《我想进大厂》之mysql夺命连环13问写过一次,但是当时写的其实并不准确,这个理解可以应付面试,帮助快速理解,但是他的真正实现原理我想再次拿出来说一说。 简单理解版 以下先引用我之前写过的那篇中的内容,可以快速理解,建议先简单看看。 要说幻读,首先要了解MVCC,MVCC叫做 阅读全文
posted @ 2021-02-24 00:27 艾小仙 阅读(606) 评论(2) 推荐(1) 编辑
摘要:谈谈你对Zookeeper的理解? Zookeeper是一个开源的分布式协调服务,由雅虎公司创建,由于最初雅虎公司的内部研究小组的项目大多以动物的名字命名,所以后来就以Zookeeper(动物管理员)来命名了,而就是由Zookeeper来负责这些分布式组件环境的协调工作。 他的目标是可以提供高性能、 阅读全文
posted @ 2021-02-02 12:58 艾小仙 阅读(660) 评论(0) 推荐(2) 编辑
摘要:最近由于在技改,发生了不少问题,前文中说的缓存穿透只是其中之一,想了想,虽然都是比较简单的问题,但是应该实际中还是有不少人碰到过,这些问题看似很简单,但是你绝对应该踩过。 ==和equals 关于==和equals区别,我相信稍微做过一两年开发的同学都应该很清楚,可是,然而,这个坑在很多开发的时候仍 阅读全文
posted @ 2021-01-13 15:18 艾小仙 阅读(750) 评论(2) 推荐(0) 编辑
摘要:看到这个问题,我想起当初玩魔兽世界的时候,25H难度的脑残吼的血量已经超过了21亿,所以那时候副本的BOSS都设计成了转阶段、回血的模式,因为魔兽的血量是int型,不能超过2^32大小。 估计暴雪的设计师都没想到几个资料片下来血量都超过int上限了,以至于大家猜想才会有后来的属性压缩。 这些都是题外 阅读全文
posted @ 2021-01-04 12:53 艾小仙 阅读(645) 评论(1) 推荐(4) 编辑
摘要:当业务规模达到一定规模之后,像淘宝日订单量在5000万单以上,美团3000万单以上。数据库面对海量的数据压力,分库分表就是必须进行的操作了。而分库分表之后一些常规的查询可能都会产生问题,最常见的就是比如分页查询的问题。一般我们把分表的字段称作shardingkey,比如订单表按照用户ID作为shar 阅读全文
posted @ 2020-11-09 08:49 艾小仙 阅读(4888) 评论(10) 推荐(12) 编辑
摘要:上一篇mysql面试的文章之后收到不少朋友的意见,希望深入讲讲复制、日志的格式这些,今天,我们就来深挖一下mysql的复制机制到底有哪一些,以及binlog和relay-log的结构到底是什么样子的。 binlog作用 binlog的主要作用是记录数据库中表的更改,它只记录改变数据的sql,不改变数 阅读全文
posted @ 2020-09-11 01:14 艾小仙 阅读(2675) 评论(0) 推荐(0) 编辑
摘要:领域模型(domain model)是对领域内的概念类或现实世界中对象的可视化表示。领域模型也称为概念模型、领域对象模型和分析对象模型。 ——《UML和模式应用》 我们在日常开发中,经常针对一些功能点争论“这个功能不应该我改,应该是你那边改”,最终被妥协改了之后都改不明白为什么这个功能要在自己这边改 阅读全文
posted @ 2020-08-27 19:11 艾小仙 阅读(1660) 评论(3) 推荐(1) 编辑
摘要:吞吐量 在了解qps、tps、rt、并发数之前,首先我们应该明确一个系统的吞吐量到底代表什么含义,一般来说,系统吞吐量指的是系统的抗压、负载能力,代表一个系统每秒钟能承受的最大用户访问量。 一个系统的吞吐量通常由qps(tps)、并发数来决定,每个系统对这两个值都有一个相对极限值,只要某一项达到最大 阅读全文
posted @ 2020-08-25 10:01 艾小仙 阅读(600) 评论(0) 推荐(0) 编辑
摘要:​平时我们在日常开发生活都在大量和开源软件打着交道,例如安卓、Linux、Github、Docker等,而其中开源协议比如MIT、Apache也是耳熟能详,但是真正对开源协议的了解相信对大部分人来说都是一知半解。而近来频繁冒出一些事件让我们对开源协议产生了更大的疑问。 谷歌撤销了华为的android 阅读全文
posted @ 2020-08-24 16:12 艾小仙 阅读(1409) 评论(1) 推荐(1) 编辑

more_horiz
keyboard_arrow_up dark_mode palette
选择主题
点击右上角即可分享
微信分享提示