首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
石山
订阅
meggggg
更多收藏集
微信扫码分享
微信
新浪微博
QQ
14篇文章 · 0订阅
Linux 的 IO 通信 以及 Reactor 线程模型浅析
随着计算机硬件性能不断提高,服务器 CPU 的核数越来越越多,为了充分利用多核 CPU 的处理能力,提升系统的处理效率和并发性能,多线程并发编程越来越显得重要。
简历写了会Kafka,面试官90%会让你讲讲acks参数对消息持久化的影响
这个acks参数在kafka的使用中,是非常核心以及关键的一个参数,决定了很多东西。 所以无论是为了面试还是实际项目使用,大家都值得看一下这篇文章对Kafka的acks参数的分析,以及背后的原理。 如果要想理解这个acks参数的含义,首先就得搞明白kafka的高可用架构原理。 …
阿里小哥带你玩转JVM:揭秘try-catch-finally在JVM底层都干了些啥?
首先我们介绍异常表:在编译生成的字节码中,每个方法都附带一个异常表。 异常表中的每一个条目代表一个异常处理器,并且由 from 指针、to 指针、target 指针以及所捕获的异常类型构成。这些指针的值是字节码索引用以定位字节码。 下图就是我特别指出的JVM字节码中的异常表部分…
老司机生产实践经验:线上系统的JVM内存是越大越好吗?【石杉的架构笔记】
先说明白一个前提,本文主要讨论的是Kafka和Elasticsearch两种分布式系统的线上部署情况,不是普通的Java应用系统。 先说明一点,不管是我们自己开发的Java应用系统,还是一些中间件系统,在实现的时候都需要选择是否基于自己Java进程的内存来处理数据。 大家应该都…
【架构设计的艺术】Kafka如何通过精妙的架构设计优化JVM GC问题?【石杉的架构笔记】
首先,先得给大家明确一个事情,那就是在客户端发送消息给kafka服务器的时候,一定是有一个内存缓冲机制的。 也就是说,消息会先写入一个内存缓冲中,然后直到多条消息组成了一个Batch,才会一次网络通信把Batch发送过去。 那么这种内存缓冲机制的本意,其实就是把多条消息组成一个…
System.arraycopy为什么快
在 Java 编程中经常会遇到数组拷贝操作,一般会有如下四种方式对数组进行拷贝。 for遍历,遍历源数组并将每个元素赋给目标数组。 clone方法,原数组调用clone方法克隆新对象赋给目标数组,更深入的克隆可以看之前的文章《从JDK角度看对象克隆》。 System.array…
不了解这些“高级货”,活该你面试当炮灰。。。【石杉的架构笔记】
“ 今天聊一个非常硬核的技术知识,给大家分析一下CopyOnWrite思想是什么,以及在Java并发包中的具体体现,包括在Kafka内核源码中是如何运用这个思想来优化并发性能的。 这个CopyOnWrite在面试的时候,很可能成为面试官的一个杀手锏把候选人给一击必杀,也很有可能…
【生产实践总结】支撑百万连接的系统应该如何设计其高并发架构?【石杉的架构笔记】
假如说现在你有一个系统,他需要连接很多很多的硬件设备,这些硬件设备都要跟你的系统来通信。 首先,他一定会跟你的系统建立连接,然后会基于那个连接发送请求给你的系统。 接着你的系统会返回响应给那个系统,最后是大家一起把连接给断开,释放掉网络资源。 所以我们来看一下下面的那个图,感受…
实现 Java 本地缓存,该从这几点开始
缓存,我相信大家对它一定不陌生,在项目中,缓存肯定是必不可少的。市面上有非常多的缓存工具,比如 Redis、Guava Cache 或者 EHcache。对于这些工具,我想大家肯定都非常熟悉,所以今天我们不聊它们,我们来聊一聊如何实现本地缓存。参考上面几种工具,要实现一个较好的…