自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

江7城子的专栏

越努力,越幸运。

  • 博客(80)
  • 收藏
  • 关注

原创 专栏文章汇总

文章汇总

2020-10-13 20:40:09 103

原创 3.消息消费原理

消息消费原理

2022-12-09 19:25:28 161 1

原创 2. 消息生产原理

Producer生产消息到Broker的全流程

2022-11-30 12:20:16 445

原创 1. Broker启动流程

Pulsar所有请求,不论是来自admin管理端还是client客户端,最终都由Broker端进行处理,此外Broker端还具有负载管理、Schema管理等功能,因此开篇首先分析下Broker的启动流程。

2022-11-28 21:58:10 858

原创 3、Flink实时监控告警

3、Flink实时监控告警

2021-09-26 20:26:51 809

原创 JVM 知识点总结

JVM 内存分区、内存模型、垃圾回收、类加载

2021-01-27 13:34:25 216

原创 2、Structured Streaming

Structured Streaming 源码解析系列

2021-01-03 19:13:54 115

原创 1、Apache Flink Contributor之路

Flink Contributor 之路

2021-01-02 18:16:52 514 1

原创 1、K8s整体架构

K8s 整体架构

2021-01-02 18:15:43 158 1

原创 1、Trino整体架构

1、Trino

2021-01-02 18:14:40 1675

原创 4、Yarn资源隔离

YARN中集成了CGroups的功能,使得NodeManger可以对Container的CPU资源使用进行控制,如可以对单个container的CPU使用进行控制,也可以对NodeManger管理的总CPU进行控制。

2020-10-21 14:19:00 530

原创 1、动态规划

https://blog.csdn.net/l_ppp/article/details/108899586?utm_medium=distribute.pc_feed.none-task-blog-vip_agree_hot-1.nonecase&depth_1-utm_source=distribute.pc_feed.none-task-blog-vip_agree_hot-1.nonecase

2020-10-17 14:21:15 87

原创 0、流式计算引擎对比

Flink是标准的实时处理引擎,而Spark的两个模块Spark Streaming和Structured Streaming都是基于微批处理的,不过现在Spark Streaming已经非常稳定基本都没有更新了,然后重点转移到Spark SQL和Structured Streaming了。

2020-10-13 19:29:15 192

原创 3、Yarn整体概述

在Hadoop2.0中, YARN负责管理MR中的资源(MEM、CPU等)并且将其打包成Container,这样可以精简MR使之专注于其擅长的数据处理任务而无需考虑资源调度。

2020-10-11 15:57:09 312

原创 3、集合框架-工具类

工具类CollectionsArraysIterator

2020-10-11 14:54:47 99

原创 2、集合框架-Map

Map表示成对的"键值对"对象,允许使用键来查找值。

2020-10-11 14:53:54 142

原创 1、集合框架-Collection

Collection表示独立元素的序列,这些元素都服从一条或多条规则。List必须按照插入顺序保存元素,Set不能有重复元素,Queue按照排队规则来确定对象产生的顺序。

2020-10-11 14:53:06 114

原创 0、集合框架知识体系

集合可以看作是一种容器,用来存储对象信息。所有集合类都位于java.util包下,但支持多线程的集合类位于java.util.concurrent包下。

2020-10-11 14:46:57 94

原创 4、Zookeeper面试题

Zookeeper面试题

2020-10-06 15:26:42 830

原创 10、线程池实现原理

线程池由工作线程和任务队列组成,它可以重用线程来避免线程创建带来的开销,在任务过多时通过排队避免创建过多线程来减少系统资源消耗和竞争,确保任务有序完成。

2020-09-20 22:10:12 148

原创 9、并发工具-CountDownLatch/CyclicBarrier/Semphore

JUC提供了几个非常有用的并发工具,包括CountDownLatch、CyclicBarrier、Semaphore,使用这些工具可以有效提高并发编程。

2020-09-20 22:09:11 96

原创 8、并发安全集合

JUC 为常用的集合提供了并发安全的版本,Map 的并发安全集合 ConcurrentHashMap,List 并发安全集合 CopyOnWriteArrayList,Set 并发安全集合 CopyOnWriteArraySet,Queue的并发安全的队列 ConcurrentLinkedQueue。

2020-09-20 22:06:37 88

原创 7、ThreadLocal实现原理

