自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(38)
  • 资源 (6)
  • 收藏
  • 关注

转载 动态规划

http://www.hawstein.com/posts/dp-novice-to-advanced.html

2017-09-24 14:20:07 161

转载 MySQL优化系列(八)--锁机制超详细解析(锁分类、事务并发、引擎并发控制)

当一个系统访问量上来的时候,不只是数据库性能瓶颈问题了,数据库数据安全也会浮现,这时候合理使用数据库锁机制就显得异常重要了。

2017-09-21 21:56:54 904

转载 聊聊Oracle数据库的锁机制

锁定的概念:锁定是数据库用来控制共享资源并发布访问的机制。在多用户环境下,多个用户可同时访问相同的数据。Oracle 提供锁以确保在多用户环境下数据的完整性和一致性。在提交或回滚事务之前,Oracle 会锁定正被修改的数据。

2017-09-21 20:34:26 847

转载 JVM&GC Full Coverage

这篇文章是我之前翻阅了不少的书籍以及从网络上收集的一些资料的整理,因此不免有一些不准确的地方,同时不同JDK版本的差异也比较大,因此该文章更适合中、高级工程师阅读,做到名词解释与入门,在大神面前就是献丑了。不过文中一些JVM参数示例都是实际项目里调优的结果,还是经受过实战考验的。

2017-09-12 23:54:25 367

转载 java动态代理(JDK和cglib)

JAVA的动态代理 代理模式 代理模式是常用的java设计模式,他的特征是代理类与委托类有同样的接口,代理类主要负责为委托类预处理消息、过滤消息、把消息转发给委托类,以及事后处理消息等。代理类与委托类之间通常会存在关联关系,一个代理类的对象与一个委托类的对象关联

2017-09-11 23:44:24 158

转载 zookeeper简介

Zookeeper 分布式服务框架是Apache Hadoop 的一个子项目,它主要是用来解决分布式应用中经常遇到的一些数据管理问题,如:统一命名服务、状态同步服务、集群管理、分布式应用配置项的管理等

2017-09-11 23:07:37 312

转载 你应该知道的RPC原理

在学校期间大家都写过不少程序,比如写个hello world服务类,然后本地调用下,如下所示。这些程序的特点是服务消费方和服务提供方是本地调用关系。   而一旦踏入公司尤其是大型互联网公司就会发现,公司的系统都由成千上万大大小小的服务组成,各服务部署在不同的机器上,由不同的团队负责

2017-09-11 22:13:27 221

转载 高并发系统之限流特技

在开发高并发系统时有三把利器用来保护系统:缓存、降级和限流。缓存的目的是提升系统访问速度和增大系统能处理的容量,可谓是抗高并发流量的银弹;而降级是当服务出问题或者影响到核心流程的性能则需要暂时屏蔽掉,待高峰或者问题解决后再打开;而有些场景并不能用缓存和降级来解决,比如稀缺资源(秒杀、抢购)、写服务(如评论、下单)、频繁的复杂查询(评论的最后几页),因此需有一种手段来限制这些场景的并发/请求量,即限流

2017-09-11 21:43:58 190

转载 Hadoop核心之HDFS

概述:HDFS即Hadoop Distributed File System分布式文件系统,它的设计目标是把超大数据集存储到分布在网络中的多台普通商用计算机上,并且能够提供高可靠性和高吞吐量的服务。分布式文件系统要比普通磁盘文件系统复杂,因为它要引入网络编程,分布式文件系统要容忍节点故障也是一个很大的挑战。

2017-09-10 22:04:39 439

转载 分布式事务与一致性算法Paxos & raft & zab

分布式事务与一致性算法Paxos & raft & zab

2017-09-09 23:38:43 330

转载 如何用消息系统避免分布式事务?

前阵子从支付宝转账1万块钱到余额宝,这是日常生活的一件普通小事,但作为互联网研发人员的职业病,我就思考支付宝扣除1万之后,如果系统挂掉怎么办,这时余额宝账户并没有增加1万,数据就会出现不一致状况了。上述场景在各个类型的系统中都能找到相似影子,比如在电商系统中,当有用户下单后,除了在订单表插入一条记录外,对应商品表的这个

2017-09-04 00:04:03 181

转载 设计模式(四)

其实每个设计模式都是很重要的一种思想,看上去很熟,其实是因为我们在学到的东西中都有涉及,尽管有时我们并不知道,其实在Java本身的设计之中处处都有体现,像AWT、JDBC、集合类、IO管道或者是Web框架,里面设计模式无处不在。

