没错,老板让我写个 BUG!

前言 标题没有看错,真的是让我写个 bug! 刚接到这个需求时我内心没有丝毫波澜,甚至还有点激动。这可是我特长啊;终于可以光明正大的写 bug 了🙄。 先来看看具体是要干啥吧,其实主要就是...

2018/12/12 08:30
2.4W
如何判断一个元素在亿级数据中是否存在?

前言 最近有朋友问我这么一个面试题目: 现在有一个非常庞大的数据,假设全是 int 类型。现在我给你一个数,你需要告诉我它是否存在其中(尽量高效)。 需求其实很清晰,只是要判断一个数据是否...

2018/11/27 08:40
4.4K
分享一些 Kafka 消费数据的小经验

前言 之前写过一篇《从源码分析如何优雅的使用 Kafka 生产者》 ,有生产者自然也就有消费者。 建议对 Kakfa 还比较陌生的朋友可以先看看。 就我的使用经验来说,大部分情况都是处于数据下游的...

2018/11/20 08:44
1.7K
设计一个可拔插的 IOC 容器

前言 磨了许久,借助最近的一次通宵上线 cicada 终于更新了 v2.0.0 版本。 之所以大的版本号变为 2,确实是向下不兼容了;主要表现为: 修复了几个反馈的 bug。 灵活的路由方式。 可拔插的 ...

2018/11/15 08:39
3.5K
不改一行代码定位线上性能问题

背景 最近时运不佳,几乎天天被线上问题骚扰。前几天刚解决了一个 HashSet 的并发问题,周六又来了一个性能问题。 大致的现象是: 我们提供出去的一个 OpenAPI 反应时快时慢,快的时候几十毫...

一次 HashSet 所引起的并发问题

背景 上午刚到公司,准备开始一天的摸鱼之旅时突然收到了一封监控中心的邮件。 心中暗道不好,因为监控系统从来不会告诉我应用完美无 bug,其实系统挺猥琐。 打开邮件一看,果然告知我有一个...

2018/11/08 07:56
5.6K
1.6W star 的 JCSprout 阅读体验大提升

万万没想到 JCSprout 截止目前居然有将近1.6W star。真的非常感谢各位大佬的支持。 年初时创建这个 repo 原本只是想根据自己面试与被面试的经历记录一些核心知识点,结果却是越写越多。 <!--...

一份针对于新手的多线程实践--进阶篇

前言 在上文《一份针对于新手的多线程实践》留下了一个问题: 这只是多线程其中的一个用法,相信看到这里的朋友应该多它的理解更进一步了。 再给大家留个阅后练习,场景也是类似的: 在 Redi...

2018/10/31 10:51
146
一份针对于新手的多线程实践

前言 前段时间在某个第三方平台看到我写作字数居然突破了 10W 字,难以想象高中 800 字作文我都得巧妙的利用换行来完成(懂的人肯定也干过)。 干了这行养成了一个习惯:能撸码验证的事情都自己...

利用责任链模式设计一个拦截器

前言 近期在做 Cicada 的拦截器功能,正好用到了责任链模式。 这个设计模式在日常使用中频率还是挺高的,借此机会来分析分析。 责任链模式 先来看看什么是责任链模式。 引用一段维基百科对其...

2018/10/22 08:17
568
分享几个 SpringBoot 实用的小技巧

前言 最近分享的一些源码、框架设计的东西。我发现大家热情不是特别高,想想大多数应该还是正儿八经写代码的居多;这次就分享一点接地气的: SpringBoot 使用中的一些小技巧。 算不上多高大上...

2018/10/15 08:24
1.7W
从源码分析如何优雅的使用 Kafka 生产者

前言 在上文 设计一个百万级的消息推送系统 中提到消息流转采用的是 Kafka 作为中间件。 其中有朋友咨询在大量消息的情况下 Kakfa 是如何保证消息的高效及一致性呢? 正好以这个问题结合 Ka...

2018/10/11 08:13
4.5K
「造个轮子」——设计 HTTP 请求全局上下文

前言 本次 Cicada 已经更新到了 v1.0.3。 主要是解决了两个 issue,#9(Boss线程数好像设置有误 ) #8(怎么返回纯字符串内容不要JSON格式?)。 所以本次的主要更新为: Cicada 采用合理的线程分...

2018/10/09 08:06
116
「造个轮子」——cicada 设计一个配置模块

前言 在前两次的 cicada 版本中其实还不支持读取配置文件,比如对端口、路由的配置。 因此我按照自己的想法创建了一个 issue ,也收集到了一些很不错的建议。 最终其实还是按照我之前的想法来...

2018/09/14 08:55
80
「造个轮子」——cicada 源码分析

前言 两天前写了文章《「造个轮子」——cicada(轻量级 WEB 框架)》 向大家介绍了 cicada 之后收到很多反馈,也有许多不错的建议。 同时在 GitHub 也收获了 80 几颗 小♥♥(绝对不是刷的。。...

2018/09/05 08:49
88
「造个轮子」——cicada(轻量级 WEB 框架)

前言 俗话说 「不要重复造轮子」,关于是否有必要不再本次讨论范围。 创建这个项目的主要目的还是提升自己,看看和知名类开源项目的差距以及学习优秀的开源方式。 好了,现在着重来谈谈 cica...

2018/09/03 08:56
6.1K
强如 Disruptor 也发生内存溢出?

前言 OutOfMemoryError 问题相信很多朋友都遇到过,相对于常见的业务异常(数组越界、空指针等)来说这类问题是很难定位和解决的。 本文以最近碰到的一次线上内存溢出的定位、解决问题的方式...

2018/08/29 08:35
1.8K
分布式(一) 搞定服务注册与发现

背景 最近在做分布式相关的工作,由于人手不够只能我一个人来怼;看着这段时间的加班表想想就是够惨的。 不过其中也有遇到的不少有意思的事情今后再拿来分享,今天重点来讨论服务的注册与发现...

什么样的简历不会被丢进回收站

前言 从去年校招开始到现在负责部门的面试,从我手上流走的简历多多少少也有上百封了。 同时最近秋招又要开始了,就想着把我这一年来筛选简历的经验分享给大家,多少还是能提高一些命中率。 ...

xx
2018/08/21 09:30
273
Netty(三) 什么是 TCP 拆、粘包?如何解决?

前言 记得前段时间我们生产上的一个网关出现了故障。 这个网关逻辑非常简单,就是接收客户端的请求然后解析报文最后发送短信。 但这个请求并不是常见的 HTTP ,而是利用 Netty 自定义的协议。...

2018/08/06 08:05
365

没有更多内容

加载失败,请刷新页面