咖啡的博客

相信你的日积月累,总有一天会是别人的望尘莫及!

Netty之reactor模式

Netty之Reactor模式 目录 1. 单线程模型 2. 多线程模型 3. 主从多线程模型 参考资料 正文 无论是C++还是Java编写的网络框架,大多数都是基于Reactor模式进行设计和开发,Reactor模式基于事件驱动,特别适合处理海量的I/O事件。 回到顶部 1....

2019-07-18 16:47:59

阅读数 1

评论数 0

webSocket学习总结

前言: WebSocket protocol 是HTML5一种新的协议。它实现了浏览器与服务器全双工通信(full-duplex)。在这之前都是客户端主动请求服务端,一请求一应答,很多时候实现消息更新都是采用ajax轮询,有延迟,有了WebSocket双方都可以主动发给对端,实现真正的推送。 ...

2019-07-18 16:43:47

阅读数 2

评论数 0

如何合理设置线程池大小

要想合理的配置线程池的大小,首先得分析任务的特性,可以从以下几个角度分析: 任务的性质:CPU密集型任务、IO密集型任务、混合型任务。 任务的优先级:高、中、低。 任务的执行时间:长、中、短。 任务的依赖性:是否依赖其他系统资源,如数据库连接等。 性质不同的任务可以交给不同规模的线程池执行...

2019-07-11 15:59:20

阅读数 20

评论数 0

Linux下使用tcpdump进行抓包(转)

技巧: 1、可以通过tcpdump抓取某个网卡的包,然后输出日志文件,通过Wireshark进行分析。 2、可以设置Wifi热点,然后通过手机连接这个热点,然后进行tcpdump的分析。而且在Ubuntu中新建Wifi热点无需额外安装软件,前提是要有无线网卡,参考:http://jingyan...

2019-07-11 14:51:31

阅读数 12

评论数 0

TCP连接出现大量TIME_WAIT的解决办法

一个TCP/IP连接断开以后,会通过TIME_WAIT的状态保留一段时间,时间过了才会释放这个端口,当端口接受的频繁请求数量过多的时候,就会产生大量的TIME_WAIT状态的连接,这些连接占着端口,会消耗大量的资源。面对这种情况 可以通过修改TCP/IP的内核参数,来及时的处理这些状态。 nets...

2019-07-05 15:15:41

阅读数 212

评论数 0

TCP连接状态详解及TIME_WAIT过多的解决方法

TIME_WAIT状态原理 ---------------------------- 通信双方建立TCP连接后,主动关闭连接的一方就会进入TIME_WAIT状态。 客户端主动关闭连接时,会发送最后一个ack后,然后会进入TIME_WAIT状态,再停留2个MSL时间(后有MSL的解释),进入C...

2019-07-05 14:21:38

阅读数 41

评论数 0

ByteBuffer、byte[]、string转化