2017-09-03 22:16:56 129

转载 设计模式(三)

本章会讲到第三种设计模式——行为型模式,共11种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。

2017-09-03 22:14:27 150

转载 设计模式(二)

我将讲下7种结构型模式:适配器模式、装饰模式、代理模式、外观模式、桥接模式、组合模式、享元模式。

2017-09-03 22:12:19 134

转载 设计模式(一)

设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。 毫无疑问,设计模式于己于他人于系统都是多赢的,设计模式使代码编制真正工程化,设计模式是软件工程的基石,如同大厦的一块块砖石一样。

2017-09-03 22:08:33 168

转载 【ThreadLocal】深入JDK源码之ThreadLocal类

ThreadLocal其实就是一个工具类,用来操作线程局部变量,ThreadLocal 实例通常是类中的 private static 字段。它们希望将状态与某一个线程(例如,用户 ID 或事务 ID)相关联。 例如,以下类生成对每个线程唯一的局部标识符。线程 ID 是在第一次调用UniqueThreadIdGenerator.getCurrentThreadId()时分配的,在后续调用中不会更改。

2017-08-28 23:39:22 271

转载 关于分布式事务、两阶段提交协议、三阶提交协议

随着大型网站的各种高并发访问、海量数据处理等场景越来越多,如何实现网站的高可用、易伸缩、可扩展、安全等目标就显得越来越重要。为了解决这样一系列问题,大型网站的架构也在不断发展。提高大型网站的高可用架构,不得不提的就是分布式。在《分布式系统的一致性探讨》一文中主要介绍了分布式系统中存在的一致性问

2017-08-27 23:16:56 239

转载 spring容器及bean加载机制源码解读

spring的容器加载机制分为提前加载和运行时动态加载,本文通过源码解读容器加载机制和bean加载机制。

2017-08-27 22:23:53 292

转载 攻破JAVA NIO技术壁垒

现在使用NIO的场景越来越多,很多网上的技术框架或多或少的使用NIO技术,譬如Tomcat,Jetty。学习和掌握NIO技术已经不是一个Java攻城狮的加分技能,而是一个必备技能。

2017-08-27 22:03:55 169

转载 一致性hash算法 - consistent hashing

consistent hashing 算法早在 1997 年就在论文 Consistent hashing and random trees 中被提出,目前在 cache 系统中应用越来越广泛;

2017-08-27 21:14:08 147

转载 HTTP协议详解

当今web程序的开发技术真是百家争鸣,ASP.NET, PHP, JSP,Perl, AJAX 等等。 无论Web技术在未来如何发展,理解Web程序之间通信的基本协议相当重要, 因为它让我们理解了Web应用程序的内部工作. 本文将对HTTP协议进行详细的实例讲解,内容较多,希望大家耐心看。也希望对大家的开发工作或者测试工作有所帮助。

2017-08-27 20:51:04 190

转载 如何在生产环境使用Btrace进行调试

BTrace是sun公司推出的一款Java 动态、安全追踪(监控)工具,可以在不用重启的情况下监控系统运行情况,方便的获取程序运行时的数据信息,如方法参数、返回值、全局变量和堆栈信息等,并且做到最少的侵入,占用最少的系统资源

2017-08-26 22:42:09 174

转载 SOAP webserivce 和 RESTful webservice 对比及区别

SOAP webserivce 和 RESTful webservice 对比及区别

2017-08-26 21:53:19 236

转载 kafka数据可靠性深度解读

Kafka凭借着自身的优势,越来越受到互联网企业的青睐,唯品会也采用Kafka作为其内部核心消息引擎之一。Kafka作为一个商业级消息中间件,消息可靠性的重要性可想而知。如何确保消息的精确传输?如何确保消息的准确存储?如何确保消息的正确消费?这些都是需要考虑的问题。本文首先从Kafka的架构着手,先了解下Kafka的基本原理,然后通过对kakfa的存储机制、复制原理、同步原理、可靠性和持久性保证等等一步步对其可靠性进

2017-08-25 23:51:26 365

转载 Java多线程调度器(ScheduledThreadPoolExecutor)

本文对这个java本身的线程池的调度器做一个简单扩展,多线程调度器(ScheduledThreadPoolExecutor)

2017-08-25 23:38:37 389

转载 Java线程池架构原理和源码解析(ThreadPoolExecutor)

Java线程池架构原理和源码解析(ThreadPoolExecutor)

2017-08-25 23:32:52 150

转载 Java常用排序算法

