自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(159)
  • 资源 (19)
  • 收藏
  • 关注

转载 CAP 定理的含义

转自:http://www.ruanyifeng.com/blog/2018/07/cap.html分布式系统(distributed system)正变得越来越重要,大型网站几乎都是分布式的。分布式系统的最大难点,就是各个节点的状态如何同步。CAP 定理是这方面的基本定理,也是理解分布式系统的起点。本文介绍该定理。它其实很好懂,而且是显而易见的。下面的内容主要参考了 Michael ...

2019-04-09 16:58:45 363

转载 Java分析系列之六:JVM Heap Dump(堆转储文件)的生成和MAT的使用

前面的文章详细讲述了分析Thread Dump文件,实际在处理Java内存泄漏问题的时候,还需要分析JVM堆转储文件来进行定位。目录 [隐藏]1 JVM Heap Dump(堆转储文件)的生成 1.1 使用 jmap 命令生成 1.2 使用 JConsole 生成 1.3 在JVM中增加参数生成 2 常见的Heap Dump文件分析工具 2.1 jhat 2.2 E...

2018-11-09 09:53:35 2764

转载 Java分析系列之五:常见的Thread Dump日志案例分析

我们在上篇文章中详细描述了Thread Dump中Native Thread和JVM Thread线程的各种状态及描述,今天总结分析的一些原则,并详细列举一些案例进行说明。目录 [隐藏]1 症状及解决方案 1.1 CPU占用率很高,响应很慢 1.2 CPU占用率不高,但响应很慢 2 关注点概况 2.1 系统线程状态为 deadlock 2.2 系统线程状态为 waiti...

2018-11-09 09:50:16 1047

转载 Java分析系列之四:jstack生成的Thread Dump日志线程状态

前面文章中只分析了Thread Dump日志文件的结构,今天针对日志文件中 Java EE middleware, third party & custom application Threads 部分线程的状态进行详细的分析。目录 [隐藏]1 Thread Dump日志的线程信息 2 系统线程状态 (Native Thread Status) 2.1 deadlock 2...

2018-11-09 09:47:59 1175

转载 Java分析系列之三:jstat命令的使用及VM Thread分析

前面提到了一个使用jstack的shell脚本,通过命令可以很快地定位到指定线程对应的堆栈信息。目录 [隐藏]1 使用jstat命令 2 JVM内存模型 3 JVM内存参数设置 3.1 堆内存设置 3.2 非堆内存设置 4 日志分析使用jstat命令当服务器CPU100%的时候,通过定位占用资源最大的线程定位到 VM Thread:"VM Thread" pri...

2018-11-09 09:44:09 1028

转载 分析系列之二:jstack生成的Thread Dump日志结构解析

上一篇文章讲述了如何使用jstack生成日志文件,这篇文章首先对Thread Dump日志文件的结构进行分析。目录 [隐藏]1 第一部分:Full thread dump identifier 2 第二部分:Java EE middleware, third party & custom application Threads 3 第三部分:HotSpot VM Thread...

2018-11-08 16:23:33 1494

转载 分析系列之一:使用jstack定位线程堆栈信息

基本概念在对Java内存泄漏进行分析的时候,需要对jvm运行期间的内存占用、线程执行等情况进行记录的dump文件,常用的主要有thread dump和heap dump。thread dump 主要记录JVM在某一时刻各个线程执行的情况,以栈的形式显示,是一个文本文件。通过对thread dump文件可以分析出程序的问题出现在什么地方,从而定位具体的代码然后进行修正。thread dump...

2018-11-08 16:17:42 1952

原创 OLTP和OLAP

数据处理大致可以分成两大类:联机事务处理OLTP(on-line transaction processing)         OLTP是传统的关系型数据库的主要应用,主要是基本的、日常的事务处理,例如银行交易,资金从A帐户转帐到B帐户,这整个过程就是一次交易事务。如果过程中有任何系统错误,交易会回滚A帐户中的金额都回恢到操作前的状态,这就是OLTP的操作。在OLTP场景中用户并发操作量会...

2018-10-13 14:01:41 419