@Override public String decodeKey(ByteBuffer bytes) { Charset charset = Charset.forName("utf-8"); return charset.decode(bytes).toSt...

2019-07-01 09:34:27

阅读数 9

评论数 0

ftp远程下载文件

package com.chargedot.server.util; import java.io.*; import java.net.InetSocketAddress; import java.net.SocketAddress; import java.util.ArrayList; i...

2019-06-27 10:15:29

阅读数 27

评论数 0

NIO远程下载文件分析

1.前言 现在很多做网络通讯中间代理层的通讯都是使用Java1.4以后推出的NIO进行编写,现在还有很多开源的框架也是封装了NIO的书写细节来帮助大家简写异步非阻塞通讯服务。像MySql的代理中间件amoeba-mysql-proxy就是采用NIO的方式处理client端过来的request,之...

2019-06-26 20:42:34

阅读数 36

评论数 0

sdk反射外部接口(class.forName)

1、加载反射文件 public class ReflectClassLoader { protected static final Logger LOG = LoggerFactory.getLogger(ReflectClassLoader.class); private ...

2019-06-25 09:39:59

阅读数 26

评论数 0

@Transactional注解的几个参数--事务传播控制--事务隔离级别--异常与回滚

阅读目录 控制事务传播----propagation属性 控制事务隔离级别----属性isolation 只可读/可读写 遇到哪些异常会回滚和不回滚----rollbackFor和noRollbackFor属性 @Transactianal注解有一些属性,见Spring-Framework...

2019-06-24 16:15:24

阅读数 12

评论数 0

MySQL批量插入、批量更新及批量删除语句

摘要:1、批量插入 <insert id="insertBatch" parameterType="java.util.List"> insert into t_student(name, age, class) ... 1、批...

2019-06-10 17:40:10

阅读数 100

评论数 0

MySQL索引背后的数据结构及算法原理

摘要 本文以MySQL数据库为研究对象,讨论与数据库索引相关的一些话题。特别需要说明的是,MySQL支持诸多存储引擎,而各种存储引擎对索引的支持也各不相同,因此MySQL数据库支持多种索引类型,如BTree索引,哈希索引,全文索引等等。为了避免混乱,本文将只关注于BTree索引,因为这是平常使用...

2019-06-10 16:15:40

阅读数 20

评论数 0

Java反射机制的介绍 & 实战攻略

前言 在 Java中,反射机制(Reflection)非常重要,但对于很多开发者来说,这并不容易理解,甚至觉得有点神秘 今天,我将献上一份 Java反射机制的介绍 & 实战攻略,希望你们会喜欢。 目录 Java反射机制 1. 简介 定义:Java语言中 一种 动态...

2019-06-10 15:57:04

阅读数 27

评论数 0

SpringBoot整合JDBC数据库操作:批量添加/删除/修改数据

这篇文章主要讲解一下对数据的批量操作(批量增加,批量修改,批量删除). 修改ArticleRepository类文件, 增加批量添加/删除/修改方法 /** * 批量添加数据 */ public int batchCreateArticle(final List<Article...

2019-05-24 15:19:30

阅读数 60

评论数 0

springboot系列文章之启动时初始化数据

前言 在我们用springboot搭建项目的时候,有时候会碰到在项目启动时初始化一些操作的需求,针对这种需求springboot(spring)为我们提供了以下几种方案供我们选择: - ApplicationRunner与CommandLineRunner接口 - Spring Bean初始化的...

2019-05-24 09:30:03

阅读数 29

评论数 0

kafka高并发消息堆积

1、 使用Kafka时,消费者每次poll的数据业务处理时间不能超过kafka的max.poll.interval.ms,该参数在kafka0.10.2.1中的默认值是300s,所以要综合业务处理时间和每次poll的数据数量。 2、Java线程池大小的选择: (1)对于CPU密集型应用,...

2019-04-29 09:31:56

阅读数 262

评论数 0

Kafka指定消息的partition规则

注意:在配置文件server.properties中指定了partition的数量num.partitions。这指的是多单个topic的partition数量之和。若有多个broker,可能partition分布在不同的节点上,则多个broker的所有partitioin数量加起来为num.pa...

2019-04-29 09:29:54

阅读数 378

评论数 0

kafka重复消费问题

问题描述 采用kafka读取消息进行处理时,consumer会重复读取afka队列中的数据。 问题原因 kafka的consumer消费数据时首先会从broker里读取一批消息数据进行处理,处理完成后再提交offset。而我们项目中的consumer消费能力比较低,导致取出的一批数据在sessi...

2019-04-29 09:26:54

阅读数 95

评论数 0

KafkaConsumer多线程优化

优化目的: KafkaConsumer是以单线程模式运行,为了提升consumer的消费能力,多线程是一个很好的选择。KafkaConsumer和KafkaProducer不同,后者是线程安全的,因此我们鼓励用户在多个线程中共享一个KafkaProducer实例,这样通常都要比每个线程维护一个Ka...

2019-04-25 15:20:11

阅读数 57

评论数 0

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