保存成功
订阅成功
保存失败,请重试
提交成功
Chat分类
全部·后端·架构·前端·免费专区免费专区·互联网·运维·人工智能·职场·测试·移动开发

最新文章

新鲜出炉的 Chat 文章,为作者鼓个掌吧
查看更多 >
趣解 Netty(一)
Netty 是由 JBOSS 提供的一个 Java 开源框架,现为 GitHub上的独立项目。Netty 提供异步的、事件驱动的网络应用程序框架和工具,用以快速开发高性能、高可靠性的网络服务器和客户端程序。 也就是说,Netty 是一个基于 NIO 的客户、服务器端的编程框架,使用 Netty 可以确保你快速和简单的开发出一个网络应用,例如实现了某种协议的客户、服务端应用。Netty 相当于简化和流线化了网络应用的编程开发过程,例如:基于 TCP 和 UDP 的 Socket 服务开发。 “快速”和“简单”并不用产生维护或性能上的问题。Netty 是一个吸收了多种协议(包括FTP、SMTP、HTTP 等各种二进制文本协议)的实现经验,并经过相当精心设计的项目。最终,Netty 成功的找到了一种方式,在保证易于开发的同时还保证了其应用的性能,稳定性和伸缩性。 在本 Chat 中将一起学习这个异步的、事件驱动的网络应用程序框架。通过本 Chat 我们将学习三种 I/O 模式,以及三种 Reactor 模式,接着了解两次编解码的原因和实现,最后看看 Netty 是怎么做心跳检测的。 1. 三种 I/O 模式与饭店点餐模式的类比 - 阻塞与非阻塞 - 异步与同步 2. 三种 Reactor 模式 - 单线程 Reactor 模式 - 多线程 Reactor 模式 - 主从 Reactor 模式 3. “一次”编解码 - 什么是粘包和半包 - 为什么 TCP 应用中会出现粘包和半包现象 - 解决粘包和半包问题的几种常用方法 - Netty 对三种常用封帧方式的简单实现 4. “二次”编解码 - 为什么需要“二次”编解码 - 常用的“二次”编解码方式 - 选择编解码方式的要点 - Protobuf 的简介与使用 - Netty 对于二次编解码的简单实现 5. TCP Keepalive 和 Idle 检测
8小时前feign
·
工程师
不知道 Redis 持久化区别与流程? 带你系统学习 Redis 持久化功能,成为 Redis 高手
Redis 是一种高级的 Key-Value 数据库。他跟 Memcached 类似,但是 Redis 支持的数据结构很丰富。Redis 运行时将数据都读取到内存,这是 Redis 速度快的一个重要原因,然后不定期的通过异步方式保存到磁盘上(这称为“半持久化模式”);也可以把每一次数据变化都写入到一个 Append Only File(AOF)里面(这称为“全持久化模式”); Redis 4.0 之后还新增加了一种混合持久化的方式。 持久化是学习 Redis 的一个重要章节,如果没有配置持久化,Redis 重启后数据就全丢失了。 3 种持久化方式的区别,选择最适合自己场景的持久化策略。 通过本场 Chat 你将学习到: 1. Redis 持久化:RDB - 简介 - RDB 持久化触发 - 手动触发 - 自动触发 1.3 RDB 配置 - RDB 配置说明 - RDB 配置查询与设置 - RDB 的优缺点 2. Redis 持久化:AOF - AOF 简介 - AOF 持久化触发 - 手动触发 - 自动触发 - AOF 持久化配置 - RDB 配置说明 - RDB 配置查询与设置 - AOF 文件重写 - 文件重写目的 - 文件重写配置 - 文件重写流程 - AOF 数据恢复 - AOF 优缺点 3. Redis 持久化:混合持久化 - 简介 - 混合持久化的配置 - 混合模式下数据读取流程 - 优缺点 4. Redis 持久化最佳实践
8小时前阿凌都
·
资深开发工程师
基于 Flowable 实现灵活可配置的中国式流程设计
传统的工作流引擎提供的设计器不友好、功能配置偏专业化。现场的实施人员或最终用户无法直接对其进行修改、配置。 本文将介绍一种友好的、灵活的、可扩展的流程设计方案,让小白也能完成流程的配置与开发。 本方案是从实际项目中精炼出来的,读者可直接将方案应用在自己的项目中。 在本 Chat 中,将对如下内容进行讨论: 1. 灵活的流程定义处理方案 2. 不同节点下不同表单字段权限控制方案 3. 任意节点回退,跳跃等常规方法的实现方案 4. 中国特色之自由流的实现方案
1天前江雨行
·
.
没学会 Spring Aop?带你手撸一套 RBAC 风格的 AOP 权限系统框架
RBAC(基于角色的权限控制),模型的核心是在用户和权限之间引入了角色的概念,取消了用户和权限的直接关联,改为通过用户关联角色、角色关联权限的方法来间接地赋予用户权限,从而达到用户和权限解耦的目的。 用户和管理员的权限肯定是不一样的,管理员能对用户进行操作并给予权限,用户权限小于管理员并能根据管理员给予的权限获得一定的操作空间。其中的权限分配到底该怎么实现呢?本次我们就以大名鼎鼎的安全框架 Apache Shiro 为模板,以 AOP 的形式去写一个自己的权限框架。 本 Chat 内容: 1. RBAC 简介 2. 数据库该怎么设计 3. 搭建基本架构 4. 如何生成代码,避免重复造轮子 5. 基本 Web 页面实现 6. 认证与授权的实现 7. 实现用户权限鉴定 8. 换个方式鉴权:使用 AOP 鉴权 9. 实现一个 Realm 10. 登陆踢人的原理及实现 11. 添加过滤器 12. 源码链接
1天前贾斯汀
·
Java工程师,嵌入式耕耘者
Python 股票预测
最近机器学习、人工智能一直是热点话题。也是 Python 的一大应用场景,由于大量的模块和框架,让我们编写机器学习的成本降低了许多。今天就带大家来实现一个股票预测的机器学习程序。 本次 Chat 内容如下: 1. 机器学习 2. 监督学习 3. 线性回归 4. 股票预测 适合读者:对机器学习感兴趣的读者。
1天前扎克斯
·
Java开发工程师

