自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(137)
  • 资源 (11)
  • 收藏
  • 关注

原创 jstack命令和JAVA线上故障排查

一、jstack 命令参数二、jstack解决问题1、死循环导致cpu飙高死循环的例子:https://blog.csdn.net/goldenfish1919/article/details/8755378步骤:查找进程-》查找线程-》分析threadDump日志-》找出问题代码a、查看cpu高的java进程 topb、生成进程下所有线程的栈日志 jstack 1721 > 1712.txtc、查看进程下哪些线程占用了高的cputop -p 1712 -Hd、将十进制pi

2021-05-07 14:33:21 1004 1

转载 spring 循环依赖,三级缓存

作者:苏三说技术链接:https://www.zhihu.com/question/438247718/answer/1730527725来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。1.由同事抛的一个问题开始最近项目组的一个同事遇到了一个问题,问我的意见,一下子引起的我的兴趣,因为这个问题我也是第一次遇到。平时自认为对spring循环依赖问题还是比较了解的,直到遇到这个和后面的几个问题后,重新刷新了我的认识。我们先看看当时出问题的代码片段:@Se.

2021-04-19 10:14:33 335

原创 Java线程池七个参数详解Executors

java多线程开发时,常常用到线程池技术,这篇文章是对创建java线程池时的七个参数的详细解释。从源码中可以看出,线程池的构造函数有7个参数,分别是corePoolSize、maximumPoolSize、keepAliveTime、unit、workQueue、threadFactory、handler。下面会对这7个参数一一解释。一、corePoolSize 线程池核心线程大小线程池中会维护一个最小的线程数量,即使这些线程处理空闲状态,他们也不会被销毁,除非设置了allowCoreThrea

2021-04-08 14:01:54 644

转载 ZooKeeper和CAP理论及一致性原则