ThreadLocal 是一个线程的本地变量,也就意味着这个变量是线程独有的,是不能与其他线程共享的,这样就可以避免资源竞争带来的多线程的问题,这种解决多线程的安全问题和lock是有本质的区别的。

2020-09-20 21:57:43 110

原创 6、Lock实现原理

当多个线程访问某个公共资源时,需要通过加锁来保证资源的访问不会出问题。java提供了两种方式来加锁,一种是关键字:synchronized,一种是concurrent包下的lock锁。实现lock的几个关键词:计数值、双向链表、CAS+自旋。

2020-09-20 17:34:13 112

原创 5、CAS原子操作

Java 中可以通过锁和 CAS 的方式来实现原子操作。但是synchronized 是一个重量级操作,性能较差,CAS 在保证原子性中有较好的性能。此外,synchronized 的优化中,偏向锁、轻量级锁也都用的到了 CAS。

2020-09-20 16:59:50 410

原创 4、volatile实现原理

volatile可以保证线程可见性且提供了一定的有序性,但是无法保证原子性。在JVM底层volatile是采用“内存屏障”来实现的。通过汇编代码发现,加入volatile关键字时,会多出一个lock前缀指令,lock前缀指令实际上相当于一个内存屏障(也成内存栅栏)。

2020-09-19 19:19:58 259

原创 3、synchronized实现原理

并发编程中用到最多的关键字毫无疑问是synchronized。那么,synchronized如何使用?synchronized是如何实现同步加锁的?synchronized解决了并发编程的哪些问题?

2020-09-19 19:06:26 178

原创 1、并发编程-基础篇

并发基础:线程安全、线程通信、死锁、饥饿;创建并启动线程、线程状态、线程调度

2020-09-19 19:01:33 81

原创 2、并发编程-理论篇

编写并发程序是比较困难的,因为并发程序极易出现Bug,这些Bug有都是比较诡异的,很多都是没办法追踪,而且难以复现。要快速准确的发现并解决这些问题,首先就是要弄清并发编程的本质,并发编程要解决的是什么问题。

2020-09-19 16:16:37 152

原创 3、Zookeeper数据同步及脑裂

ZAB协议是为分布式协调服务Zookeeper专门设计的一种支持崩溃恢复原子广播协议。在Zookeeper中,主要依赖ZAB协议来实现分布式数据一致性,基于该协议,Zookeeper实现了一种主备模式的系统架构来保持集群中各个副本之间的数据一致性。

2020-08-25 20:10:47 405

原创 2、Zookeeper选举机制

Zookeeper集群首次启动或运行期间leader挂掉时,需要进行Leader选举。在Leadr选举结束前,集群处于不可用状态,所以Zookeeper满足CP。

2020-08-25 20:08:37 337

原创 1、zookeeper整体概述

Zookeeper 是一个分布式协调服务框架,主要是用来解决分布式应用中经常遇到的一些数据管理问题,如:统一命名服务、状态同步服务、应用配置管理、集群管理等。

2020-08-25 19:59:21 173

原创 1、Spark Streaming

Spark Streaming任务调度

2020-08-20 22:26:41 137

原创 9、kafka面试题

kafka面试题

2020-08-16 20:54:46 322

原创 8、kafka协调器 - ing

kafka协调器

2020-08-16 20:53:36 153

原创 7、kafka控制器

在于分布式系统中,总会有一个地方需要对全局 meta 做一个统一的维护,Kafka 的 Controller 就是充当这个角色的。

2020-08-16 20:43:01 104

原创 15、Flink CEP - ing

Flink CEP复杂事件处理

2020-08-16 10:21:46 122

原创 14、Flink SQL-内部执行流程 - ing

Flink SQL-内部执行流程

2020-08-16 09:25:35 177

原创 2、Flink实时精准去重

去重计算是数据分析业务里常见的指标计算,如网站一天的访问用户数,离线计算是一个全量、一次性计算的过程通常可通过distinct的方式得到去重结果,而实时计算是一种增量、长期计算过程,在面对不同的场景,如数据量的大小、计算结果精准度等要求时可使用不同的方案。

2020-08-16 09:23:22 383

原创 1、Flink实时热门商品统计

TopN 是报表统计和大屏展示非常常见的功能,主要用来实时计算排行榜。流式的TopN可以使业务方在内存中按照某个统计指标(如出现次数)计算排名并快速发出更新后的排行榜。

2020-08-15 19:54:12 269

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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