严选 Chat

优质作者完成的Chat,文章已发布,即刻可读
查看更多 >
循序渐进学 Netty 之 Java IO 体系、线程模型大总结
本教程的题目是《循序渐进学Netty》,就是说要从最基础的知识开始讲起,一步一步、由浅入深引导大家进行 Netty 的学习。在正式学习 Netty 之前,我们有必要回顾一下 Linux IO 模型、线程模型以及 Java 中 I/O 相关的知识,温故而知新。 在本场 Chat 中,将会讲到如下内容: - 传统 Java I/O 及其编程案例 - Java NIO 及其编程案例 - Java 网络编程 - NIO的理论基础及Linux的五种I/O模型 - Reactor线程模型 - 小结 **适合人群** :想温习 Java I/O 知识、学习 Netty 提升技术内功、对网络编程感兴趣的开发人员。
程猿薇茑
·
攻城狮||程序猿
Netty
·
160 订阅
Java 三大框架之 MyBatis 详解
MyBatis 本是 Apache 的一个开源项目 iBatis,2010 年这个项目由 Apache Software Foundation 迁移到了 Google Code,并且改名为 MyBatis。2013 年 11 月迁移到 Github。 iBATIS 一词来源于“Internet”和“Abatis”的组合,是一个基于 Java 的持久层框架。iBATIS 提供的持久层框架包括 SQL Maps和Data Access Objects(DAOs)(来自百度百科) MyBatis 用途有: - MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。 - MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。 - MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 POJOs(Plain Ordinary Java Object,普通的 Java 对象)映射成数据库中的记录 本 Chat 内容: 1. MyBatis 入门 2. 基础环境搭建 3. 配置文件讲解 4. 常规 CRUD 使用 5. # 与 $ 的区别和 @param 用法 6. 动态 SQL 的使用 7. 了解日志 8. 结果集嵌套与查询嵌套 9. MyBatis 的缓存 10. 懒加载 注:本文较适合对 MySQL 和 Java 有一定基础的读者
贾斯汀
·
Java工程师,嵌入式耕耘者
MyBatis
·
165 订阅
程序员如何实现睡后收入
睡后收入,网络流行词,字面意思为能躺着就把钱挣了的方法 ,就是被动收入,不需要花费多少时间和精力照看,就可以自动获得的收入,它更是获得财务自由和提前退休的必要前提。“睡后收入”不需要照看,但是可不代表不劳而获,其实在获得“被动收入”之前,往往需要时间的劳动和积累。 程序员在 996 文化盛行的今天 ,生存空间被进一步压缩。没有了晋升、没有了涨薪、似乎 35 岁大厂劝退也渐渐不是一句玩笑话。那么普通程序员如何更好的利用自己程序员特有的技能在休息时间也能获取收入 ,这是我们的追求 ,也是我们每一位程序员都需要掌握的 ,也是完全可行的。 通过本 Chat 你将获得以下收益: 1. 全盘分析程序员的睡后收入有哪些(哪些可以做 ,哪些不能做 ,哪些值得做)? 2. 我在睡后收入的实践道路做了哪些努力和尝试? 3. 如何实现睡后收入的从 0 到 1 再到 1000 的? 4. 如何平衡工作与睡后收入的投入时间? 5. 一份适合你自己的实践建议。
michael
·
阿里云acp认证工程师
赚钱
·
332 订阅
MySQL 地基基础:数据字典
拥有 MySQL 能力,打好 MySQL 地基。 想要用好 MySQL,我们需要不断的学习。MySQL 和其他数据库一样,都需要存储元数据,这些云数据存储在数据字典中,数据字典的存在非常重要,而其在 MySQL 发展历程中也是不断的演变与升级。 再多学一点点,这次我们聊聊数据库数据字典: - 数据字典是什么 - 数据字典的作用 - MySQL information_schema 详解(崭露头角) - MySQL performance_schema 详解(成长升级) - MySQL sys 详解(演变进化)
ranbo
·
高级数据库工程师
MySQL
·
113 订阅
回家 3 天,我做了一辆远程遥控小车
弟弟天天吵着要妈妈买玩具,于是我就想着干脆自己做一辆手机 APP 遥控小车给他玩(这难道不是所有大哥哥都应该为弟弟做的事吗!) 硬件包含: 1. 车子底盘(随意买) 2. Esp12f(8266) 3. L298N 电机驱动模块 4. 18650 电池 5. 电机(我这里只用了 2 个) 涉及的内容: 1. PWM(脉冲宽度调制) 2. 8266 连接阿里云 MQTT 服务器 3. MQTT 协议讲解 4. Java 多线程 5. App 的 MQTT 链接 App 用 Android Studio 写的,总体还是比较容易上手的,看完不会你顺着网线过来锤我(狗头),这不给弟弟妹妹来一份吗?
贾斯汀
·
Java工程师,嵌入式耕耘者
MQTT
·
129 订阅
MySQL 安装部署:我是如何“秒级”部署 MySQL 集群
拥有 MySQL 能力,快速 MySQL 部署。 MySQL 集群安装部署看似简单其实里面的道道有一些,常规安装你可能需要照顾的方面比较多,当然这样可以学到很多东西,但是你又想不想快速部署一套集群环境?一个得了的助手(工具)必不可少,这次我分享一个我是如何秒级部署 MySQL 集群。 再多学一点点,这次我们聊聊 MySQL 集群安装部署。 本场 Chat 内容涉及如下: - 揭秘得力助手 - 他能做为你做什么 - 拿下(安装)这个助手 - 快速部署 MySQL 单点 - 快速部署 MySQL 主从 - 快速部署 MySQL MGR - 如何管理你的助手
ranbo
·
高级数据库工程师
MySQL
·
189 订阅
如何用 Python 从零到一实现《今日头条》发文章机器人
今日头条可谓是开启了新闻阅读的新大门,强大的推荐系统已经让它吸引了成千上万的用户。同时也吸引了更多的创作者选择发布头条文章来成为一个自媒体创业者。而自媒体创业者要绞尽脑汁的写文章,想创意,做排版是一个非常耗时耗力的过程。作为程序员的我们,可以充分利用技术的优势,从众多的自媒体创业者中脱颖而出。 在本场 Chat 中,会讲到如下内容: - 如何抽丝剥茧分析头条文章发布系统的奥妙 - 如何用 Python 爬取内网系统文章并存储 - 如何用 Python 实现头条文章系统自动登录 - 如何用 Python 实现头条文章的批量发布 - 如何部署机器人每天定时发布头条文章吸粉 **适合人群**:想要从事自媒体创业的程序员,对爬虫、机器人感兴趣的人
way
·
算法工程师
Python
·
161 订阅
MySQL 地基基础:事务和锁的面纱
拥有 MySQL 能力,打好 MySQL 地基。 随着业务的快速发展,业务高并发,性能要提高,但是如何保证业务的稳定性及数据的可靠性呢?MySQL事务和锁帮你实现。本次我们聊聊MySQL事务和锁,结合并发控制,深入学习事务隔离级别。 再多学一点点,这次我们聊聊数据库事务和锁: - 什么是事务,为什么需要事务 - 用日常细说事务的特性 - MySQL 并发控制技术 - 面试再也不怕被问到的 MVCC - 简单易懂的实例帮你理解 MySQL 事务隔离级别 - MySQL 锁机制(机智) - 聊几个经典死锁案例 - 小技巧——事务保存点帮你读档重闯关 - 小技巧——一个死锁的具体分析方法 - 小技巧——换种思路提高事务能力
ranbo
·
高级数据库工程师
MySQL
·
164 订阅
责任链模式+脚本引擎实战
责任链,顾名思义,就是用来处理相关事务责任的一条执行链,执行链上有多个节点,每个节点都有机会(条件匹配)处理请求事务,如果某个节点处理完了就可以根据实际业务需求传递给下一个节点继续处理或者返回处理完毕。 责任链常见应用场景有: - 同一请求需要处理多个对象,但具体需要处理哪些请求在运行时动态决定 - 例如 OA 系统中的流程审批,不同流程对应不同的处理对象 对于责任链的实现形式,常见的有: - 节点控制模式:每个节点自由控制是否继续往下传递链的进度,类似于 Netty 中的责任链模式 - 外部调用方式:通过外部调用的方式对链的各个节点调用进行控制,从而实现链的各个节点之间的切换 因此通过责任链模式我们将对系统中各个处理对象**划分边界**,各个对象就是一个处理阶段,通过**自由组合**不同阶段能够快速响应业务需求变化。 上面提到自由组合处理对象,传统的方式就是在代码中实现规定好各个处理对象的顺序,这种方式不能做到对需求的即时响应。因此我们使用阿里开源的 QLExpress 脚本引擎,能够实现动态替换、快速组装各个处理对象。同时基于 QLExpress 的强大,对于处理对象的配置,业务人员也能够简便而不失灵活的进行配置。 在这篇 Chat 中,将会根据实际的业务场景进行提炼,实现一套通用责任链模式进行业务解耦,配合脚本引擎快速响应业务。
Limynl
·
Java高级工程师
设计模式
·
196 订阅
MySQL 地基基础:数据库字符集
拥有 MySQL 能力,打好 MySQL 地基。 你是不是遇到过 MySQL 数据库编码问题,是不是有诸多对 MySQL 字符集的困惑,有没有在使用过程中遇到过各种乱七八糟的乱码问题? 再多学一点点,这次我们聊聊数据库字符集 本场 Chat 内容涉及如下: - 字符集简介 - 字符集分类与特点 - MySQL 与字符集之间亲密关系 - 字符集编码原理 - 字符集与校对规则分析 - 如何更改 MySQL 字符集 - 字符集最佳实践
ranbo
·
高级数据库工程师
MySQL
·
120 订阅
万字长文详解大数据流式计算框架 Flink 实战(中篇)
大数据计算框架 Flink 实战教程共分为三篇。涵盖 Flink 安装配置、基本原理、核心概念、 流处理 API 和批处理 API、存储及状态一致性、容错机制、实战案例以及面试题讲解等。 本篇为第二篇,主要讲解 Flink 的 API、Window 和 Watermark 机制、状态管理和存储、容错机制、状态一致性等等。 在本场 Chat 中,将会讲到如下类容: 1. FlinkAPI - Environment - Source - Transformation - Sink - Window - Watermark - 分层 API 2. Flink 状态管理 3. Flink 状态后端存储 4. Flink 容错机制 5. Flink 检查点和保存点 6. Flink 状态一致性 **适合人群**:对大数据处理感兴趣、工作中需要使用 Flink 进行大数据处理的技术人员。
程猿薇茑
·
攻城狮||程序猿
Flink
·
155 订阅
手写线程池,全面了解 JDK 线程池实现原理
线程池,顾名思义就是存放线程的池子,池子中存放了很多可复用的线程。同时作为面试必备考点,大多数面试者对线程池还是停留在一些基础概念上,对其中的关键点及原理理解不到位或者不深刻,这将会为自己的面试大大减分。本篇 Chat 将以 JDK 线程池为背景,从零到一实现自己的线程池,麻雀虽小,五脏俱全。如果对本 Chat 都理解了,再返回去看 JDK 线程池,例如 ThreadPoolExecutor 等源码,将会得心应手。 在本场 Chat 中,将会涉及如下内容: - 基于 Runnable 实现不带返回值的任务 - 基于 Callable 实现带返回值的任务 - 实现任务的异常处理,将线程中的异常能够抛到线程外 - 利用 AtomicXXX 原子类的 CAS 特性并发控制变量的原子操作 - 基于自旋方式从队列中获取任务并执行,实现线程复用机制 - 基于 LockSupport.park/unpark 实现主线程获取任务返回值 - 控制线程数量,做到线程队列良好的伸缩性 - 灵活实现任务拒绝策略
Limynl
·
Java高级工程师
线程池
·
316 订阅
Kafka 实战教程与面试题讲解
Kafka 是一个分布式的、发布-订阅式消息中间件。最初是由 Linkedin 领英公司基于 Scala 和 Java 语言开发的分布式消息系统,现已捐献给 Apache 软件基金会。事实上 Kafka 不仅仅是一个消息队列(MQ),其已然成为一个开源的分布式流处理平台。Kafka 具有高吞吐、低延迟的特性,许多大数据处理系统比如 Storm、Spark、Flink 等都能很好地与之集成。 在本场 Chat 中,将会讲到如下内容: - Kafka 概述 - Kafka 体系结构 - 分区和主题 - Kafka 文件存储机制 - Kafka 安装与配置 - Kafka 监控管理 - Kafka 生产者消费者脚本 - Kafka 生产者客户端 API - Kafka 消费者客户端 API - Kafka 事务 - Spring Boot 集成 Kafka - Kafka 面试题集锦 **适合人群**:对消息队列感兴趣,在实际开发中需要使用 Kafka 的技术人员
程猿薇茑
·
攻城狮||程序猿
Kafka
·
279 订阅
动态代理种类及原理,你知道多少?
动态代理是代理模式的一种,指在不改动目标对象的基础上,通过一些辅助技术,能够对目标对象实现功能扩展。动态代理的应用场景也是非常广泛,比如常见 Hibernate、Spring、Dubbo 等框架均有运用,因此在了解了常见的动态代理种类及原理后,无疑对这些框架相关部分会理解得更加透彻。同时在面试中,如果能把本文涉及的知识点都讲到,那将会大大增加录用的几率。 在本场 Chat 中,将会涉及如下内容: - 对静态代理回顾,与动态代理本质区别 - JDK 动态代理实现,动态生成代理类源码剖析 - Cglib 代理方式实现,反编译代理类源码剖析 - Javassist 字节码 API 两种情景演示 - 使用 Javassist 动态生成代理类,模拟 JDK 动态代理 - Cglib 底层字节码 ASM 框架介绍
Limynl
·
Java高级工程师
代理
·
348 订阅
数据结构:树,你真的会吗(字节面试真题讲解)
树是一种常用的数据结构,当然也是面试中常考的数据结构,因为它既简单又复杂,可以考察你的深厚功底。本篇会带你整理一遍树的常见面试题以及字节跳动的面试真题,祝你拿下 offer。 本场 Chat,适合任何人,尤其是想要面试字节跳动的童鞋 - 什么是树? - 什么是二叉树? - 什么是二叉搜索树? - 前序、中序、后序遍历都是什么? - 怎么去实现以上三种遍历,递归怎么写?非递归怎么写? - 面试真题 1:最近公共祖先 - 面试真题 2:平衡二叉树 - 面试真题 3:二叉树的右视角 - 面试真题 4:序列化和反序列化二叉树
chris
·
技术带头人
数据结构
·
177 订阅
React 中实现权限管理(前端)
权限管理分为后端权限与前端权限,主要介绍 React 中实现前端权限管理具体方法。 在本场 Chat 中,会讲到如下内容: 1. 动态生成菜单(使用 antd) 2. 动态生成路由(使用 mobx 存储数据) 3. 整个的流程,登录成功,获取数据,进行存储,动态生成菜单与路由的整个过程 采用框架 create-react-app
doubleyong
·
项目经理
React.js
·
207 订阅
大数据开发技能储备&面试指南
大数据技术目前十分火热,但是面对种类繁多的开源框架,如何学习才能更高效?面试前如何准备,才能提高简历筛选通过率?面试中如何应对,才能提高面试成功率? 本文从面试实战中,提炼出大数据开发重要知识点,详细讲解,绝非提纲式阐述,会结合实际场景讲应用、讲原理,绝对干货 本 Chat 包含以下几方面内容: 1. 技能储备 - 大数据项目中,常用的 Java 基础知识,包含 Hashmap、序列化、并发等重点知识 - 大数据项目中,常见的算法数据结构,结合面试真题讲解算法应用、原理 - Hadoop/Hive 必备基础知识,以及考点、面试真题讲解 2. 面试 - JD 识别以及简历准备 - 面试技巧,以及如何与面试官有效沟通
一秋
·
数据架构师
大数据
·
280 订阅
前端框架及项目面试:聚焦 Vue 原理与实战
前端面试时,除了考察原生基础之外,还必考 Vue 框架内容,对于求职者是刚需。在这基础上,还会考察能力方面,即项目设计和项目经验,最终才能通过。 掌握一个框架原理的时候,不一定要一行一行去看源码,毕竟太耗时而且枯燥,正确路线应该先通过别人写的博客,或者视频先掌握框架的大体原理,知道大体原理后,看源码才会事半功倍。 文章会把 Vue.js 拆分成多个小模块,讲解模块间的依赖以及调用关系。然后将源码核心部分抽离压缩,各个模块以小 Demo 的形式展现出来,用最少的代码讲解内部实现。掌握了这些模块的核心原理之后,你足可以应对所有的前端 Vue 技术面试。 在本场 Chat 中,会讲到如下内容: * 响应式系统的基本原理 * 响应式系统的依赖收集追踪原理 * 异步更新策略及 nextTick 原理 * 虚拟(Virtual )DOM 和 Diff 算法 * 数据状态管理 Vuex 工作原理 **适合人群**: 工作 1-3 年的初中级前端工程师,需要修炼内力提升对框架的理解
VC橙
·
前端技术团队
Vue.js
·
243 订阅
学了这篇 Zookeeper,分分钟钟写出分布式应用程序
Zookeeper 是 Apache 软件基金会顶级的开源项目之一,在我们熟知的分布式领域中,Dubbo 就是用它来实现服务注册与发现的,当然在 Kafka 中也有它的影子,主要用它来实现服务器之间的协调、生产者负载均衡、Topic 与 Broker 的注册等等,可见它的作用很强大,但是如果抛开这些开源的项目,让你来设计一个高可用的分布式架构,你可以胜任吗?那还用说?当然可以了!不过前提条件我们得有这方面的技能,所以还是要踏踏实实的去学习它,相信有了 Zookeeper 的介入,你定能会设计出属于自己的分布式应用程序,所以本场 Chat 你值得拥有! 在本场 Chat 中,会讲到如下内容: - Zookeeper 的核心理念与角色分析。 - 集群的搭建步骤与实操。 - 节点类型与常用命令。 - Zookeeper 的读写流程。 - ZAB协议的分析。 - Leader 挂掉之后的分析。 - 第一个Zookeeper 应用程序的讲解。 - 实现自己的服务注册、发现和负载均衡,掌握注册中心的精髓。 - 实现一个几乎“永不宕机”的 HA 架构。 - 分布式锁的实现,并与 Redis 实现的分布式锁做比较。 - 其他应用场景的介绍。 - 关于 Zookeeper 的一些思考。 - 做最后的总结。 温馨提示:实例代码使用的是 Java 语言。 适合人群: 对分布式架构设计感兴趣的所有开发人员。
清然
·
高级软件工程师
ZooKeeper
·
523 订阅
Java 性能提升篇:JVM 之 JIT 的深度理解
随着互联网发展,Java 应用程序的兴起越来越大,同样对 Java 的深入,JVM 的理解也要求越来越高。提升 Java 应用程序性能变得越来越重要,想学习 JVM 调优怎么可以少了 JIT 呢?还有什么可以比 JIT 更影响性能的呢。通过本 Chat,和大家分享 JIT 相关的话题。 本 Chat 适用于相对 JVM 和 JIT 有深入理解的。想要在面试中被问到可以从容应答的。 通过本 Chat 你可以学到如下内容: - Java 是解释型还是编译型语言? - 什么是 JIT 编译? - 如何检测代码编译的详细信息? - 什么是 C1、C2 编译? - 编译有几层?每层的区别是什么? - 如何根据特性选择我想要的编译器? - 这种选择在 JDK7 和 JDK8+ 中一样吗? - 32bit 和 64bit 的 JVM 区别在哪里? - 如何关闭编译等级? - 如果是远程机,怎么进行调试呢? - 如何调试 CodeCache?
chris
·
技术带头人
Java
·
125 订阅
查看全部文章