- 博客(16)
- 资源 (4)
- 收藏
- 关注
原创 kafka单节点迁移到分布式
一 zookeeper 分布式搭建下载zookpeeper:zookeeper-3.14.10.tar.gz根据公司使用将zookeeper-3.4.10.tar.gz在user/local/下解压创建文件夹mkdir /usr/local/zookeeper-3.4.10/data更名并修改zk配置文件a) cd /usr/local/zookeeper-3.4....
2018-11-08 15:35:04 315
转载 线程上下文设计模式-ThredLocal
在开发过程中其实我们经常遇见上下文(上下文),例如弹簧的ApplicationContext中,Servlet的的参数servletContext,上下文就是贯穿整个系统或者阶段生命周期的对象,其中存贮了一些系统的全局变量信息。在很多时候,单个线程的执行任务步骤非常多的时候,后面的某一步骤需要前面的输出值(责任链模式中特别多),那么需要将参数从头传递到尾,这样会特别的麻烦,并且在参数过多的情...
2018-08-19 21:49:13 1085
原创 多线程下设计模式—生产者消费者模式
多线程中比较经典的就是生产者消费者模式了,很多复杂的模式也是在这个基础上演变的。里面也又很多的小知识点。生产者消费者代码public class AssemblyLine<T> {//存放生产数据的队列private final List<T> queue;//最大生产值private final int queueMaxSize;publi...
2018-08-16 21:24:25 148
原创 多线程下的设计模式-future设计模式
在开发中常常会出现一种情况,一个任务需要执行很长的时间,但是你肯定不希望它会阻塞你的线程,在java中有一个Future的类,它相当于一个凭证,当你需要执行结果的时候给你,这个凭证是立即返回的,当你需要的时候去拿结果就行了。Future与Future的简单实现public interface Future&lt;T&gt; { T get() throws Inter...
2018-08-14 23:28:31 140
转载 TCP/IP协议详解
点击上方“程序员小灰”,选择“置顶公众号”有趣有内涵的文章第一时间送达!本文转载自公众号[技术特工队],作者整理了一些TCP/IP协议簇中需要必知必会的十大问题,既是面试高频问题,又是程序员必备基础素养。一、TCP/IP模型TCP/IP协议模...
2018-08-11 23:17:22 209
原创 当java 8 lambda遇上uncheck exception
如果你在工作中经常使用lambda,那么你一定遇到过对已在使用lambda中处理异常的头疼问题,那么这篇文章就可以帮你优雅的处理lambda中遇到的异常处理问题。如果你还没有开始使用java8的lambda,作者劝你尽快加入,会发现函数式编程的很多乐趣,会让你的代码非常优雅,更加惊艳哦! public static void main(String[] args) { ...
2018-08-11 22:11:45 485
转载 零拷贝原理
&amp;nbsp; &amp;nbsp; &amp;nbsp;为何要懂零拷贝原理?因为rocketmq存储核心使用的就是零拷贝原理。io读写的方式中断DMA中断方式中断方式的流程图如下:用户进程发起数据读取请求系统调度为该进程分配cpucpu向io控制器(ide,scsi)发送io请求用户进程等待io完成,让出cpu系...
2018-08-08 17:31:12 316
转载 高性能IO模型浅析
通俗易懂的文章,能快速理解:同步阻塞IO(Blocking IO),同步非阻塞IO(Non-blocking IO),IO多路复用(IO Multiplexing),异步IO(Asynchronous IO) 高性能Io模型浅析...
2018-08-08 15:23:35 126
原创 多线程下的设计模式-观察者设计模式
在某些场景下我们需要为一些比较重(资源过大,处理时间很长)的事情起一个新线程,与此同时,我们需要观察这写线程的每个阶段的情况,便于做出处理,一直去询问线程你正在处于什么阶段这样的设计肯定是不合理的,那么这个时候观察者设计模式就派上用处了。线程生命周期的观察者 只要是实现了我规定的接口的类就可以是一个线程生命周期的观察者。/** * @author guoxingyon...
2018-08-06 16:47:53 969
原创 java多线程join()详解
Thread的join方法是一个非常重要的方法。使用它的特性可以实现很多比较强大的功能。虽然在编码中很少去直接使用,但是在并发包中被大量使用,所以了解它的作用与实现是很有必要的。public static void main(String[] args) { Thread thread = new Thread(() -> { try ...
2018-08-05 21:02:28 678
原创 Spring注解开发1
spring注解: @Configuration:等同于之前的配置文件。 属性 说明 默认 value 配置当前类的关联的Spring bean的名称 类名的首字母小写@Bean 属性 说明 默认 name 和 value 为 bean 起一个名字 使用该方法的名称作为类名 autow...
2018-07-03 21:30:24 125
原创 kafka分布式部署实践
准备工作:准备三台虚拟机,分别下载kafka,跟zookeeper(注意zookeeper版本选择最好跟kafka对应,可以去kafka/lib/查看自带的zk的版本,然后去下载对应的版本号),我的版本分别使用的是kafka_2.10-0.10.2.1,zookeeper-3.4.9。先部署zk解压zk,并创建一个文件夹存放数据。 修改/zookeeper-3.4.9/con...
2018-05-24 17:56:14 292
原创 初识kafka
大部分内容是翻译至Kafka The Definitive Guide,有翻译不好的地方请见谅,想深入学习的小伙伴,建议去看一下这本书,因为理解问题翻译错误的地方希望指出,我会及时改进。每个企业都由数据驱动。我们收集信息,分析信息,操纵信息并创造更多信息作为输出。 每个应用程序都会创建数据,无论它是日志消息,度量标准,用户活动,传出消息还是其他内容。 数据的每个字节都有一个要讲的故事,...
2018-05-24 10:53:26 139
原创 kafka的关键组成
大部分内容是翻译至Kafka The Definitive Guide,有翻译不好的地方请见谅,想深入学习的小伙伴,建议去看一下这本书,因为理解问题翻译错误的地方希望指出,我会及时改进。KEY TEAMS Messages and Batches: - kafka内的数据单位称为message。 message类似于一行或一条记录. - kafka所关心的message数据只是...
2018-05-24 10:52:50 632
原创 优雅的停止线程
在平常的开发中我们想打断一个正在blocking的线程,或者结束执行任务超时的线程可以通过下面的几种方式优雅的停止线程。、1.利用标识符去停止一个线程 通过捕获到标识符的改变从而结束任务,结束线程。2.利用java的Interrupt()去结束线程 执行结果 通过调用Interrupt()抛出一个InterruptedException程序捕获到这个异常后结束b...
2018-05-15 20:52:24 1065
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人