NIO(5) Selector

Selector(选择器) 是Java NIO中能够检测一到多个NIO通道,并能够知晓通道是否为读、写事件做好准备的组件。这样,一个单独的线程可以管理多个channel,从而管理多个网络连接。 SelectableChannel(可选择通道) 这个抽象类提供了通道的可选择性所需要的公共方法。F...

2016-10-27 14:10:32

阅读数 114

评论数 0

NIO(4) SocketChannel

Java NIO中的SocketChannel是一个连接到TCP网络套接字的通道。可以通过以下2种方式创建SocketChannel: 1、打开一个SocketChannel并连接到互联网上的某台服务器。 2、一个新连接到达ServerSocketChannel时,会创建一个SocketCha...

2016-10-26 22:17:57

阅读数 202

评论数 0

NIO(3) FileChannel

Selector(选择器)是Java NIO中能够检测一到多个NIO通道,并能够知晓通道是否为读、写事件做好准备的组件。这样,一个单独的线程可以管理多个channel,从而管理多个网络连接。 Selector实现IO多路复用server package com.zz;import java.io....

2016-10-26 21:20:38

阅读数 161

评论数 0

NIO(2) Channel之间数据传输

Java NIO中,如果两个通道中有一个是FileChannel,可以直接将数据从一个channel传输到另外一个channel。 transferFrom FileChannel的transferFrom()方法可以将数据从源通道传输到FileChannel中 public void ...

2016-10-26 13:26:05

阅读数 137

评论数 0

NIO(1) Channel和Buffer

Channel Java NIO的通道类似流,但又有些不同: 既可以从通道中读取数据,又可以写数据到通道。但流的读写通常是单向的。 通道可以异步地读写。 通道中的数据总是要先读到一个Buffer,或者总是要从一个Buffer中写入 Channel的实现FileChannel          ...

2016-10-25 21:36:27

阅读数 155

评论数 0

windows下解决端口被占用

win键 + r,输入cmd进入DOS命令窗口 根据端口号查程序的进程号 根据程序的进程号查看具体的程序名称 tasklist | findstr 进程号(9500) 强制、递归 删除本程序及其子进程 taskkill -f -t -im 进程名(javaw.exe)

2016-10-25 20:24:24

阅读数 2559

评论数 0

Netty初探-基本概念和相关类介绍

基本概念 概念Netty是由JBOSS提供的一个Java NIO开源框架。Netty提供异步的、事件驱动的网络应用程序框架和工具,用以快速开发高性能、高可靠性的网络服务器和客户端程序。可实现的功能见下图: Netty vs Mina vs GrizzlyMina的设计理念最为优雅,Netty和Mi...

2016-10-23 23:52:23

阅读数 330

评论数 0

Netty server-client 实现

Serverpackage com.zz.hello5;import io.netty.bootstrap.ServerBootstrap; import io.netty.channel.Channel; import io.netty.channel.ChannelFuture; import...

2016-10-23 21:33:14

阅读数 206

评论数 0

03 Timer

package com.zz.timer;import java.util.Date; import java.util.Timer; import java.util.TimerTask;public class MyTimer { // 用于交替执行爆炸(0:2s、 1:4s) ...

2016-10-03 23:57:27

阅读数 107

评论数 0

02 创建线程方式

继承Thread /** 非实现变量共享 */ public class MyThread extends Thread { private int count = 3; public MyThread(String threadName) { super(); ...

2016-10-03 23:45:25

阅读数 114

评论数 0

01 线程、进程概述

进程 操作系统中所运行的任务通常对应一个进程(Process)。当一个程序进入内存运行时,即变为一个进程。进程处于运行过程中的程序(并非是磁盘上静态的程序)。进程是系统进行资源分配和调度的最小单位进程特性 独立性:拥有自己独立的资源空间,一个用户进程不可以直接访问其他进程的地址空间。 动态性:...

2016-10-03 20:34:53

阅读数 140

评论数 0

Hadoop(17) MR 决定Mapper数量因素

源码分析// 提交任务到集群, 并等待结束 job.waitForCompletion(true); 进入 org.apache.hadoop.mapreduce.Job下的waitForCompletion() ——————————————————————————————————————————...

2016-10-03 19:49:57

阅读数 405

评论数 0

Hadoop(16) MR 倒排索引

倒排索引(Inverted Index):倒排索引是实现“单词-文档矩阵”的一种具体存储形式,通过倒排索引,可以根据单词快速获取包含这个单词的文档列表。倒排索引主要由两个部分组成:“单词词典”和“倒排文件”。 比如有文档 a.txt       hello tom       hello ...

2016-10-03 16:39:38

阅读数 234

评论数 0

Hadoop(15) MR shuffle

Shuffle过程      Hadoop的shuffle过程就是从map端输出到reduce端输入之间的过程shuffle是MR的心脏。 map 端      当Map程序开始产生结果的时候,并不是直接写到文件的,而是利用缓存做一些排序方面的预处理操作    每个Map任务都有一个循环内存缓冲区...

2016-10-03 01:03:47

阅读数 198

评论数 0

Hadoop(14) MR Combiner

众所周知,Hadoop框架使用Mapper将数据处理成一个个的key/value键值对,在网络节点间对其进行整理(shuffle),然后使用Reducer处理数据并进行最终输出。这其中假如我们有10亿个数据,Mapper会生成10亿个键值对在网络间进行传输(网络带宽严重被占降低程序效率),所有数据...

2016-10-02 22:15:18

阅读数 1597

评论数 0

Hadoop(13) MR 排序

在上一文章中的统计手机用户流量的基础之上再进行排序。       若要进行排序则须implements WritableComparable。      map和reduce阶段进行排序时,比较的是k2。v2是不参与排序比较的。如果要想让v2也进行排序,需要把k2和v2组装成新的类,作为k2,才...

2016-10-02 17:27:11

阅读数 271

评论数 0

Hadoop(12) MR Partitioner

回顾Map阶段五大步骤 其中,step1.3就是一个分区操作。通过前面的学习我们知道Mapper最终处理的键值对key/value,是需要送到Reducer去合并的,合并的时候,有相同key的键/值对会送到同一个Reducer节点中进行归并。哪个key到哪个Reducer的分配过程,是由Pa...

2016-10-02 13:40:57

阅读数 181

评论数 0

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