大树叶 技术专栏

骨灰攻城狮 架构师

为何spring cloud 应该使用 Euraka server 而不是 Zookeeper

ureka是基于AP原则构建的,而ZooKeeper是基于CP原则构建的。这些可以从他们的特性中得到体现。 ZK有一个Leader,而且在Leader无法使用的时候通过Paxos(ZAB)算法选举出一个新的Leader。这个Leader的目的就是保证写信息的时候只向这个Leader写入,Lead...

2017-10-30 00:45:28

阅读数 4839

评论数 0

SQL注入攻击三部曲之入门篇

服务器安全管理员和攻击者的战争仿佛永远没有停止的时候,针对国内网站的ASP架构的SQL注入攻击又开始大行其道。本篇文章通过SQL注入攻击原理引出SQL注入攻击的实施方法,旨在企业安全管理员能够通过技术学习提升自己的安全意识。 第一节、SQL注入原理 以下我们从一个网www.mytest.co...

2016-05-10 12:24:12

阅读数 301

评论数 0

无锁的 ( lock-free ) 线程安全算法

算法描述 Lock-free 算法的基础是 CAS (Compareand-Swap) 原子操作。当某个地址的原始值等于某个比较值时,把值改成新值,无论有否修改,返回这个地址的原始值。目前的cpu 支持最多64位的CAS。并且指针 p 必须对齐。  注:原子操作指一个cpu时钟周期内...

2016-05-10 11:07:18

阅读数 472

评论数 0

深入Java集合学习系列:HashMap的实现原理

1. HashMap概述:   HashMap是基于哈希表的Map接口的非同步实现(Hashtable跟HashMap很像,唯一的区别是Hashtalbe中的方法是线程安全的,也就是同步的)。此实现提供所有可选的映射操作,并允许使用null值和null键。此类不保证映射的顺序,特别是它不保证该顺序...

2016-05-09 10:14:17

阅读数 324

评论数 0

Java多线程系列--“JUC线程池”02之 线程池原理(一)

概要 在上一章"Java多线程系列--“JUC线程池”01之 线程池架构"中,我们了解了线程池的架构。线程池的实现类是ThreadPoolExecutor类。本章,我们通过分析ThreadPoolExecutor类,来了解线程池的原理。内容包括: ThreadPoolE...

2016-05-08 13:24:55

阅读数 339

评论数 0

Java多线程系列目录

原文地址: http://www.cnblogs.com/skywang12345/p/java_threads_category.html Java多线程系列目录(共43篇)   最近,在研究Java多线程的内容目录,将其内容逐步整理并发布。 (一) 基础篇 0...

2016-05-08 12:23:58

阅读数 825

评论数 0

Java多线程系列--“JUC集合”02之 CopyOnWriteArrayList

出处:http://www.cnblogs.com/skywang12345/p/3498483.html 概要 本章是"JUC系列"的CopyOnWriteArrayList篇。接下来,会先对CopyOnWriteArrayList进行基本介绍,然后再说明它的原理,接...

2016-05-08 11:07:04

阅读数 1648

评论数 0

Java多线程系列--“JUC集合”01之 框架

概要 之前,在"Java 集合系列目录(Category)"中,讲解了Java集合包中的各个类。接下来,将展开对JUC包中的集合进行学习。在学习之前,先温习一下"Java集合包"。本章内容包括: Java集合包 JUC中的集合类 出处...

2016-05-08 11:03:14

阅读数 476

评论数 0

JAVA Concurrent包 中的并发集合类

我们平时写程序需要经常用到集合类,比如ArrayList、HashMap等,但是这些集合不能够实现并发运行机制,这样在服务器上运行时就会非常的消耗资源和浪费时间,并且对这些集合进行迭代的过程中不能进行操作,否则会出现错误,例如下面程序: [java]  public class Collect...

2016-05-03 14:00:43

阅读数 3505

评论数 0

Java 并发工具包 java.util.concurrent 大全

1. java.util.concurrent - Java 并发工具包 Java 5 添加了一个新的包到 Java 平台,java.util.concurrent 包。这个包包含有一系列能够让 Java 的并发编程变得更加简单轻松的类。在这个包被添加以前,你需要自己去动手实现自己的相关工具类。...

2016-05-03 13:54:43

阅读数 747

评论数 0

Java NIO详细介绍