ZooKeeper和CAP理论及一致性原则一、CAP理论概述CAP理论告诉我们,一个分布式系统不可能同时满足以下三种一致性(C:Consistency)可用性(A:Available)分区容错性(P:Partition Tolerance)这三个基本需求,最多只能同时满足其中的两项,因为P是必须的,因此往往选择就在CP或者AP中。[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-NS5yD5JX-1584607472252)(http://www.ymq.io/

2021-04-08 13:59:26 148

转载 Java学习之路——CAP理论

CAP理论加州大学伯克利分校 Eric Brewer教授提出一个分布式系统特性具CAP理论:在分布式系统中,是不存在同时满足一致性 Consistency、可用性 Availability和分区容错性 Partition Tolerance三者的。在绝大多数的场景,都需要牺牲强一致性来换取系统的高可用性,系统往往只需要保证最终一致性即可。Consistency(一致性) 强一致性就是在客户端任何时候看到各节点的数据都是一致的(All nodes see the same data at the s

2021-04-08 13:50:57 169

原创 spring

2020-09-29 10:05:48 77

原创 nacos 1.3.0源码解析(二)

启动成功以后,访问域名,修改配置:访问到后台的:ConfigController.publishConfig接口插入或者修改数据,这里会操作config_info表,config_tags_relation表,以及插入记录表his_config_infoDB操作好以后会调用通知事件通知集群里面其他的服务器,这样保证本地缓存数据是同步的调用通知其他节点的通知器丢到线程修改配置的整个步骤:1、修改DB数据2、起任务来通知其他节点的数据3、收到修改通知的时候会查询DB并且更新本

2020-06-30 16:58:02 384

原创 nacos 1.3.0源码解析(一)

nacos 0.3.0源码解析(一)第一步:从github上面拉取nacos代码git clone -b master [email protected]:hzwjava/nacos.git nacos拉取下来代码如下

2020-06-23 16:56:04 357

转载 在Windows上安装FFmpeg程序ffmpeg-20181007-0a41a8b-win64-static

FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。它提供了录制、转换以及流化音视频的完整解决方案。它包含了非常先进的音频/视频编解码库libavcodec。该程序只有命令行模式,因此安装到Windows下时,它与一般安装程序不同,具体安装步骤如下:一、FFmpeg下载:http://ffmpeg.zeranoe.com/builds/你可以根据自己的...

2018-10-15 10:50:02 4160

原创 FFmpeg3.2安装(CentOS release 6.5)

yasm安装Yasm是一个完全重写的NASM汇编。目前,它支持x86和AMD64指令集。 接受NASM和GNU汇编器(gas)语法,产出二进制, ELF32 , ELF64 , COFF , Mach - O的( 32和64 ) , RDOFF2 ,的Win32和Win64对象的格式,并生成STABS 调试信息的来源,DWARF 2 ,CodeView 8格式。下载源:http://www...

2018-10-14 23:37:39 770

原创 MYSQL 启动报错

我先说一下我安装mysql的操作吧:1、开始的时候,安装mysql,是那种解压缩就能用的软件包。我把它解压后,拷贝到/usr/local/ 目录下,并把名字命名为mysql。2、建立用户mysql。[root@localhost ~]# useradd mysql3、修改权限。[root@localhost ~]# chown -R mysql:mysql /usr/local/mysql4、初始...

2018-03-07 12:28:31 5314

原创 ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/usr/local/mysql/mysql.sock'

今天服务器遇到了一个很熟悉的问题输入#mysql -u root -p ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/usr/local/mysql/mysql.sock' (111)  随即上网找寻答案 根据大家提供的方法我逐一尝试 方案1. 1.#

2017-10-27 22:04:30 1769

原创 Mysql SQL中的where条件,在数据库中提取与应用浅析

1        问题描述一条SQL,在数据库中是如何执行的呢?相信很多人都会对这个问题比较感兴趣。当然,要完整描述一条SQL在数据库中的生命周期,这是一个非常巨大的问题,涵盖了SQL的词法解析、语法解析、权限检查、查询优化、SQL执行等一系列的步骤,简短的篇幅是绝对无能为力的。因此,本文挑选了其中的部分内容,也是我一直都想写的一个内容,做重点介绍: 给定一条SQL,如何提

2017-03-24 22:22:13 2775

原创 MYSQL 加锁以及死锁分析

1    背景    11.1    MVCC:Snapshot Read vs Current Read    21.2    Cluster Index:聚簇索引    31.3    2PL:Two-Phase Locking    31.4    Isolation Level    42    一条简单SQL的加

2017-03-24 22:21:20 679

原创 vmware 下面的linux虚拟机ip配置并且可以互ping和虚拟机上网功能

最近配置虚拟机的时候一直碰到两个问题:问题1:启动了VMnet8的话虚拟机就无法上网,本地可以连接到虚拟机问题2:停止了VMnet8的话虚拟机可以上网,但是本地无法连接到虚拟机解决方法:第一步:先设置VMnet8的静态ip,设置网关为:192.168.27.1ip为:192.168.27.2第二步:设置VMware的虚拟网络编辑器设置子网

2016-12-27 23:19:44 725

原创 mongodb 的一些启动命令

启动命令nohup /home/sh/local/mongodb-linux-x86_64-rhel62-3.4.0/bin/mongod -dbpath /home/sh/local/mongodb-linux-x86_64-rhel62-3.4.0/db &启动nohup /home/sh/local/mongodb-linux-x86_64-rhel62-3.4.0/bin/mongo

2016-12-14 20:08:20 2431

原创 mongodb-linux-x86_64-rhel62-3.4.0部署,主从部署

1、下载mongodb-linux-x86_64-rhel62-3.4.0软件http://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel62-3.4.0.tgzlinux 下命令输入 wget http://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel62-3.4.0.tgz

2016-12-14 19:56:19 2437

原创 zookeeper 3.4.6安装

[shxd@iZbp10vmnn5rfggtb6aec4Z src]$ cd zookeeper-3.4.6[shxd@iZbp10vmnn5rfggtb6aec4Z zookeeper-3.4.6]$ lltotal 1564drwxr-xr-x 2 shxd shxd 4096 Feb 20 2014 bin-rw-rw-r-- 1 shxd shxd 82446 Fe

2016-09-29 23:47:53 1068

原创 Dubbo生产者抛出自定义异常的问题

最近开始学习Dubbo框架,在工作中会把之前的业务迁移过来。        在原来的Spring MVC框架实现中,有使用到自定义异常的场景(自定义异常继承RuntimeException)。而对于异常(包括自定义异常),在业务代码中都不做任何try-catch操作,而是由公用的Controller来处理异常。        在使用dubbo的过程中,在dubbo的service端定义有自

2016-08-29 21:51:58 19778 6

转载 JDK1.8源码分析之ThreadPoolExecutor

一、前言  JUC这部分还有线程池这一块没有分析,需要抓紧时间分析,下面开始ThreadPoolExecutor,其是线程池的基础,分析完了这个类会简化之后的分析,线程池可以解决两个不同问题:由于减少了每个任务调用的开销,它们通常可以在执行大量异步任务时提供增强的性能,并且还可以提供绑定和管理资源(包括执行任务集时使用的线程)的方法。下面开始分析。二、ThreadPoolExecu

2016-08-28 19:52:54 3573 1

原创 JDK1.8 ArrayBlockingQueue源码分析

目的:本文通过分析JDK源码来对比ArrayBlockingQueue 和LinkedBlockingQueue,以便日后灵活使用。1. 在Java的Concurrent包中,添加了阻塞队列BlockingQueue,用于多线程编程。BlockingQueue的核心方法有:boolean add(E e) ,把 e 添加到BlockingQueue里。如果BlockingQueue

2016-08-28 19:08:45 2440

转载 怎么理解ConditionObject,sync.newCondition()

在java.util.concurrent包中,有两个很特殊的工具类,Condition和ReentrantLock,使用过的人都知道,ReentrantLock(重入锁)是jdk的concurrent包提供的一种独占锁的实现。它继承自Dong Lea的 AbstractQueuedSynchronizer(同步器),确切的说是ReentrantLock的一个内部类继承了AbstractQueue

2016-08-28 18:53:12 2353

原创 mysql优化配置my.cnf

[client]port = 3306socket = /tmp/mysql.sock[mysqld]port = 3306socket = /tmp/mysql.sockbasedir = /usr/local/mysqldatadir = /data/mysqlpid-file = /data/mysql/mysql.piduser = my

2016-08-26 21:08:00 779

原创 PowerDesigner16.5 破解版安装

安装文件: PowerDesigner 16.5 下载链接: http://download.sybase.com/eval/PowerDesigner/PowerDesigner165_Evaluation.exe 然后将pdflm16.dll覆盖到根目录

2016-07-21 20:54:35 1607

原创 Linux虚拟机无法联网的终极解决办法

有时遇到如下问题,网卡上有个叉,任何命令都无法修复。 发现网卡红叉之前试过下面命令,肯定都不行的。 sudo ifconfig eth0 down sudo ifconfig eth0 up sudo /etc/init.d/dhcp3-server restart sudo /etc/init.d/networking restart 问题解决很简单,把如

2016-05-26 21:30:28 1901

转载 java.util.concurrent.locks与synchronized及其异同

关键字:synchronized、java.util.concurrent.locks.Lock、同步、并发、锁一、【引言】JDK1.5之前,实现同步主要是使用synchronized,而在JDK1.5中新增了java.util.concurrent包及其两个子包locks和atomic,其中子包locks中定义了系列关于锁的抽象的类。本文主要介绍java.util.concurren

2016-05-19 23:57:23 1420

原创 java之ReentrantLock公平锁和非公平锁

大多数情况下,大家可能都会选择使用synchronized来加锁,ReentrantLock确实是一种高级加锁工具,在确实需要一些 synchronized 所没有的特性的时候,比如时间锁等候、可中断锁等候、无块结构锁、多个条件变量或者锁投票。以下实现公平锁和非公平锁,公平锁在性能上会多消耗点package com.cmcc.web.test.lock;import java.util

2016-05-19 23:31:50 6300

原创 浅谈SQL语句优化经验

(1) 选择最有效率的表名顺序(只在基于规则的seo/' target='_blank'>优化器中有效):ORACLE 的解析器按照从右到左的顺序处理FROM子句中的表名,FROM子句中写在最后的表(基础表 driving table)将被最先处理,在FROM子句中包含多个表的情况下,你必须选择记录条数最少的表作为基础表。如果有3个以上的表连接查询, 那就需要选择交叉表(intersection

2016-05-07 13:47:54 1450

转载 Linux磁盘扩容LVM

转自http://blog.csdn.net/jianyi7659/article/details/49818815mongodb数据库服务器运行了一段时间之后发现磁盘空间慢慢的都被耗尽了额。就参照网上的步骤一步一步的开始扩容工作。在这将自己的操作步骤做一个记录以便未来不时之需。 前沿: 在安装系统的时候我选择的是自动分区,系统就会自动以LVM的方式分区。为了保证系统后期的可用性,

2016-05-04 09:27:33 1359

转载 基于MySQL实现按距离排序、范围查找geoHash

转自http://blog.csdn.net/ghsau/article/details/50591932简介现在几乎所有的O2O应用中都会存在“按范围搜素、离我最近、显示距离”等等类似的功能,那这样的功能是怎么实现的呢?本文提供了基于MySQL的实现方式,同样适用于其它数据库。本文不分析,只讲怎么实现,有关分析的文章可以看参考链接。实现为了方便下面说明,先给出一个

2016-04-30 16:19:30 18346 5

原创 阿里云服务器ECS磁盘扩容篇

//先卸载旧的磁盘,卸载的时候必须把程序都kill掉,fuser -m /dev/vdb1 这个命令可以查看那些程序pid是在执行的然后找出来kill -9 pid杀掉1、umount /dev/vdb12、fdisk /dev/vdb按下d n p 1 wq3、e2fsck -f /dev/vdb14、resize2fs /dev/vdb1最后是mount /dev/vdb1

2016-04-26 22:25:57 26663

原创 mysql-5.6.28主从备份,异地容灾

首先在两台MySQL服务器192.168.1.89(主)和192.168.1.90(备)上安装版本一样的mysql,大家可以参照着点击打开链接去安装安装好以后在192.168.1.89(主)上面的my.cnf文件上面加入以下参数binlog_format = mixedexpire_logs_days = 15//慢sql时间slow_query_log = 1long_query

2016-04-26 22:08:51 9139

原创 mysql-5.6.28源码安装 整个安装过程详细教程,详解

先创建普通用户[root@localhost home]# useradd -d /home/sh -m sh[root@localhost home]# passwd sh更改用户 sh 的密码 。新的 密码:无效的密码: 它基于字典单词重新输入新的 密码:passwd: 所有的身份验证令牌已经成功更新。[root@localhost home]# su sh[sh@localh

2016-04-25 22:19:04 6614

原创 MySQL5.6版本性能调优my.cnf详解

[client]port = 3306socket = /tmp/mysql.sock[mysqld]port = 3306socket = /tmp/mysql.sockbasedir = /usr/local/mysqldatadir = /data/mysqlpid-file = /data/mysql/mysql.piduser = mysqlbind-addres

2016-04-25 00:19:46 14541

原创 mysql数据库设计原则

1) 不应该针对整个系统进行数据库设计,而应该根据系统架构中的组件划分,针对每个组件所处理的业务进行组件单元的数据库设计;不同组件间所对应的数据库表之 间的关联应尽可能减少,如果不同组件间的表需要外键关联也尽量不要创建外键关联,而只是记录关联表的一个主键,确保组件对应的表之间的独立性,为系统或表 结构的重构提供可能性。2)采用领域模型驱动的方式和自顶向下的思路进行数据库设计,首先分析系

2016-04-22 23:55:11 2586

原创 jdk中设计模式的实现

1、创建型设计模式抽象工厂模式特点:创建方法返回一个可以用来创建抽象类或接口的工厂类。javax.xml.parsers.DocumentBuilderFactory#newInstance()javax.xml.transform.TransformerFactory#newInstance()javax.xml.xpath.XPathFactor

2016-04-22 21:30:50 1258

原创 java对redis的基本操作

java对redis的基本操作  二、基本功能测试  1、程序基本结构    2、主要类    1)功能类package com.redis;import java.util.ArrayList;import java.util.Iterator;import java.util.List;import java.util.Set;import

