首页
首页
沸点
课程
直播
活动
竞赛
商城
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
「奇淫技巧」系列
Kerwin_
创建于2021-07-05
订阅专栏
有时深挖原理,有时奇思妙想~
等 117 人订阅
共17篇文章
创建于2021-07-05
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
手把手带你实现一个代码生成器
手把手带你实现一个代码生成器 前言 不知各位看官在工作之中有没有陷入过疯狂CV代码、看着密密麻麻的类不想动手,或者把大把的时间花费在底层的情况。以笔者为例,会经常遇到以下两个问题: 隔一段时间就需要构
「一探究竟」迷之序列化
事件起因 今天,我需要上线一个非常小但是又非常重要的系统改动,即给核心接口的RPC接口出参增加序列化接口(由下图可见,原实体类未实现序列化)。 编码、测试、代码审核一气呵成,然后收到驳回通知...
「一探究竟」Java SPI机制
事件起因 七月中旬,我司的系统潜在风险排查工作在如火如荼的进行,其中我发现当前系统的调用源缺少Token信息,难以做到具体的识别和监控,因此需要对其优化。
「雕虫小技」基于日志的链路追踪实现方案
什么是链路追踪 就像一份外卖订单,从用户点单 - 商家接单 - 商家制作 - 外卖员取餐 - 送餐一样,每一个业务都有其特定的执行流程,把它细分到代码、应用层级,就可以称为执行链路,当前请求/业务到底
「论道架构师」优雅解决历史代码中的新需求
事件起因 6月中旬,可爱的产品大大给我提了一个临时需求,需要我对商品创建/更新业务中由开放平台对接而来的请求做一个Check,如果符合要求,则再做一段稍微复杂的逻辑处理。 这种Easy程度的需求怎么拦
「论道架构师」拒绝无脑搬砖,从分库分表开始
「论道架构师」拒绝无脑搬砖,从分库分表开始,6月初一个偶然的机会,架构师让我知道了什么叫举一反三,触类旁通...🤪(此处省略一百字🤪)。
「奇淫技巧」如何写最少的代码
众所周知,Java仅支持单一返回值,一般情况下如果需要返回多个对象,我们会根据代码语义选择容器或者新建一个新的类,把我们需要的数据包起来。 本质还是普通对象,但是加上泛型后威力剧增!由于在方法定义时就强制了泛型约束,语义非常清晰,同时可以完全杜绝上述的无语义中间类,当然一些必要…
「生产事故」MongoDB复合索引引发的灾难
11月末我司商品服务的MongoDB主库曾出现过严重抖动、频繁锁库等情况。 由于诸多业务存在插入MongoDB、然后立即查询等逻辑,因此项目并未开启读写分离。 我司的各种监控做的比较到位,当天突然收到了数据库服务器负载较高的告警通知,于是我和同事们就赶紧登录了Zabbix监控,…
悄咪咪提高团队幸福感 & Surprise!
我司的产品主要分为Saas端和私有平台,分别部署在公网和客户的私有环境,先来说说私有环境的问题:不知道真正部署的项目版本,说来很可笑,运维同学在部署的时候肯定是记录过各个客户的代码版本的,但也就是这么可笑,有时候就是会弄错,可能是由于升级流程不够完善,或者工作失误等等,总之,想…
一文入门DNS?从访问GitHub开始
大家都是做开发的,都有GitHub的账号,在日常使用中肯定会遇到这种情况,在不修改任何配置的情况下,有时可以正常访问GitHub,有时又直接未响应,来一起捋捋到底是为啥。 虽然很戳心,但好歹能展示一部分。 所以有时候我们白嫖软件,都会改一下 Hosts,因为需要把它在线验证的域…
上亿数据怎么玩深度分页?兼容MySQL + ES + MongoDB
这个时候没有实际经验的同学基本麻爪,So,请听我娓娓道来。 首先必须明确一点:深度分页可以做,但是深度随机跳页绝对需要禁止。 像MySQL,MongoDB数据库还好,本身就是专业的数据库,处理的不好,最多就是慢,但如果涉及到ES,性质就不一样了,我们不得不利用 SearchAf…
Lambda初次使用很慢?从JIT到类加载再到实现原理
基本上每次都是前几次速度较慢,后面的速度更快,因此 可能 有这个因素影响,但差距并不会很大,因此该结论并不能作为问题的答案。 从上述的概念中,我们应该可以得到一个结论:第一条所谓的操作系统预热 大概率不正确,因为普通遍历方法执行N次,后续执行的时间占用比较小,很可能是因为JIT…
Hello!GitHub 好用好玩值得收藏的开源项目集合~
通过单元测试学习 Go 语言。下载仓库源码后,进入对应目录。每一个小文件夹就是一个对应的 Go 项目,在里面go test即可运行单元测试。由于是测试驱动开发,所以需要在你改动代码之后跑通单元测试才算学会通过。每一个对应的文件夹都有相应 Markdown 文字教程,比较浅显易懂…
没内鬼,来点干货!volatile和synchronized
运行这段代码我们可能会得到一个匪夷所思的结果:我们获得的单例对象是未初始化的。为什么会出现这种情况?因为指令重排 首先要明确一点,同步代码块中的代码也是能够被指令重排的。然后来看问题的关键 由于步骤2,3交换不会改变单线程环境下的执行结果,故而这种重排序是被允许的。也就是我们在…
没内鬼,来点干货!SQL优化和诊断
Eg:超过三个表禁止 join。需要 join 的字段,数据类型必须绝对一致;多表关联查询时,保证被关联的字段需要有索引 count(*) 是 SQL92 定义的标准统计行数的语法,跟数据库无关,跟 NULL 和非 NULL 无关。
好像很厉害的生成器!一秒钟搞定一个项目
该项目是从无到有一点点构建出来的,适合初学者和刚入门的人进行学习,更加适合大佬们直接快速构建简单Demo,把时间花在更有价值的事情上,欢迎各位Star & Fork.
SpringBoot代码生成器
该项目是从无到有一点点构建出来的,适合初学者和刚入门的人进行学习,更加适合大佬们直接快速构建简单Demo,把时间花在更有价值的事情上,欢迎各位Star & Fork.