分类:1)插入排序(直接插入排序、希尔排序)2)交换排序(冒泡排序、快速排序)3)选择排序(直接选择排序、堆排序)4)归并排序5)分配排序(基数排序)所需辅助空间最多:归并排序所需辅助空间最少:堆排序平均速度最快:快速排序不稳定:快速排序,希尔排序,堆排序。

2017-08-24 23:56:15 123

转载 图解集合6:LinkedHashMap

大多数情况下,只要不涉及线程安全问题,Map基本都可以使用HashMap,不过HashMap有一个问题,就是迭代HashMap的顺序并不是HashMap放置的顺序,也就是无序。HashMap的这一缺点往往会带来困扰,因为有些场景,我们期待一个有序的Map。这个时候,LinkedHashMap就闪亮登场了,它虽然增加了时间和空间上的开销,但是通过维护一个运行于所有条目的双向链表,LinkedHashMap保证了元素

2017-08-24 23:40:39 125

转载 Java 8系列之重新认识HashMap

HashMap是Java程序员使用频率最高的用于映射(键值对)处理的数据类型。随着JDK(Java Developmet Kit)版本的更新,JDK1.8对HashMap底层的实现进行了优化,例如引入红黑树的数据结构和扩容的优化等。本文结合JDK1.7和JDK1.8的区别,深入探讨HashMap的结构实现和功能原理。

2017-08-24 23:29:14 140

转载 JAVA8 十大新特性详解

本教程将Java8的新特新逐一列出,并将使用简单的代码示例来指导你如何使用默认接口方法,lambda表达式,方法引用以及多重Annotation,之后你将会学到最新的API上的改进,比如流,函数式接口,Map以及全新的日期API

2017-08-24 22:17:18 150

转载 cookie和session的区别与联系

对于许多人来说,都知道的是,cookie是存储在客户端的,可以用来放需要长期使用的内容,例如用户密码、用户账户等等,服务器是可以获取到cookie的内容的;而session则是存储在服务器端,通过唯一的session_id来区别用户,用于保存用户的登录状态和请求等,客户是不能获取到其内容的。  这对于许多人来说都是比较基础的内容,也是表现形式上的区别,在这里我们深入的了解一下两者。

2017-08-23 23:29:49 275

转载 ConcurrentHashMap原理分析

ConcurrentHashMap实现的细节

2017-08-23 23:07:38 155

转载 HashMap实现原理分析

HashMap的数据结构HashMap的实现原理HashMap源码分析

2017-08-23 22:46:00 461

转载 再谈AbstractQueuedSynchronizer3:基于AbstractQueuedSynchronizer的并发类实现

基于AbstractQueuedSynchronizer的并发类是如何实现的。

2017-08-22 22:47:57 126

转载 再谈AbstractQueuedSynchronizer2:共享模式与基于Condition的等待/通知机制实现

AbstractQueuedSynchronizer共享模式acquire的实现流程。

2017-08-22 22:41:39 150

转载 再谈AbstractQueuedSynchronizer1:独占模式

关于AbstractQueuedSynchronizer

2017-08-22 22:35:05 187

转载 Java中的事务——JDBC事务和JTA事务

我的博客中曾经关于事务有过很多讨论,之前的事务介绍基本都是数据库层面的事务,本文来介绍一下J2EE中和事务相关的内容,在阅读本文之前,希望读者对分布式有一定的了解。关于事务的基础知识这里不再详细介绍,想要了解的同学可以在我的博客中阅读相关文章。Java事务的类型有三种:JDBC事务、JTA(Java Transaction API)事务、容器事务。

2017-08-22 22:22:12 153

转载 你应该知道的JAVA面试题

经常面试一些候选人,整理了下我面试使用的题目,陆陆续续整理出来的题目很多,所以每次会抽一部分来问。答案会在后面的文章中逐渐发布出来。

2017-08-22 21:58:59 762 1

struts2 in action 源码

struts2 in action 源码

2012-10-17

Windows核心编程(21-29章) pdf

Windows核心编程(21-29章),因为没有权限传大附件,只能分开传了。但是能单独解压。

2011-01-06

Windows核心编程(11-20章) pdf

Windows核心编程(11-20章),因为没有权限传大附件,只能分开传了。但是能单独解压。

2011-01-06

Windows核心编程(1-10章) pdf

Windows核心编程(1-10章),可以单独解压 。因为没有权限传大附件,只能分开来传了。

2011-01-06

C语言深度剖析(完美版)

C语言深度解剖---解开程序员面试笔试的秘密。 以含金量勇敢挑战国内外同类书籍 陈正冲 编著

2011-01-06

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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