自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

方丈的寺院

技术是人生基石/https://github.com/FS1360472174/

原创 我开通了微信公众号

2011年7月在csdn写了第一篇文章,恍惚间已经过去了8年。基本保持着每月1篇的节奏,期间从未间断。 我的个人博客地址https://fangzhang.blog.csdn.net/。 我的博客主要记录web开发相关的问题,包括不限于java,spring,mybatis,分布式,以及数据库相关...

2019-03-24 11:51:51 1794 1

原创 2020-为什么换了工作
原力计划

摘要 经历了一个特殊的2020上半年,疫情出乎意料的持续了半年之久,还是没有看到结束的趋势。虽然外部环境很恶劣,还是做出了个人的重大选择,换工作。期间纠结了很久,毕竟工作就是生活,换工作就是对未来的期待,对过去的总结,对自己的人生的深度思考。这里回顾下当时的个人思考,供后续复盘参考。 当前的状况 ...

2020-06-25 11:35:33 126 0

原创 深入浅出Spring MVC
原力计划

Spring MVC 的常见扩展点 工作原理 基于java的MVC框架众多,早些年比较火的有struts,spring mvc 常见扩展点 HandlerMapping接口 – 处理请求的映射 保存请求url到具体的方法的映射关系,,我们可以编写任意的HandlerMapping实现类,依据任...

2020-05-31 11:01:11 67 0

原创 rocketmq初识
原力计划

概念说明 通常一个消息队列需要掌握的知识点有Topic(主体)、Producer(生产者)、Consumer(消费者)、Queue(队列)、Delivery Semantics(消息传递范式) 蛋疼的是不同的消息队列关于这些名词叫法不一样,含义也不是很精确。所以阿里起了一个项目OpenMessag...

2020-05-28 23:08:39 1953 0

原创 线上故障处理手册
原力计划

摘要 通常处理线上问题的三板斧是重启-回滚-扩容,能够快速有效的解决问题,但是根据我多年的线上经验,这三个操作略微有些简单粗暴,解决问题的概率也非常随机,并不总是有效。这边总结下通常我处理应用中遇到的故障的解决方案。 原则 处理故障的时候必须遵循的一些原则 提早发现问题,避免故障扩散 故障的出...

2020-05-27 22:14:11 237 0

原创 数据迁移(2) - 如何快速迁移

摘要 在上一篇中我们介绍了数据迁移的套路,但是没有介绍具体的方案,这篇着重介绍下具体的数据迁移方案 一. 设计目标 设计一个数据迁移的方案,需要实现以下目标 迁移速度 qps 需要达到1k,这样能保证1亿的数据能够在1~2天内跑完 迁移qps可控 迁移有可能对线上服务有影响,需要可动态调整...

2020-05-17 21:36:09 147 0

原创 数据迁移的套路

数据迁移的类型 随着业务的发展,存储也会经常性的需要迁移。以下场景是我们开发过程中经常遇到的 业务、团队在快速扩张,需要适当时机进行微服务的拆分,需要独立的数据库,将数据从源数据库迁移到新的数据库 单表的记录数比较大,需要进行分库分表。需要将老表的数据迁移到新的分表中。 存储选型不对,比如关系型...

2020-05-04 11:56:12 191 0

原创 存储优化(3)-mongo大表加索引
原力计划

摘要 在存储优化(2)-排序引起的慢查询优化中我们提到过排序对查询选择索引的影响。但是的解决办法就是增加一个索引。在线上给mongo的大表增加一个索引要慎重。在增加索引的过程中也遇到了一些问题,这边进行相关的记录与分析。 问题描述 表结构 _id, biz_Id, version, name 索...

2020-03-29 19:37:19 235 0

原创 存储优化(2)-排序引起的慢查询优化
原力计划

摘要 排序引起的慢查询,通常不是那么容易发现,经常和数据分布有关系。往往在业务刚开始时并没有什么问题,但是随着业务的发展,数据分布呈现一种特定的规律,导致了慢查询,或者并不是什么慢查询,但是随着并发请求数增加,数据库的IOPS使用率变高,进一步导致cpu/内存使用率飙高。造成线上故障。 问题 因为...

2020-03-16 21:19:19 213 0

原创 存储优化(1)-分库分表后的索引问题

摘要 最近遇到一个慢sql,在排查过程中发现和分库分表后的索引设置有关系,总结了下问题。 问题 在进行应用健康度盘点时,发现有个慢sql 如下 select brandgoodid from brandgood_0020 where userid = xxx AND brandgoodid i...

2020-03-15 19:27:14 244 0