转载 深入理解Eureka自我保护机制

目录         Eureka自我保护机制​自我保护开启条件自我保护阀值的计算自我保护阀值的计算公式自我保护逻辑自我保护开关开发环境配置 Eureka注册中心中各个Eureka-Server节点都是平等的,没有ZK中角色的概念,即使N-1个节点挂掉也不会影响其他节点的正常运行。Eureka-Server可以很好的应对因网络故障导致部分节点失联的情况,而不会像...

2018-10-11 10:58:45 1636

原创 MongDB连接池参数serverSelectionTimeout、connectTimeout、maxWaitTime和socketTimeout介绍

MongDB Client请求查询数据,需要包括五个阶段:MongoDB Client需要找到可用的MongoDB Server MongoDB Client需要和MongoDB Server建立(new)Connection 应用程序处理线程从Connection Pool中获取Connection 数据传输(获取连接后,进行Socket通信,获取数据) 断开Collection那...

2018-10-10 14:12:12 12540 3

转载 Git 分支 - 分支的新建与合并

转:https://git-scm.com/book/zh/v1/Git-%E5%88%86%E6%94%AF-%E5%88%86%E6%94%AF%E7%9A%84%E6%96%B0%E5%BB%BA%E4%B8%8E%E5%90%88%E5%B9%B6   Git 分支 - 分支的新建与合并分支的新建与合并现在让我们来看一个简单的分支与合并的例子,实际工作中大体也会用到...

2018-09-13 19:34:48 203

转载 Maven build之pom.xml文件中的Build配置

前言 在阅读详细文档之前我们先来谈谈我自己对maven的一些个人理解,以助于从整体大局上了解maven。maven是什么,用通俗的话来将,maven能帮你构建工程,管理jar包,编译代码,还能帮你自动运行单元测试,打包,生成报表,甚至能帮你部署项目 使用maven构建的项目均可以直接使用maven build完成项目的编译测试打包,无需额外配置 Maven是通过pom.xml来执行...

2018-09-03 14:06:37 2949

转载 maven的资源过滤filters

maven的资源过滤maven的过滤资源需要结合maven的2个定义才能实现,分别是:profile resources下面分开来做介绍。profileprofile可以让我们定义一系列的配置信息,然后指定其激活条件。这样我们就可以定义多个profile,然后每个profile对应不同的激活条件和配置信息,从而达到不同环境使用不同配置信息的效果。需要掌握profile的定义以及...

2018-09-03 11:39:30 4062

转载 使用 Maven Profile 和 Filtering 打各种环境的包

每个项目都会有多套运行环境(开发,测试,正式等等),不同的环境配置也不尽相同(如jdbc.url),借助Jenkins和自动部署提供的便利,我们可以把不同环境的配置文件单独抽离出来,打完包后用对应环境的配置文件替换打包后的文件,其实maven已经给我们提供了替换方案:profile + filteringFilteringFiltering 是 maven 的 resource 插件 提供...

2018-09-03 11:17:27 273

原创 Java系统属性和环境变量

1 什么是环境变量       境变量分为系统环境变量和用户环境变量。  所说的环境变量是指系统环境变量,对所有用户起作用,而用户环境变量只对当前用户起作用。  例如要用java,那么把java的bin目录加入到path变量下面,那么它就是系统环境变量,所用用户登陆,在命令行输入java都会有java的帮助信息出来。而如果在某个用户的变量下面新建一个变量,那么它就只对这个用户有用,当以其他...

2018-08-31 14:58:24 4548

原创 maven setting.xml文件详解

