李晓娜

唯自由和梦想不可辜负…

并发(2)--java线程池原理

线程池Execotors工具可以创建普通的线程池以及schedule调度任务的调度池。使用线程池的一个优点就是:     1、线程是稀缺资源,使用线程池可以减少创建和销毁线程的次数,每个工作线程都可以重复使用。      2、可以根据系统的承受能力,调整线程池中工作线程的数量,防止因为消耗过多...

2017-08-31 22:59:07

阅读数 241

评论数 0

并发(1)--线程池简介

通常情况下,当我们使用一个线程的时候,采用new方式去创建一个线程,这样实现起来很方便,但是与此同时存在一个问题:大量创建线程,会带来资源的消耗,并且如果并发的数量很多的时候,并且每个线程的执行时间很短的话,频繁创建线程会很消耗效率,因为频繁创建和销毁线程是一个很耗时间的过程。     如何使得...

2017-08-31 22:34:35

阅读数 220

评论数 0

Netty学习系列(二)-- NIO介绍

简介     nio 是non-blocking的简称,在jdk1.4 里提供的新api 。Sun 官方标榜的特性如下: 为所有的原始类型提供(Buffer)缓存支持。字符集编码解码解决方案。 Channel :一个新的原始I/O 抽象。支持锁和内存映射文件的文件访问接口。提供多路(non-bl...

2017-06-25 21:19:51

阅读数 330

评论数 1

Netty学习系列(一)-- 掀开你神秘的面纱

Netty是什么 (1)Netty的本质是由JBOSS提供的一个java开源框架。 (2)Netty优势是提供异步的、事件驱动的网络应用程序框架和工具。 (3)Netty的目的是用以快速开发高性能、高可靠性的网络服务器和客户端程序。 总而言之:  Netty 是一个基于 JAVA NIO 类库的异...

2017-06-25 21:06:07

阅读数 382

评论数 0

Hadoop1.x与Hadoop2的区别

原文地址:http://blog.csdn.net/fenglibing/article/details/32916445  1、变更介绍  Hadoop2相比较于Hadoop1.x来说,HDFS的架构与MapReduce的都有较大的变化,且速度上和可用性上都有了很大的提高,Hadoop2...

2016-07-24 21:28:23

阅读数 481

评论数 2

Java NIO使用及原理分析 (四)

在上一篇文章中介绍了关于缓冲区的一些细节内容,现在终于可以进入NIO中最有意思的部分非阻塞I/O。通常在进行同步I/O操作时,如果读取数据,代码会阻塞直至有 可供读取的数据。同样,写入调用将会阻塞直至数据能够写入。传统的Server/Client模式会基于TPR(Thread per Reques...

2016-07-22 20:45:04

阅读数 326

评论数 2

Java NIO使用及原理分析(三)

在上一篇文章中介绍了缓冲区内部对于状态变化的跟踪机制,而对于NIO中缓冲区来说,还有很多的内容值的学习,如缓冲区的分片与数据共享,只读缓冲区等。在本文中我们来看一下缓冲区一些更细节的内容。  缓冲区的分配  在前面的几个例子中,我们已经看过了,在创建一个缓冲区对象时,会调用静态方法al...

2016-07-22 20:43:02

阅读数 277

评论数 2

Java NIO使用及原理分析(二)

在第一篇中,我们介绍了NIO中的两个核心对象:缓冲区和通道,在谈到缓冲区时,我们说缓冲区对象本质上是一个数组,但它其实是一个特殊的数组,缓冲区对象内置了一些机制,能够跟踪和记录缓冲区的状态变化情况,如果我们使用get()方法从缓冲区获取数据或者使用put()方法把数据写入缓冲区,都会引起缓冲区状态...

2016-07-22 20:41:18

阅读数 359

评论数 2

Java NIO使用及原理分析 (一)

最近由于工作关系要做一些Java方面的开发,其中最重要的一块就是Java NIO(New I/O),尽管很早以前了解过一些,但并没有认真去看过它的实现原理,也没有机会在工作中使用,这次也好重新研究一下,顺便写点东西,就当是自己学习 Java NIO的笔记了。本文为NIO使用及原理分析的第一篇,将...

2016-07-22 20:36:46

阅读数 309

评论数 2

Oauth2.0协议简介

Ø  什么是Oauth2.0授权   概念   Oauth2.0授权是一个关于开放授权的一个开放标准,它可以允许用户授权第三方应用并且访问他们存储在另外的服务提供者上面的信息,而不需要将用户名和密码提供给第三方应用或者分享他们的数据的所有内容。   访问的原理是:Oauth允许用户提供一个令牌给第...

2016-06-29 09:53:22

阅读数 546

评论数 3

Ehcache学习(四)ehcache缓存共享

缓存实现共享一般是在集群中很常用的,那么怎么配置呢?实现集群中缓存的方式有RMI,jgrop以及jms,我们把常用的第一种RMI方式进行详细的讲解以及实例的演示。   由于资源有限,我在我的机器上使用同一个ip不同的端口号来进行集群的模拟,从而达到我们想要演示的目的,实现缓存的共享。(以在win...

2016-06-16 16:32:57

阅读数 2772

评论数 5

Ehcache学习(三)ehcache与springAOP拦截器实例

本次我们使用springAOP+ehcache结合来实现数据的缓存,我们可以 Cache 系统中 Service 或则 DAO 层的 get/find 等方法返回结果,如果数据更新( 使用Create/update/delete 方法), 则刷新 cache 中相应的内容。 Aop中最常见的就是拦...

2016-06-16 16:17:04

阅读数 8195

评论数 3

Ehcache学习(二)ehcache与spring注解实例

Ø  简介   概念   系统缓存是位于应用程序与物理数据源之间, 用于临时存放复制数据的内存区域,目的是为了减少应用程序对物理数据源访问的次数, 从而提高应用程序的运行性能. 缓存设想内存是有限的, 缓存的时效性也是有限的,所以可以设定内存数量的大小, 可以 执行失效算法 , 可以在内存满了的...

2016-06-16 15:39:33

阅读数 2278

评论数 3

Ehcache学习(一)简介与实例

Ø  简介   概念   EhCache 是一个纯Java的进程内缓存框架,具有快速、精干等特点,是Hibernate中默认的CacheProvider。Ehcache是一种广泛使用的开源Java分布式缓存。主要面向通用缓存,JavaEE和轻量级容器。它具有内存和磁盘存储,缓存加载器,缓存扩展,缓...

2016-06-16 15:31:51

阅读数 483

评论数 4

MongoDB(四)分片集群

我们知道即使是采用了副本集,但是还是有些问题是无法进行解决的,比如:从节点每个上面的数据都是对数据库全量拷贝,从节点压力会不会过大,还有就是数据压力加大的时候,大到数据库支持不了的时候是否可以自动扩展呢?   此时Mongodb又出了新的解决方案,来应对这些事情。那就是Mongodb的分片集群技...

2016-06-13 20:34:32

阅读数 451

评论数 3

MongoDB(三)主从复制以及副本集的配置和使用

上篇主要讲解的是主从复制,这次我们来讲一下副本集。        副本集的优点在于:副本集采用的是心跳机制,当主机的节点挂掉之后,会从从服务器中通过选择机制再次选择一个主节点,这个主副切换是自动进行的  Ø  副本集的配置与使用   配置   与主从配置基本类似,我们先建立与主从复制基本一直的目录...

2016-06-13 20:25:53

阅读数 935

评论数 1

MongoDB(二)主从复制以及副本集的配置和使用

**   Mongodb是支持数据之间的相互复制的,具体存在两种方式,一种就是主从复制,而另一种是副本集,两者之间既有相同点,也有不同点,我们将通过实例进行讲解。  主从复制      概念讲解       什么是主从复制?之前我们接触过mysql,知道数据库的双击备份,也就是主节点当掉之...

2016-06-13 20:13:49

阅读数 746

评论数 2

MongoDB(一)简介和安装使用

MongoDB 是一个基于分布式文件存储的数据库,是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。  对于关系型数据库,我们都比较熟悉,这里不做详细的介绍,主要来介绍的就是非关系型数据库,NoSql.  Ø  NoSql   简介   什么是NoSq...

2016-06-13 19:50:43

阅读数 393

评论数 1

Java8新特性(四)------接口中可以定义方法体

Java8比起以前的版本存在很大的变化,我们知道在之前的版本中接口只能是定义抽象的方法,是不能定义实现的,但是在java8环境下,这个不可能已经变得可能。下面我们通过例子一步一步的来讲解下java8的用法。  定义静态方法   在接口中定义的静态方法,不是抽象的,具体实现的,可以直接使用接口名...

2016-05-30 16:12:21

阅读数 3530

评论数 4

Java8新特性(三)------Stream

Ø  基础讲解   在java8中Stream被定义为泛型接口,这个接口代表的是数据流,但是Stream并不是一个数据结构,不直接进行数据的存储。Stream主要是通过管道来操作数据。   Stream 不是集合元素,它不是数据结构并不保存数据,它是有关算法和计算的,它更像一个高级版本的 It...

2016-05-30 16:03:18

阅读数 440

评论数 1

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