自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

零度的博客专栏

全栈式学徒长成记--工欲善其事必先利其器,不积小流无以成江海,不积跬步无以至千里!...

转载 Zookeeper(7)-Zookeeper的原理Paxos

原计划在介绍完zookeeper client之后就着手ZK Server的介绍,但是发现ZK Server所包含的内容实在太多,并不是简简单单一篇Blog就能搞定的。于是决定从基础搞起比较好。那么ZK Server最基础的东西是什么呢?我想应该是Paxos了。所以本文会介绍Paxos以及它在...

2016-09-30 14:39:17

阅读数 240

评论数 0

转载 Zookeeper(6)-Zookeeper 存储与client

当我写完Zookeeper leader选举后,准备看看Zookeeper的存储和处理客户端请求的时候发现,如果能看看Zookeeper的API是不是在理解后面的过程更好 些呢。Zookeeper的client是通过Zookeeper类提供的。前面曾经说过,Zookeeper给使用者提供的是一个类...

2016-09-30 14:21:48

阅读数 307

评论数 0

转载 Zookeeper(5)-Zookeeper leader选举

在上一篇文章中我们大致浏览了zookeeper的启动过程,并且提到在Zookeeper的启动过程中leader选举是非常重要而且最复杂的一个环节。那么什么是leader选举呢?zookeeper为什么需要leader选举呢?zookeeper的leader选举的过程又是什么样子的?本文的目的就是解...

2016-09-30 14:05:31

阅读数 277

评论数 0

转载 Zookeeper(4)-Zookeeper启动过程

在上一篇,我们了解了zookeeper最基本的配置,也从中了解一些配置的作用,那么这篇文章中,我们将介绍Zookeeper的启动过程,我们在了解启动过 程的时候还要回过头看看上一篇中各个配置参数在启动时的位置。Zookeeper的启动入口在org.apache.zookeeper.server....

2016-09-30 13:46:29

阅读数 308

评论数 0

转载 Zookeeper(3)-Zookeeper的配置

前面两篇文章介绍了Zookeeper是什么和可以干什么,那么接下来我们就实际的接触一下Zookeeper这个东西,看看具体如何使用,有个大体的感受,后面再描述某些地方的时候也能在大脑中有具体的印象。本文只关注分布式模式的zookeeper,因为这也是在生产环境的唯一部署方式,单机的zookeepe...

2016-09-30 11:18:44

阅读数 275

评论数 0

转载 Zookeeper(2)-Zookeeper可以干什么

在Zookeeper的官网上有这么一句话:ZooKeeper is a centralized service for maintaining configuration information, naming, providing distributed synchronization, and...

2016-09-30 11:03:47

阅读数 715

评论数 0

转载 Zookeeper(1)-Zookeeper是什么

Google的三篇论文影响了很多很多人,也影响了很多很多系统。这三篇论文一直是分布式领域传阅的经典。根据MapReduce,于是我们有了Hadoop;根据GFS,于是我们有了HDFS;根据BigTable,于是我们有了HBase。而在这三篇论文里都提及Google的一个lock service--...

2016-09-30 11:00:13

阅读数 358

评论数 1

转载 本地调试微信接口方法

使用国内的www.ngrok.cc并且有详细的视频使用教程     调试微信接口,例如调试微信消息收发接口,我们需要提供一个公网访问url,正常情况下,我们需要建立web工程,然后打包,不部署服务器,提供服务器外网访问url。但是想要将自己本地电脑上运行的项目发布到公网,让所有人都可以访问,...

2016-09-30 10:28:45

阅读数 1558

评论数 0

转载 HttpClient(4.5) 使用实例(微信API,网页授权Oauth2.0)