settings.xml文件中的<settings />包含一系列用于配置Maven执行方式的元素,如本地仓库位置、远程仓库服务器和身份验证信息等。  settings.xml文件一般位于以下两个位置:${maven.home}/conf/settings.xml  ————global settings ${user.home}/.m2/settings.xml(没有改变se...

2018-08-31 10:30:44 465

转载 Maven"约定优于配置"策略

maven的配置文件看似很复杂,其实只需要根据项目的实际背景,设置个别的几个配置项而已。maven有自己的一套默认配置,使用者除非必要,并不需要去修改那些约定内容。这就是所谓的“约定优于配置”。 文件目录maven默认的文件存放结构如下:每一个阶段的任务都知道怎么正确完成自己的工作,比如compile任务就知道从src/main/java下编译所有的java文件,并把它的输出c...

2018-08-31 10:29:02 349

原创 POM dependencies与dependencyManagement区别

官网对dependencyManagement说明如下:dependencyManagement: is used by POMs to help manage dependency information across all of its children. If the my-parent project uses dependencyManagement to define a d...

2018-08-31 10:23:24 1347

原创 pom.xml文件中dependency中optional属性

当project-A 依赖project-B,  project-B 依赖project-D时What if we dont want project D and its dependencies to be added to Project A's classpath because we know some of Project-D's dependencies (maybe Projec...

2018-08-30 17:51:25 1069

转载 Maven配置setting.xml值Mirror与Repository区别

1 Repository(仓库) 1.1 Maven仓库主要有2种:remote repository:相当于公共的仓库,大家都能访问到,一般可以用URL的形式访问 local repository:存放在本地磁盘的一个文件夹,例如,windows上默认是C:\Users\{用户名}\.m2\repository目录1.2 Remote Repository主要有3种:中央...

2018-08-30 17:23:47 3646

转载 where,having与 group by连用的区别

where,having与 group by连用的区别select 列a,聚合函数 from 表名 where 过滤条件 group by 列a having 过滤条件group by 字句也和where条件语句结合在一起使用。当结合在一起时,where在前,group by 在后。即先对select xx from xx的记录集合用where进行筛选,然后再使用group by 对筛选后...

2018-07-27 14:34:30 523

转载 Kafka设计解析(一)- Kafka背景及架构介绍

转自:http://www.jasongj.com/2015/03/10/KafkaColumn1/

2018-04-03 17:04:03 448

转载 kafka中partition和消费者对应关系

转自:https://www.jianshu.com/p/6233d5341dfe1个partition只能被同组的一个consumer消费,同组的consumer则起到均衡效果消费者多于partitiontopic: test 只有一个partition创建一个topic——test,bin/kafka-topics.sh --create --zookeeper localhost:2181 ...

2018-04-03 10:20:24 6682 1

原创 vi命令示例大全

进入vivi filename # 打开或新建文件,并将光标置于第一行首vi +n filename # 打开文件,并将光标置于第n行首vi + filename # 打开文件,并将光标置于最后一行首vi +/pattern filename # 打开文件,并将光标置于第一个与pattern匹配的串处vi -r filename # 在上

2018-01-05 10:49:15 293

原创 vi编辑的文件中查找定位内容

在vi命令打开的文件中查找字符串通过vi打开文件apple.log    比如查找字符串: Requesting输入/Requesting 回车就会跳到第一个匹配的地方

2018-01-05 10:42:44 8106

原创 vi命令跳到第一行和最后一行的快捷键

用vi命令打开文件直接跳到最后一行的方法如下: :$ 跳到文件最后一行 :0或:1 跳到文件第一行        说明:+ n 就可以定位到任意行n, 比如:40就是定位到第40行或 另外一组命令:  gg(连续按两次键盘键g) 跳到文件第一行      Shift + g 跳到文件最后一行

2018-01-05 10:18:54 30975 1

原创 Linux查找文件内容(grep)

grep是Linux命令行下常用于查找过滤文本文件内容的命令。最简单的用法是:grep apple fruitlist.txt   在fruitlist.txt文件中找出包含apple的内容。如果想忽略大小写,可以用-i参数:grep -i apple fruitlist.txt如果想搜索目录里所有文件,包括子目录的话,并且在结果中显示行号,可以用以下命令:grep -

2018-01-05 10:13:18 36307

转载 Spark 共享变量(广播变量和累加器)

共享变量通常情况下,当向Spark操作(如map,reduce)传递一个函数时,它会在一个远程集群节点上执行,它会使用函数中所有变量的副本。这些变量被复制到所有的机器上,远程机器上并没有被更新的变量会向驱动程序回传。在任务之间使用通用的,支持读写的共享变量是低效的。尽管如此,Spark提供了两种有限类型的共享变量,广播变量和累加器。广播变量广播变量允许程序员将一

2018-01-03 11:19:14 445

转载 Spark累加器(Accumulator)陷阱及解决办法

程序中可能会使用到spark提供的累加器功能,可是如果你不了解它的运行机制,有时候会带来一些负面作用(错误的累加结果)。下文会介绍产生错误结果的原因,并提供一种解决办法。Accumulator简介Accumulator是spark提供的累加器,顾名思义,该变量只能够增加。 只有driver能获取到Accumulator的值(使用value方法),Task只能对其做增

2018-01-03 11:02:44 1212

转载 对象序列化——java原生序列化、Kryo序列化性能比较和Hessian序列化

什么是序列化以特定的方式对类实例的瞬时状态进行编码保存的一种操作,叫做对象序列化。就是将对象的这个时刻的各种属性各种值按照一定的规则变成二进制流,然后如果传输到别的jvm中,jvm可以按照规则在将二进制流反序列化成对应的对象,并且对象里面还有当时的数据和各种属性。 序列化的作用主要作用就是将序列化后的对象进行网络传输,由此可以实现对象调用,分布式对象,等各种功能。 序列化的指标1、对象序列化后的大

2018-01-02 15:11:25 3829

原创 linux 守护进程与用&结尾的后台运行程序有什么区别

默认情况下,进程是在前台运行的,这时就把shell给占据了,我们无法进行其它操作。对于那些没有交互的进程,很多时候,我们希望将其在后台启动,可以在启动参数的时候加一个'&'实现这个目的:zsm@wilburUbun:~/application/zookeeper-3.4.8/bin$ ./zkServer.sh start &[1] 21304zsm@wilburUbun:~/ap

2017-12-29 16:02:15 5925

转载 ngRoute 和 ui.router 的使用方法和区别

在单页面应用中要把各个分散的视图给组织起来是通过路由机制来实现的。本文主要对 AngularJS 原生的 ngRoute 路由模块和第三方路由模块 ui.router 的用法进行简单介绍,并做一个对比。ngRoute使用方法1) 引入 angular-route lib无论是 ngRoute 还是 ui.router ,作为框架额外的附加功能,都必须以 模块依赖 的形式被引入。

2017-03-06 15:21:08 1917

转载 AngularJS中的依赖注入 二

3种创建自定义服务的方式。 FactoryServiceProvider大家应该知道,AngularJS是后台人员在工作之余发明的,他主要应用了后台早就存在的分层思想。所以我们得了解下分层的作用,如果你是前端人员不了解什么是分层,那么你最好问问你后台的小伙伴。dao层:就是Model层,在后台时,这一层的作用,就要是写与数据库交互数据的一层,在angularJS里就主要是写aj

2017-03-06 14:21:20 321

转载 AngularJS中的依赖注入 一

Provider服务($provide)$provide服务负责告诉Angular如何创造一个新的可注入的东西:即服务(service)。服务会被叫做provider的东西来定义,你可以使用$provide来创建一个provider。你需要使用$provide中的provider方法来定义一个provider,同时你也可以通过要求改服务被注入到一个应用的config函数中来获得$provide

2017-03-06 14:05:52 395

转载 AngularJS的依赖注入方式

在定义controller,module,service,and directive时有两种方式,方式一:var myModule = angular.module('myApp', []); myModule.controller('myCtrl', ['$scope', 'Project', function($scope, Project) { }]);

2017-03-06 10:03:43 311

转载 GIT介绍

转:http://www.open-open.com/lib/view/open1328069889514.html#articleHeader10

2017-03-05 18:33:04 226

转载 数字证书原理,公钥私钥加密原理

文中首先解释了加密解密的一些基础知识和概念,然后通过一个加密通信过程的例子说明了加密算法的作用,以及数字证书的出现所起的作用。接着对数字证书做一个详细的解释,并讨论一下windows中数字证书的管理,最后演示使用makecert生成数字证书。如果发现文中有错误的地方,或者有什么地方说得不够清楚,欢迎指出! 1、基础知识      这部分内容主要解释一些概念和术语,最好是先理

2017-02-14 15:26:37 482

转载 HTTPS原理解析

一 前言  在说HTTPS之前先说说什么是HTTP,HTTP就是我们平时浏览网页时候使用的一种协议。HTTP协议传输的数据都是未加密的,也就是明文的,因此使用HTTP协议传输隐私信息非常不安全。为了保证这些隐私数据能加密传输,于是网景公司设计了SSL(Secure Sockets Layer)协议用于对HTTP协议传输的数据进行加密,从而就诞生了HTTPS。SSL目前的版本是3.0,被IETF

2017-02-14 15:04:49 314

转载 网站跨站点单点登录

昨天和几位朋友探讨到了这个话题,发现虽然单点登录,或者叫做独立的passport登录虽然已经有了很多实现方法,但是能真正了解并实现的人却并不太多,所以些下此文,希望从原理到实现,能让大家了解的多一些至于什么是单点登录,举个例子,如果你登录了msn messenger,访问hotmail邮件就不用在此登录。一般单点登录都需要有一个独立的登录站点,一般具有独立的域名,专门的进行注册,登录,

2017-02-07 15:42:59 1167

转载 Java堆内存_Young Gener_Old Generation_新生代和老年代

使用JDK8Java 中的堆是 JVM 所管理的最大的一块内存空间,主要用于存放各种类的实例对象。在 Java 中,堆被划分成两个不同的区域:新生代 ( Young )、老年代 ( Old )。新生代 ( Young ) 又被划分为三个区域:Eden、From Survivor、To Survivor。这样划分的目的是为了使 JVM 能够更好的管理堆内存中的对象,包括内存的分配以及回收

2017-02-06 22:58:32 5245 2

精通Python网络爬虫 核心技术、框架与项目实战 韦玮.pdf

精通Python网络爬虫 核心技术、框架与项目实战 ,韦玮.pdf

2017-12-26

深入浅出设计模式

深入浅出设计模式

2014-09-02

深入理解计算机网络 课件

计算机网络

2014-08-26

JSChart demo

JSchart js JSchart js JSchart js

2014-06-22

hibernate-3.2.0.ga.zip

hibernate-3.2.0.ga.zip hibernate-3.2.0.ga.zip hibernate-3.2.0.ga.zip hibernate-3.2.0.ga.zip hibernate-3.2.0.ga.zip

2013-05-29

夏昕.深入浅出Hibernate

夏昕.深入浅出Hibernate 夏昕

2013-05-28

Mystruts

Mystruts

2011-08-22

Petri网原理与应用

Petri网原理与应用 袁崇义 Petri网原理与应用 袁崇义

2010-07-29

js树菜单集合 js树菜单集合

js树菜单集合 js树菜单集合 js树菜单集合 js树菜单集合 js树菜单集合 js树菜单集合

2010-05-17

OSGi进阶 OSGi进阶

OSGi进阶 OSGi进阶 OSGi进阶 OSGi进阶 OSGi进阶 OSGi进阶

2010-01-30

《OSGi实战》及其相关代码

《OSGi实战》及其相关代码 《OSGi实战》及其相关代码 《OSGi实战》及其相关代码 《OSGi实战》及其相关代码

2010-01-25

中间件技术——基于Java平台

中间件技术——基于Java平台 中间件技术——基于Java平台

2010-01-13

SWT-JFace开发入门指南

SWT-JFace开发入门指南SWT-JFace开发入门指南 SWT-JFace开发入门指南

2010-01-10

Java与XML数据库整合应用:TP312+S458

Java与XML数据库整合应用:TP312+S458 Java与XML数据库整合应用:TP312+S458

2010-01-10

Java与XML数据绑定

Java与XML数据绑定 Java与XML数据绑定 Java与XML数据绑定

2010-01-10

Java与XML数据绑定

Java与XML数据绑定 Java与XML数据绑定 Java与XML数据绑定

2010-01-09

空空如也

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

TA关注的人

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