• 博客园logo
  • 会员
  • 周边
  • 新闻
  • 博问
  • 闪存
  • 众包
  • 赞助商
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
My Blog@github像少年啦飞驰
{关注大规模数据处理(MapReduce)J2EE等技术}
博客园    首页    新随笔    联系   管理    订阅  订阅

随笔分类 -  Java

Java NIO原理分析

摘要:Java IO在Client/Server模型中,Server往往需要同时处理大量来自Client的访问请求,因此Server端需采用支持高并发访问的架构。一种简单而又直接的解决方案是“one-thread-per-connection”。这是一种基于阻塞式I/O的多线程模型。在该模型中,Server为每个Client连接创建一个处理线程,每个处理线程阻塞式等待可能达到的数据,一旦数据到达,则立即处理请求、返回处理结果并再次进入等待状态。由于每个Client连接有一个单独的处理线程为其服务,因此可保证良好的响应时间。但当系统负载增大(并发请求增多)时,Server端需要的线程数会增加,这将成为 阅读全文
posted @ 2013-08-11 19:51 像少年啦飞驰 阅读(20815) 评论(1) 推荐(3)
彻底理解JAVA动态代理

摘要:代理设计模式定义:为其他对象提供一种代理以控制对这个对象的访问。代理模式的结构如下图所示。动态代理使用java动态代理机制以巧妙的方式实现了代理模式的设计理念。代理模式示例代码public interface Subject { public void doSomething(); } public class RealSubject implements Subject { public void doSomething() { System.out.println( "call doSomething()" ); } } ... 阅读全文
posted @ 2013-08-11 11:44 像少年啦飞驰 阅读(250433) 评论(20) 推荐(19)
最小的k个数

摘要:题目:输入n个整数,找出其中的最小的k个数。例如输入4、5、1、6、2、7、3、8这8个数字,则最小的4个数字是1、2、3、4思路:创建一个大小为k的大顶堆,每次从数组中读入一个数,与大顶堆的根作比较,如果小于根,将该数做根,然后调整大顶堆。依次比较,最后输出该大顶堆。package com.flyoung;public class K { public static void heapAjust(int[] array,int s,int m){ //调整大顶堆 int temp ,j; temp=array[s]; for(j=2*s;j<=... 阅读全文
posted @ 2012-05-02 22:21 像少年啦飞驰 阅读(521) 评论(0) 推荐(0)
编程之美--3.5最短摘要生成

摘要:Alibaba笔试题:给定一段产品的英文描述,包含M个英文字母,每个英文单词以空格分隔,无其他标点符号;再给定N个英文单词关键字,请说明思路并编程实现方法String extractSummary(String description,String[] key words),目标是找出此产品描述中包含N个关键字(每个关键词至少出现一次)的长度最短的子串,作为产品简介输出。(不限编程语言)20分。 这道笔试题和编程之美最短摘要生成的方法类似,我用java实现了这个方法。 先来看看这些序列:w0,w1,w2,w3,q0,w4,w5,q1,w6,w7,w8,q0,w9,q1 问题在于,如何... 阅读全文
posted @ 2012-04-08 12:09 像少年啦飞驰 阅读(2848) 评论(0) 推荐(0)
java nio小结

摘要:根据网上的资料做些整理Java NIO API详解 http://www.blogjava.net/19851985lili/articles/93524.html这篇文章对nio的api讲解比较全,可以帮助在宏观上把握nio。BIO 方式使得整个处理过程和连接是绑定的,只要连接建立,无论客户端是否有消息发送,都要进行等待处理,一定程度上浪费了服务器端的硬件资源,因此就有了NIO 方式。Java 对于 NIO 方式的支持是通过 Channel和 Selector 方式来实现,采用的方法为向 Channel注册感兴趣的事件,然后通过 Selector 来获取到发生了事件的 key,如发生了相应的 阅读全文
posted @ 2011-12-09 15:08 像少年啦飞驰 阅读(7142) 评论(0) 推荐(0)
Java SE6调用动态编译

摘要:一、使用JavaCompiler接口编译java源程序 我们可以通过ToolProvider类的静态方法getSystemJavaCompiler来得到一个JavaCompiler接口的实例。 JavaCompiler compiler = ToolProvider.getSystemJavaCompiler(); JavaCompiler中最核心的方法是run。通过这个方法可以编译java源程序。这个方法有3个固定参数和1个可变参数(可变参数是从Jave SE5开始提供的一个新的参数类型,用type… argu表示)。前3个参数分别用来为java编译器提供参数、得到Java编译器的输出信.. 阅读全文
posted @ 2011-11-14 22:54 像少年啦飞驰 阅读(6536) 评论(0) 推荐(0)
RPC应用的java实现

摘要:一、RPC介绍 什么是RPC?Remote Procedure Call,远程过程调用。也就是说,调用过程代码并不是在调用者本地运行,而是要实现调用者与被调用者二地之间的连接与通信。比较严格的定义是:Remote procedure call (RPC) is a protocol that allows a computer program running on one computer to cause a subroutine on another computer to be executed without the programmer explicitly coding the . 阅读全文
posted @ 2011-11-12 17:10 像少年啦飞驰 阅读(39441) 评论(1) 推荐(2)

博客园  ©  2004-2026
浙公网安备 33010602011771号 浙ICP备2021040463号-3