会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
人生是一场修行
博客园
首页
新随笔
订阅
管理
[置顶]
感悟优化——Netty对JDK缓冲区的内存池零拷贝改造
摘要: NIO中缓冲区是数据传输的基础,JDK通过ByteBuffer实现,Netty框架中并未采用JDK原生的ByteBuffer,而是构造了ByteBuf。 ByteBuf对ByteBuffer做了大量的优化,比如说内存池,零拷贝,引用计数(不依赖GC),本文主要是分析这些优化,学习这些优化思想,学以致
阅读全文
posted @ 2018-07-12 09:17 Janti
阅读(3396)
评论(1)
推荐(4)
[置顶]
由浅入深理解Java线程池及线程池的如何使用
摘要: 前言 多线程的异步执行方式,虽然能够最大限度发挥多核计算机的计算能力,但是如果不加控制,反而会对系统造成负担。线程本身也要占用内存空间,大量的线程会占用内存资源并且可能会导致Out of Memory。即便没有这样的情况,大量的线程回收也会给GC带来很大的压力。 为了避免重复的创建线程,线程池的出现
阅读全文
posted @ 2018-01-07 23:35 Janti
阅读(135387)
评论(17)
推荐(153)
2018年11月21日
Http学习笔记
摘要: HTTP 一次完整的HTTP通信过程中,浏览器与web服务器的7个步骤: 1.建立TCP连接 在HTTP工作开始前,浏览器首先要通过网络与服务器建立连接,该连接是通过TCP来完成的。HTTP是比TCP更高层次的应用层协议,根据规则,只有底层协议建立之后才能进行更高层次协议的连接。 2.浏览器向服务器
阅读全文
posted @ 2018-11-21 20:42 Janti
阅读(555)
评论(0)
推荐(1)
2018年11月1日
zookeeper集群配置详细教程
摘要: 第一步:环境准备 环境 版本 说明 JDK 1.8 zookeeper运行所需 centos 7 操作系统 需要配置好JDK的环境变量 zookeeper-3.4.9.tar.gz 3.4.9 zookeeper部署包 环境 版本 说明 JDK 1.8 zookeeper运行所需 centos 7
阅读全文
posted @ 2018-11-01 10:31 Janti
阅读(4720)
评论(0)
推荐(1)
2018年8月9日
玩转Kafka的生产者——分区器与多线程
摘要: 上篇文章学习kafka的基本安装和基础概念,本文主要是学习kafka的常用API。其中包括生产者和消费者, 多线程生产者,多线程消费者,自定义分区等,当然还包括一些避坑指南。 首发于个人网站:链接地址 准备工作 kafka版本:2.11-1.1.1 操作系统:centos7 java:jdk1.8
阅读全文
posted @ 2018-08-09 09:27 Janti
阅读(14159)
评论(0)
推荐(4)
2018年8月8日
kafka学习笔记——基本概念与安装
摘要: Kafka是一个开源的,轻量级的、分布式的、具有复制备份、基于zooKeeper协调管理的分布式消息系统。 它具备以下三个特性: 能够发布订阅流数据: 存储流数据时,提供相应的容错机制 当流数据到达时,能够被及时处理。 首发于个人博客网站:链接地址 下载安装 本次安装只介绍在linux环境下,win
阅读全文
posted @ 2018-08-08 09:16 Janti
阅读(515)
评论(0)
推荐(1)
2018年7月22日
干货——详解Java中的关键字
摘要: 在平时编码中,我们可能只注意了这些static,final,volatile等关键字的使用,忽略了他们的细节,更深层次的意义。 本文总结了Java中所有常见的关键字以及一些例子。 static 关键字 概述: 当static修饰类的属性或者方法时,那么就可以在没有创建对象的情况下使用该属性或方法。
阅读全文
posted @ 2018-07-22 21:41 Janti
阅读(2463)
评论(0)
推荐(5)
2018年7月12日
Java基础巩固——排序
摘要: 快速排序 基本思想: 通过一趟排序将待排序记录分割成独立的两部分,其中一部分记录的关键字均比另一部分关键字小,则分别对两部分继续进行排序,直到整个序列有序。 实例: 1.一趟排序的过程: 2.排序的全过程: 把整个序列看做一个数组,把第零个位置看做中轴,和最后一个比,如果比他小,则交换,比它大不做任
阅读全文
posted @ 2018-07-12 16:03 Janti
阅读(352)
评论(0)
推荐(0)
2018年7月11日
你可以这么理解五种I/O模型
摘要: 因为项目需要,接触和使用了Netty,Netty是高性能NIO通信框架,在业界拥有很好的口碑,但知其然不知其所以然。 所以本系列文章将从基础开始学起,深入细致的学习NIO。本文主要是介绍五种I/O模型,概念是枯燥的,不过还是得理解才行。 LINUX与UNIX中一些概念 在网络管理,Linux UNI
阅读全文
posted @ 2018-07-11 22:15 Janti
阅读(863)
评论(0)
推荐(3)
Java中的NIO基础知识
摘要: 上一篇介绍了五种NIO模型,本篇将介绍Java中的NIO类库,为学习netty做好铺垫 Java NIO 由3个核心组成,分别是Channels,Buffers,Selectors。本文主要介绍着三个部分。 Channel 所有的I/O都从一个Channel开始。通道与流不同,通道是双向的,流是单向
阅读全文
posted @ 2018-07-11 21:34 Janti
阅读(1095)
评论(0)
推荐(1)
2018年7月10日
Java基础巩固——异常
摘要: 基础回顾 什么是异常? 在Java程序运行时,常常会出现一些非正常的现象,这种情况称为运行错误。根据其性质可以分为错误和异常。 Java程序中所有抛出的异常都必须从Throwable派生而来。类Throwable有两个直接子类:Error和Exception. 一般来说,最常见的错误有程序进入死循环
阅读全文
posted @ 2018-07-10 16:01 Janti
阅读(475)
评论(0)
推荐(0)
下一页
公告