首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
菜鸟先飞在掘金
掘友等级
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
17
文章 17
沸点 0
赞
17
返回
|
搜索文章
赞
文章( 17 )
沸点( 0 )
Flink源码阅读(五) FLink SQL之解析流程
Table/SQL模块是flink 为支持数仓开发人员,数据分析的人员的需求,基于calcite定义的一套语义规范。 Calcite会为每个SQL动态生成一个实现了Bindable接口的Class,然后动态编译创建实例后传入数据集执行计算。这里的数据集可以通过Schema进行灵…
面试必备:Java AQS 实现原理(图文)分析[精品长文]
AQS的实现是基于一个FIFO的等待队列。 使用单个原子变量来表示获取、释放锁状态(final int)改变该int值使用的是CAS。(思考:为什么一个int值可以保证内存可见性?) 子类应该定义一个非公开的内部类继承AQS,并实现其中方法。 AQS支持exclusive与sh…
算法小专栏:动态规划(一)
本篇将介绍动态规划相关知识。 动态规划(Dynamic Programming,简称DP)。 它的核心思想是把一个复杂的大问题拆成若干个子问题,通过解决子问题来逐步解决大问题。 “你”是一名“小偷”,你带了个包去“偷东西”,。 条件1:每个商品只有一个,要么拿,要么不拿。(0-…
记一次愚蠢的经历--String不可变性
我这边有一个系统,提供一个RPC接口去发送短信。外部调用我的接口需要传入手机号等等参数,我这边负责解析这些参数、做一些业务的处理,然后调用短信渠道商的接口发送短信。 每当调用完短信渠道商的接口时,我会对这次发送的记录入库(存入MySQL中),同样地短信渠道商会返回发送或失败的回…
【本人秃顶程序员】SpringBoot中并发定时任务的实现、动态定时任务的实现(看这一篇就够了)
Timer:jdk中自带的一个定时调度类,可以简单的实现按某一频度进行任务执行。提供的功能比较单一,无法实现复杂的调度任务。 ScheduledExecutorService:也是jdk自带的一个基于线程池设计的定时任务类。其每个调度任务都会分配到线程池中的一个线程执行,所以其…
MySQL 事务隔离级别解析和实战
用户可以用SET TRANSACTION语句改变单个会话或者所有新进连接的隔离级别。语法如下: 当一个事务访问一个数据,并且进行了修改。另一个事务读到了被修改的数据,并且使用了这个数据。 在同一个事务内,多次读取同一个数据,此时事务还没有完成。另一个事务在前一个事务两次读取之间…
基于Spring Security和 JWT的权限系统设计
Web系统的认证和权限模块也算是一个系统的基础设施了,几乎任何的互联网服务都会涉及到这方面的要求。在Java EE领域,成熟的安全框架解决方案一般有 Apache Shiro、Spring Security等两种技术选型。Apache Shiro简单易用也算是一大优势,但其功能…
Redis-bgsave导致的接口响应延迟波动(深入分析Linux的fork()机制)
近期线上有个接口响应延迟P99波动较大,后对其进行了优化。响应延迟折线图如下: 在12月11号11点左右优化完成后,P99趋于平稳,平均在70ms左右。 下面来说一下优化过程。 这个接口一共会经过三个服务,最终返回给客户端。执行流程如下: 按照箭头所示流程,先访问服务1,服务1…
循序渐进理解AQS(1):如何实现锁
AbstractQueuedSynchronizer(以下简称AQS)是Java中用于构建锁和同步器的框架,许多同步器都可以通过AQS很容易并且高效地构造出来。很多文章已经基于论文和源码对实现进行了解读,本文试着从另外的角度入手:先不考虑AQS的实现,假设让我们自己实现锁,我们…
Netty新连接接入与NioSocketChannel分析
前面的一些章节,我们分析了Netty的三大组件 —— Channel 、EventLoop、Pipeline ,对Netty的工作原理有了深入的了解。在此基础上,我们来分析一下当Netty服务端启动后,Netty是如何处理新连接接入的。 我们还是以服务端 NioServerSo…
下一页
关注了
283
关注者
1
收藏集
0
关注标签
246
加入于
2018-03-07