2016-04-21 17:08:18 1502

原创 关于linux上面ssh和sftp到某台服务器出现Permission denied, please try again.

最近在阿里云上面部署了两台服务器。服务器a(图片服务器)和服务器b(主程序),b是通过java的jsch这个框架来往a传送图片的,但是最近发送在b上面操作sftp的时候一直在报[root@iZ23h0vz72uZ ~]# sftp [email protected] to [email protected]'s password: Per

2016-04-20 16:47:14 53556 1

原创 使用zxing生成嵌图片的二维码,demo二维码

首先贴zxing生成二位的源码zxing的maven com.google.zxing core 2.2 package com.cmcc.web.test;import java.awt.Color;im

2016-04-14 22:22:14 2000

转载 java HashMap详解,剖析

HashMap 和 HashSet 是 Java Collection Framework 的两个重要成员,其中 HashMap 是 Map 接口的常用实现类,HashSet 是 Set 接口的常用实现类。虽然 HashMap 和 HashSet 实现的接口规范不同,但它们底层的 Hash 存储机制完全一样,甚至 HashSet 本身就采用 HashMap 来实现的。 通过 HashMap

2016-04-14 21:55:12 510

dubbo-admin jdk1.8

dubbo-admin jdk1.8可以使用的直接部署

2016-08-28

Bootstrap-中文-API

Bootstrap-中文-API

2016-08-28

mysql-5.6.28源码

mysql-5.6.28源码

2016-04-27

jedis-2.8.0

jedis-2.8.0,java版的架包

2015-12-24

redis-3.0.5.tar.gz

redis-3.0.5.tar.gz,redis集群的源码

2015-12-24

apache2.4.17版本文件服务器所使用的架包

我将apr-1.5.2.tar.gz,apr-util-1.5.4.tar.gz,httpd-2.4.17.tar.gz,pcre-8.12.tar.gz打包放到了一起,这样就省得下载了

2015-11-09

commons-net-3.0.1.jar

ftp上传和下载,commons-net-3.0.1.jar

2015-11-09

jsch-0.1.51.jar

sftp上传和下载工具类, jsch-0.1.51.jar非常方便

2015-11-09

C转java工具

可以把大部分的C语言语法转成JAVA语法,基本可用,目前项目已经开始使用

2015-09-07

pcre-8.12.tar.gz

pcre-8.12.tar.gz

2015-06-04

html2image-0.9

html2image-0.9,html代码生成图片

2015-04-17

空空如也

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

TA关注的人

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