不错的文章,推荐一下。 http://www.ibm.com/developerworks/cn/education/java/j-nio/j-nio.html java nio的io模型是同步非阻塞,这里的同步异步指的是真正io操作(数据内核态用户态的拷贝)是否需要进程参与。 而说ja...

2016-05-03 01:11:02

阅读数 224

评论数 0

淘宝2012校招技术笔试题

实现五:统计一个单词可重复的英文文件(假设4G)中每个单词出现的次数,把结果按照英文排序放入一个文件中。并能够检索特定单词的出现次数。由于文件过大,不重复单词总数有限,需要考虑到执行速度和内存使用情况。(淘宝笔试技术题) import java.io.File; import java.io.F...

2016-05-03 00:49:56

阅读数 334

评论数 0

Java fork join ForkJoinPool 用法例子

本例是把一个大的数组求和的计算的大任务分解到在小范围内求和的小任务,然后把这些小任务之和加起来就是所求之结果。  技术:JDK8.0, java fork-join模式下的RecursiveTask技术,override compute().  /** * Author: Bigtree * ...

2016-05-02 23:38:06

阅读数 1393

评论数 0

并发队列ConcurrentLinkedQueue和阻塞队列LinkedBlockingQueue用法

并发队列ConcurrentLinkedQueue和阻塞队列LinkedBlockingQueue用法 在Java多线程应用中,队列的使用率很高,多数生产消费模型的首选数据结构就是队列(先进先出)。Java提供的线程安全的Queue可以分为阻塞队列和非阻塞队列,其中阻塞队列的典型例子是Block...

2016-05-02 20:15:18

阅读数 312

评论数 0

ConcurrentLinkedQueue使用方法

它是一个基于链接节点的无界线程安全队列。该队列的元素遵循先进先出的原则。头是最先加入的,尾是最近加入的。 插入元素是追加到尾上。提取一个元素是从头提取。当多个线程共享访问一个公共 collection 时,ConcurrentLinkedQueue 是一个恰当的选择。该队列不允许null元素。 ...

2016-05-02 18:50:27

阅读数 579

评论数 0

Java并发包探秘 (一) ConcurrentLinkedQueue

本文是Java并发包探秘的第一篇,旨在介绍一下Java并发容器中用的一些思路和技巧,帮助大家更好的理解Java并发容器,让我们更好的使用并发容器打造更高效的程序。本人能力有限,错误难免。希望及时指出。 Java并发包中有很多精心设计的高并发容器。有ConcurrentHashMap、Co...

2016-05-02 18:45:38

阅读数 276

评论数 0

JAVA CAS原理深度分析

java.util.concurrent包完全建立在CAS之上的,没有CAS就不会有此包。可见CAS的重要性。   CAS CAS:Compare and Swap, 翻译成比较并交换。  java.util.concurrent包中借助CAS实现了区别于synchronouse同步锁的一...

2016-05-02 18:26:39

阅读数 310

评论数 0

ConcurrentLinkedQueue的实现原理分析

1.    引言 在并发编程中我们有时候需要使用线程安全的队列。如果我们要实现一个线程安全的队列有两种实现方式一种是使用阻塞算法,另一种是使用非阻塞算法。使用阻塞算法的队列可以用一个锁(入队和出队用同一把锁)或两个锁(入队和出队用不同的锁)等方式来实现,而非阻塞的实现方式则可以使用循环CAS的方...

2016-05-02 18:12:57

阅读数 299

评论数 0

JAVA 中无锁的线程安全整数 AtomicInteger介绍和使用

JAVA 中无锁的线程安全整数 AtomicInteger,一个提供原子操作的Integer的类。在Java语言中,++i和i++操作并不是线程安全的,在使用的时候, 不可避免的会用到synchronized关键字。而AtomicInteger则通过一种线程安全的加减操作接口。AtomicInte...

2016-05-02 13:36:52

阅读数 16698

评论数 3

TreeMap、HashMap、ConcurrentSkipListMap之性能比较

比较Java原生的 3种Map的效率。 1.  TreeMap 2.  HashMap 3.  ConcurrentSkipListMap 结果: 模拟150W以内海量数据的插入和查找,通过增加和查找两方面的性能测试,结果如下: Map类型 插入 查找(在100W数据量中) ...

2016-05-01 17:07:00

阅读数 1220

评论数 0

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