4、网络:如何设计高性能的网络模块

你好,我是文强。 今天我们讲消息队列的第二个基础知识点——网络模块。对消息队列来说,网络模块是核心组件之一,网络模块的性能很大程度上决定了消息传输的能力和整体性能。 如果你是Java技术栈的开发人员,讲到网络模块的开发,大概率第一反应就是Netty。...

深入拆解消息队列47讲

3、通信协议:如何设计一个好的通信协议

你好,我是文强。 今天我们正式进入基础篇的学习,我会带你构建最基础的消息队列。 从功能上来看,一个最基础的消息队列应该具备生产、存储、消费的能力,也就是能完成“生产者把数据发送到Broker,Broker收到数据后,持久化存储数据,最后消费者从Bro...

深入拆解消息队列47讲

2、消息队列在架构和功能层面都包含哪些概念

你好,我是文强。 这节课我们来了解一下消息队列在架构和功能层面的基本概念,也是想有针对性地对齐一些通用基础概念,同时让你对消息队列有一个整体认识,从而让后面的学习过程更加顺利。 什么时候会用到消息队列?首先我们从使用者的角度,来聊聊什么情况下我们会用...

深入拆解消息队列47讲

1、业界的主流消息队列是如何发展起来的

你好,我是文强。 作为一个消息队列的老兵,我经常被团队的新同学或者客户的研发人员问:我希望在我们的业务中引入消息队列,应该选择哪一款合适?是不是用最近很火的Pulsar就好了,但是业务团队推荐用RocketMQ或RabbitMQ,而大数据团队推荐用K...

深入拆解消息队列47讲

36、SubstrateVM:AOT编译框架

今天我们来聊聊GraalVM中的Ahead-Of-Time(AOT)编译框架SubstrateVM。 先来介绍一下AOT编译,所谓AOT编译,是与即时编译相对立的一个概念。我们知道,即时编译指的是在程序的运行过程中,将字节码转换为可在硬件上直接运行的...

深入拆解Java虚拟机

35、Truffle:语言实现框架

今天我们来聊聊GraalVM中的语言实现框架Truffle。 我们知道,实现一门新编程语言的传统做法是实现一个编译器,也就是把用该语言编写的程序转换成可直接在硬件上运行的机器码。 通常来说,编译器分为前端和后端:前端负责词法分析、语法分析、类型检查和...

深入拆解Java虚拟机
15455565758673