设置头信息: [java] view plain copy print? CloseableHttpClient httpClient = HttpClientBuilder.create().                  setKeepAliveStrategy(new D...

2016-09-30 10:25:49

阅读数 6828

评论数 1

转载 mysql并发控制与InnoDB锁问题

InnoDB与MyISAM的最大不同有两点:一是支持事务(TRANSACTION);二是采用了行级锁。行级锁与表级锁本来就有许多不同之处,另外,事务的引入也带来了一些新问题。下面我们先介绍一点背景知识,然后详细讨论InnoDB的锁问题。 一、背景知识 1.事务(Transaction)及其ACID...

2016-09-29 17:26:52

阅读数 330

评论数 0

转载 Mysql order by语句未使用索引的思考

今天早上查看网站,发现非常慢!进linux 用top查看,发现MySQL cpu到了100%。开始怀疑是mysql性能的问题,不会10万条数据就卡成这样吧?虽然我的linux是在服务器上放了个虚拟机,但也不至于10万条记录挂啊? 网上找了一大把文章,my.cnf也设置了,我虚拟机内存是2G,将...

2016-09-29 16:30:51

阅读数 5701

评论数 1

转载 MySQL的InnoDB和MyISAM区别

功能 MyISAM InnoDB   构成上的区别:  每个MyISAM在磁盘上存储成三个文件。第一个文件的名字以表的名字开始,扩展名指出文件类型。   .frm文件存储表定义。  数据文件的扩展名为.MYD (MYData)。  索引文件的扩展名是.MYI (MYIndex...

2016-09-29 16:09:11

阅读数 254

评论数 0

转载 MySQL函数总结

一、数学函数 求绝对值函数abs() select fweight-50,abs(fweight-50),abs(-5.23) from t_person; 求指数函数power() select fweight,power(fweight,-0.5),power(fweigh...

2016-09-29 16:01:09

阅读数 320

评论数 0

转载 mysql乐观锁总结与实践

上一篇文章谈到了MySQL悲观锁,但是悲观锁并不是适用于任何场景,它也有它存在的一些不足,因为悲观锁大多数情况下依靠数据库的锁机制实现,以保证操作最大程度的独占性。如果加锁的时间过长,其他用户长时间无法访问,影响了程序的并发访问性,同时这样对数据库性能开销影响也很大,特别是对长事务而言,这样的开销...

2016-09-29 15:16:40

阅读数 369

评论数 0

转载 mysql(for update)悲观锁总结与实践

悲观锁,正如其名,它指的是对数据被外界(包括本系统当前的其他事务,以及来自外部系统的事务处理)修改持保守态度,因此,在整个数据处理过程中,将数据处于锁定状态。悲观锁的实现,往往依靠数据库提供的锁机制(也只有数据库层提供的锁机制才能真正保证数据访问的排他性,否则,即使在本系统中实现了加锁机制,也无法...

2016-09-29 15:02:12

阅读数 13931

评论数 0

转载 mysql单列索引、多列索引的使用

数据库的索引可以加快查询速度,原因是索引使用特定的数据结构(B-Tree)对特定的列额外组织存放,加快存储引擎(索引是存储引擎实现)查找记录的速度。 索引优化是数据库优化的最重要手段。         如果查询语句使用索引(通常是where条件匹配索引)就会利用树的结构加快查找,索引会按值查找到...

2016-09-29 14:21:51

阅读数 16023

评论数 0

转载 Mysql使用索引可能失效的场景

1.WHERE字句的查询条件里有不等于号(WHERE column!=…),MYSQL将无法使用索引 2.类似地,如果WHERE字句的查询条件里使用了函数(如:WHERE DAY(column)=…),MYSQL将无法使用索引 3.在JOIN操作中(需要从多个数据表提取数据时),MYS...

2016-09-29 14:04:28

阅读数 11433

评论数 4

转载 MySQL日期数据类型、时间类型使用总结

MySQL 日期类型:日期格式、所占存储空间、日期范围 比较。  日期类型        存储空间       日期格式                                  日期范围  ------------        ---------        ----------...

2016-09-29 11:16:29

阅读数 292

评论数 0

转载 Hessian和Java反序列化问题小结

Hessian反序列化问题 众所周知,Hessian框架提供的序列化方式,在性能上要优于Java自己的序列化方式。他将对象序列化,生成的字节数组的数量要相对于Java自带的序列化方式要更简洁。 目前公司的一个项目中,有RPC调用的需要,这里我们使用了公司自己的开源RPC框架Dubbo作...

2016-09-29 10:30:21

阅读数 2003

评论数 0

翻译 Hessian实现远程调用

Hessian是一个轻量级的remoting on http工具,采用的是Binary RPC协议,所以它很适合于发送二进制数据,同时又具有防火墙穿透能力。Hessian一般是通过Web应用来提供服务,因此非常类似于平时我们用的WebService。只是它不使用SOAP协议,但相比webservi...

2016-09-29 10:03:26

阅读数 4724

评论数 2

转载 Redis分布式锁实现

Redis是一个key-value存储系统。和Memcached类似,但是解决了断电后数据完全丢失的情况,而且她支持更多无化的value类型,除了和string外,还支持lists(链表)、sets(集合)和zsets(有序集合)几种数据类型。这些数据类型都支持push/pop、add/remov...

2016-09-27 16:43:14

阅读数 431

评论数 0

转载 基于Redis的在线用户列表解决方案

前言:   由于项目需求,需要在集群环境下实现在线用户列表的功能,并依靠在线列表实现用户单一登陆(同一账户只能一处登陆)功能:   在单机环境下,在线列表的实现方案可以采用SessionListener来完成,当有Session创建和销毁的时候做相应的操作即可完成功能及将相应的Sess...

2016-09-27 16:18:28

阅读数 3518

评论数 0

转载 Redis中PipeLine使用

(一)简介  Redis客户端与Redis之间使用TCP协议进行连接,一个客户端可以通过一个socket连接发起多个请求命令。每个请求命令发出后client通常会阻塞并等待redis服务处理,redis处理完后请求命令后会将结果通过响应报文返回给client,因此当执行多条命令的时候都需要等待上...

2016-09-27 15:48:26

阅读数 6481

评论数 0

转载 Jedis使用总结【pipeline】【分布式的id生成器】【分布式锁【watch】【multi】】【redis分布式】

Jedis是redis的java版本的客户端实现。本文做个总结,主要分享如下内容:【pipeline】【分布式的id生成器】【分布式锁【watch】【multi】】【redis分布式】好了,一个一个来。  一、 Pipeline        官方的说明是:starts a pipel...

2016-09-27 15:27:51

阅读数 626

评论数 0

转载 Redis的Java客户端Jedis的八种调用方式(事务、管道、分布式)介绍

在这里对jedis关于事务、管道和分布式的调用方式做一个简单的介绍和对比: 一、普通同步方式 最简单和基础的调用方式, @Test public void test1Normal() {     Jedis jedis = new Jedis("localhost"...

2016-09-27 15:12:38

阅读数 271

评论数 0

转载 Web系统大规模并发—电商秒杀与抢购

电商的秒杀和抢购,对我们来说,都不是一个陌生的东西。然而,从技术的角度来说,这对于Web系统是一个巨大的考验。当一个Web系统,在一秒钟内收到数以万计甚至更多请求时,系统的优化和稳定至关重要。这次我们会关注秒杀和抢购的技术实现和优化,同时,从技术层面揭开,为什么我们总是不容易抢到火车票的原因?  ...

2016-09-27 14:47:03

阅读数 535

评论数 0

转载 Redis事务

Redis 提供的事务机制与传统的数据库事务有些不同,传统数据库事务必须维护以下特性:原子性(Atomicity),  一致性(Consistency),  隔离性(Isolation),  持久性(Durability),简称ACID。 我们逐项考察下 Redis 在事务的 ACID 上做出的...

2016-09-27 13:50:48

阅读数 247

评论数 0

转载 Redis:主从复制

1、主从复制              单台redis会遇到单点故障的问题,为了解决redis的高可用,主从复制应该是学习的第二个步骤。本文想达到的目的是,一个master带一个slave,而slave又带了一个slave,这样的好处是,当master故障后,直接把slaver1改为maste...

2016-09-22 17:40:33

阅读数 276

评论数 0

转载 redis持久化、主从复制及数据备份

现在在项目里已经大量使用redis了,为了提高redis的性能和可靠性我们需要知道和做到以下几件事: 常用内存优化手段与参数 redis的性能如何是完全依赖于内存的,所以我们需要知道如何来控制和节省内存。 首先最重要的一点是不要开启Redis的VM选项,即虚拟内存功能,这个本来是...

2016-09-22 17:18:59

阅读数 481

评论数 0

转载 Redis基本操作(命令+java)

一、server端安装   1、下载 https://github.com/MSOpenTech/redis 可看到当前可下载版本:redis2.6              下载windows平台文件:解压后,选择当前64位win7系统对应的版本:         2、安装     ...

2016-09-22 16:39:30

阅读数 391

评论数 0

转载 Java垃圾回收机制

说到垃圾回收(Garbage Collection,GC),很多人就会自然而然地把它和Java联系起来。在Java中,程序员不需要去关心内存动态分配和垃圾回收的问题,这一切都交给了JVM来处理。顾名思义,垃圾回收就是释放垃圾占用的空间,那么在Java中,什么样的对象会被认定为“垃圾”?那么当一些对...

2016-09-22 16:08:40

阅读数 261

评论数 0

转载 在JavaScript文件中读取properties文件的方法

假设有JavaScript文件叫做:readproperties.js,这个文件需要读取config.properties这个配置文件,步骤如下: 1、  下载插件jquery.i18n.properties-min-1.0.9.js,在eclipse中放到合适的目录下。由于需要jQuery的支...

2016-09-21 17:46:13

阅读数 31478

评论数 4

转载 JS读取本地文件及目录的方法

Javascript是网页制作中离不开的脚本语言,依靠它,一个网页的内容才生动活泼、富有朝气。但也许你还没有发现并应用它的一些更高级的功能吧?比如,对文件和文件夹进行读、写和删除,就象在VB、VC等高级语言中经常做的工作一样。怎么样,你是否需要了解这方面的知识?那就请跟我来,本文将详细描述如何使用...

2016-09-21 17:13:38

阅读数 15776

评论数 3

转载 JAVA垃圾收集器与内存分配策略

引言 垃圾收集技术并不是Java语言首创的,1960年诞生于MIT的Lisp是第一门真正使用内存动态分配和垃圾收集技术的语言。垃圾收集技术需要考虑的三个问题是:哪些内存需要回收? 什么时候回收? 如何回收? http://segmentfault.com/a/1190000002931555 ...

2016-09-21 16:18:31

阅读数 315

评论数 0

转载 Java内存区域和GC机制

Java垃圾回收概况   Java GC(Garbage Collection,垃圾收集,垃圾回收)机制,是Java与C++/C的主要区别之一,作为Java开发者,一般不需要专门编写内存回收和垃圾清理代 码,对内存泄露和溢出的问题,也不需要像C程序员那样战战兢兢。这是因为在Java虚拟机中,...

2016-09-21 16:05:46

阅读数 351

评论数 0

转载 聊聊高并发(专栏)

http://blog.csdn.net/column/details/loveconcurrency.html

2016-09-20 11:06:14

阅读数 1095

评论数 0

转载 聊聊JVM:相对全面的GC总结(专栏)

http://blog.csdn.net/column/details/talk-about-jvm.html

2016-09-20 11:03:57

阅读数 364

评论数 0

转载 单元测试之测试整合框架Unitils

引述:程序测试对保障应用程序正确性而言,其重要性怎么样强调都不为过。JUnit是必须事先掌握的测试框架,大多数测试框架和测试工具都在此基础上扩展而来,Spring对测试所提供的帮助类也是在JUnit的基础上进行演化的。直接使用JUnit测试基于Spring的应用存在诸多不便,不可避免地需要将大量的...

2016-09-18 14:52:44

阅读数 628

评论数 0

转载 JMeter压力测试总结

Apache JMeter是Apache组织开发的基于Java的压力测试工具。用于对软件做压力测试,相比其他HTTP测试工具,JMeter最主要的特点在于扩展性强。JMeter能够自动扫描其lib/ext子目录下.jar文件中的插件,并且将其装载到内存,让用户通过不同的菜单调用。并且能自动生成压力...

2016-09-18 14:28:51

阅读数 1857

评论数 0

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