原创 初级算法-动态规划(2)

之前在初级算法-动态规划 一文中少写了动态规划的另外一种解法就是矩阵解法 递归问题可以使用非递归的方式表达出来,时间复杂度是O(n),使用矩阵解法时间复杂度O(logn) public static int climbStairs2(int n) { if(n < 1) { ...

2020-02-16 20:43:28 1649 1

原创 包管理原则

摘要 坊间传闻java web开发人员写了那么多代码,但是其实一半代码都在处理NPE。总是在加班,却大部分时间都在处理包冲突,类加载不了的bug。这些问题总是让新老程序员都很抓狂,有很多的工具可以辅助我们解决这些问题(maven helper插件,arthas等)但是有没有一些原则可以遵循,在源头...

2020-02-15 13:23:31 264 0

原创 DDD-CQRS的落地案例

摘要 在之前的文章DDD-CQRS能解什么问题中,阐述了什么是CQRS。但是并没有业务需求可以应用CQRS。最近需要处理一个文本增量更新的业务,经过需求分析后,尝试使用CQRS来解这个问题 问题分析 一个文本页面编辑,对象很大,之前是全量保存。涉及到的网络传输对象比较大,经常超时OOM,所以交互改...

2020-02-11 20:17:33 2237 0

原创 身体是自己的

摘要 在我25岁以前,几乎没去过医院,最近两年不知道为啥,一年总要去几次医院。以前我对就医这件事的记忆一直停留在某年的流感时期,感冒后去诊所挂个水,挂完3瓶,然后回校继续上学。最近两年,因为身边的人出了一些意外,不得已去了几次医院,补了些这方面的功课。 抗拒就医 不知道是个人的原因,还是大家都是这...

2020-02-02 13:19:22 9030 22

原创 2019年终总结-坚持的力量

摘要 上一次年终总结是2016-12-31。一晃3年过去了。我也从一个初出茅庐的新人变成了一个职场老鸟。年末了,总结一下过去,展望一下未来。 关键词 瓶颈、底层思考能力、坚持的力量 瓶颈 年纪越大,越发觉得人生的艰难,每个年龄段都有各自的焦虑与忧伤,只是程度不同,所以人生总是很难。 工作久了,不再...

2020-01-18 10:28:44 3266 4

原创 结婚这件大事

一个多月没更新文章,因为在忙一件人生中的大事:结婚。为了筹备结婚事宜,前前后后忙了2个月。 为了不留遗憾,在知乎上翻阅了大量的资料。以至于我的知乎年度关键词【婚礼筹办】位于前列。 都忙完了,终于有时间简单聊聊【婚礼筹办】这件大事吧。 为什么要在杭州办 对于在大城市工作的人来说办婚礼是件头疼的事,...

2020-01-11 09:31:28 5001 32

原创 Hbase初识

简介 数据模型 相关数据库 典型应用 优势 劣势 key-value Redis 缓存 快速查询 存储数据缺乏结构化 列族 Cassandra,Hbase 分布式的文件系统,大规模的数据存储 易于分布式扩展 功能受限 document Mongo,CouchDB 易用 可...

2019-12-04 20:38:31 581 0

原创 最近读的书和一点感悟

摘要 最近读完的书有《这里是中国》、《自卑与超越》、《商业的本质》、《打破自我的标签》。 鉴于我目前的认知水平,对自然景观的欣赏还停留在牛逼,666的水平,《这里是中国》的地理美景介绍引起的思考比较少。对美的鉴赏能力我还是有自知之明,距离大众水平都很有一段距离,得慢慢来。其他几本有商业的,有心理,...

2019-11-09 11:33:36 742 3

原创 居然要周末加班才解决这个问题

摘要 万万没想到,最近的一个任务居然在一周没有解决,弄得周六在家忙了一天,还没完成,直到周日早上灵光一闪,才完成了。坦白讲,我已经好久没有过这种体验了,被一个技术问题困扰了好几天,如此这般茫然失措,不过好在最后问题解决了。虽然这个任务可能你不会遇到特别相似的,但是我还是想把问题的解决过程分享给大家...

2019-10-30 22:10:55 4272 7

原创 一次关于聚合根的激烈讨论

背景 之前有同事在分享DDD在闲鱼商品详情页的实践时,大家对闲鱼团队领域建模关于商品详情页的聚合根建模表示不认同。 因为这是面向页面建模,不是面向领域建模,将微服务拆分和领域建模混为一谈了 于是我以聚合根定义作为引子,结合组内在实践DDD过程中,聚合根随着业务查询复杂而导致聚合根不断膨胀的问题...

2019-10-22 22:03:42 1026 0

原创 聊聊Mysql索引和redis跳表

摘要 面试候选人关于mysql索引问题时,发现有些人能够涛涛不绝的说出B+树和B树,平衡二叉树的区别,却说不出B+树和hash索引的区别。这种一看就知道是死记硬背,没有理解索引的本质。本文旨在剖析这背后的原理,欢迎留言探讨 问题 如果对以下问题感到困惑或一知半解,请继续看下去,相信本文一定会对你有...

2019-10-22 22:03:06 1274 0

原创 http服务端架构演进

摘要 在详解http报文相关文章中我们介绍了http协议是如何工作的,那么构建一个真实的网站还需要引入组件呢?一些常见的名词到底是什么含义呢? 什么叫正向代理,什么叫反向代理 服务代理与负载均衡的差别 有了nginx,为啥还需要LVS 都有哪些负载均衡的方式 服务端演进 在前面文章中我们介...

2019-10-20 20:44:18 1906 0

原创 guava缓存批量获取的一个坑

摘要 Guava Cache是Google开源的Java工具集库Guava里的一款缓存工具,一直觉得使用起来比较简单,没想到这次居然还踩了一个坑 背景 功能需求抽象出来很简单,就是将数据库的查询sthMapper.findById(Long id)的结果缓存起来。但同时还有批量请求,为了提高效率...

2019-10-14 21:45:19 1027 3

原创 详解http报文(2)-web容器是如何解析http报文的

摘要 在详解http报文一文中,详细介绍了http报文的文本结构。那么作为服务端,web容器是如何解析http报文的呢?本文以jetty和undertow容器为例,来解析web容器是如何处理http报文的。 在前文中我们从概览中可以了解到,http报文其实就是一定规则的字符串,那么解析它们,就是解...

2019-10-09 22:05:13 2273 9

原创 详解http报文

摘要 作为一个web开发者,每天都在使用者Http协议,却总是一知半解。本文参看Http RFC7230规范,梳理了http报文部分。 http 报文构成 start-line: 起始行,描述请求或响应的基本信息 *( header-field CRLF ): 头 CRLF [ message-b...

2019-09-30 21:30:04 6453 1

原创 2019秋-走的太久忘记了为什么出发

其实我一直都是敏感的人,没事就爱琢磨生活,思考人生的,完了还要用文字记录下来,用来回味复盘。这就像敏捷开发中的retro,2个星期一个迭代,就得做一次复盘,总结下过去的二周做的好与不好。 但是这篇文档纠结了很久到底要不要写,先说说纠结的原因吧。 内心纠结 我一直是个纯粹的人,或者企图保持纯...

2019-09-29 21:36:11 1034 5

原创 2014元旦-走着瞧

2013,于我注定是个重要的年份,人生道路上的岔路口。因为在这一年,我要告别单身的大学四年生活,迎来无限期的光棍职业生涯。这个场景在我的脑海了出现过无数次,可是不管我多么不愿意,终究还是来了。我什么也没做,他就这么静悄悄的来了。 没进入社会,没踏入职场,永远不要说职场是怎么样,道听途说不可信。在2...

2019-09-28 09:16:32 879 1

原创 2013夏-一篇杂文

不知道是什么时候发现这个规律:在我被某个或某些想法困注,无法自拔,开始问自己一些诸如“活着究竟有什么意义”,“我到底是个 什么样的人”的问题,然后经过一番磨难,想通后或者严格意义上来说悦纳了自己,我就会写下一篇日志,模仿着那些大师教我的隐喻的手 法,将这种情感表达出来,自己乐在其中,而外人又浑然不...

2019-09-28 09:02:42 353 3

原创 2013春-春天里的故事

手机写日志真心辛苦,写到一半没思路,睡觉,改日重写。

2019-09-28 09:00:03 121 0

原创 2012冬-我想和生活谈谈

2012这一年国家发生了很多大事,世界也发生了很多的变化,我也从一件一件的琐事中走到了现在。 我还记得这一年我是刷着林书豪的疯狂的数据来到了学校,小宇宙的爆发让林一下子吸引了全世界的眼球,每个人都期待着于平凡中瞩目,并为之默默的奋斗。有的人成功了,有的人放弃了,有的人忘记了。这一切都不重要,重要的...

2019-09-28 08:58:58 534 3

原创 2012秋-大三恐惧症

此时此刻已经是开学的第二个礼拜了,可晚上依旧是无法入睡。想来自己一向是极其适应生活的,可不知为什么最近就没有静下心来好好听过一节课,看过一本书,思考过一个问题。一切都源于内心,作为一个工科男,我有必要就此进行深入分析,走进自己的灵魂深处,探询事情的起源。 一、 大三于我意味着什么呢?开学时,大家...

2019-09-28 08:55:41 337 0

原创 2012夏-南京的夏天有点忙

当我感到胸闷气喘,大脑晕乎,四肢无力,吃不下饭的时候,南京的夏天就来了,不打一丝招呼。 南京号称‘四大火炉’城市之一,每个生活在南京的人心里都深深的烙下了这句话。 去年的自己,还是年少轻狂,自以为是,激情四射,那时自己是怎么着都不想回家,执意留在南京,那个夏天,我去南京各个地方兼职,发传单,跑楼。...

2019-09-28 08:53:38 291 1

原创 2012春-晨间杂想

小时候我玩游戏的时候并没有被他华丽的界面吸引,而是在想是什么做出了这界面,后来我知道了编程这个概念,可是我还有着高考。我总是对自己说:大学就好了,那时候我的梦想是程序员。大学了什么条件都有了,我似乎离梦想近了。大一时我想转去网络工程。考虑了很久,其实是权衡了很久,最终放弃了。在这条走向梦想的道路上...

2019-09-28 08:51:02 128 0

原创 2011-这个冬天有点冷

这个冬天有点冷,来南京一年多了,还是没能摸透南京诡异的天气,寝室也被搬到了小山后,孤僻,阴冷,最近晚上还能看到对面小山上熄灯后鬼鬼祟祟的不明物体。当然也有好处,与被窝相处的时间随着日子的一天天过,也慢慢延长了,有时是一上午,有时或许至一下午。。。。。 这个冬天我开始背着书包了,像个好学的中学生一样...

2019-09-28 08:47:16 315 0

原创 如何做一个职业的程序员-《麦肯锡方法》读书笔记

摘要 这本书主要讲的是如何系统的解决问题,也就是方法论这种玄乎的东西。那么到底实不实用的呢,还是说只是顶着麦肯锡这个世界知名的咨询公司的光环,来贩卖知识了,这得看过才知道。 这本书讲了什么 这本书很薄,先根据目录索引,了解下大致讲了什么。 重点 前三部分讲了如何系统性的解决问题。 第一部分是是道...

2019-09-19 21:37:57 659 0

原创 完整剖析SpringAOP的自调用

摘要 spring全家桶帮助java web开发者节省了很多开发量,提升了效率。但是因为屏蔽了很多细节,导致很多开发者只知其然,不知其所以然,本文就是分析下使用spring的一些注解,不能够自调用的问题。因为本身这类文章很多,所以有些地方不会详述,直接引用其他文章。 问题 使用了Spring中哪...

2019-09-16 20:05:11 312 0

原创 深入分析Mybatis 使用useGeneratedKeys获取自增主键

摘要 我们经常使用useGenerateKeys来返回自增主键,避免多一次查询。也会经常使用on duplicate key update,来进行insertOrUpdate,来避免先query 在insert/update。用起来很爽,但是经常踩坑,还不知为何。本篇就是深入分析获取自增主键的原理...

2019-09-07 13:33:27 736 0

原创 微服务API通过ip可访问,域名不可访问问题分析

摘要 经常会有同学遇到api通过ip可以访问,但是通过域名却不可以访问。本篇文章总结了造成这种情况可能的原因。 因为与具体技术的选型、规则配置有关,所以没有深入讨论,只是列出可能性,仅供参考。 分析 问题 通过域名访问不到的请求表现的现象有 接口返回404 一个错误页面 提示method typ...

2019-08-26 20:46:40 498 0

原创 深入分析Elastic Search的写入过程

摘要 之前写过一篇ElasticSearch初识之吐槽,不知觉竟然过去了两年了。哎,时光催人老啊。最近又用到了ES,想找找过去的总结文档,居然只有一篇,搞了半年的ES,遇到那么多的问题,产出只有这么点,真是说不过去啊。只好又重新捡起ES,发现ES槽点依然很多,不兼容的更新太多了,各个版本之间的差异...

2019-07-27 12:08:19 252 0

原创 以Spring Cache扩展为例介绍如何进行高效的源码的阅读

摘要 SpringCache的介绍 扩展点 功能的实现 扩展,如何实现metric监控 http://ylzheng.com/2018/01/24/use-prometheus-monitor-your-spring-boot-application/

2019-07-16 21:50:19 875 0

提示
确定要删除当前文章?
取消 删除