自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(75)
  • 资源 (8)
  • 问答 (1)
  • 收藏
  • 关注

转载 java8 JVM堆内存(heap) 新生代 老年代 永久代垃圾回收详解

装载于:https://blog.51cto.com/lizhenliang/2164876?wx=JAVA堆内存管理是影响性能主要因素之一。堆内存溢出是JAVA项目非常常见的故障,在解决该问题之前,必须先了解下JAVA堆内存是怎么工作的。先看下JAVA堆内存是如何划分的,如图:JVM内存划分为堆内存和非堆内存,堆内存分为年轻代(Young Generation)、老年代(Old...

2019-10-30 18:38:08 2978

转载 JAVA字符串格式化-String.format()的使用

常规类型的格式化String类的format()方法用于创建格式化的字符串以及连接多个字符串对象。熟悉C语言的同学应该记得C语言的sprintf()方法,两者有类似之处。format()方法有两种重载形式。format(String format, Object... args) 新字符串使用本地语言环境,制定字符串格式和参数生成格式化的新字符串。format(Locale lo...

2019-03-29 20:03:03 341

转载 Oracle系统表整理+常用SQL语句收集

-- DBA/ALL/USER/V_$/GV_$/SESSION/INDEX开头的绝大部分都是视图-- DBA_TABLES意为DBA拥有的或可以访问的所有的关系表。-- ALL_TABLES意为某一用户拥有的或可以访问的所有的关系表。-- USER_TABLES意为某一用户所拥有的所有的关系表。-- 当某一用户本身就为数据库DBA时,DBA_TABLES与ALL_TABLES等价...

2019-03-27 09:56:24 414

转载 BIO、NIO和AIO的区别(简明版)

一:事件分离器 在IO读写时,把 IO请求 与 读写操作 分离调配进行,需要用到事件分离器。根据处理机制的不同,事件分离器又分为:同步的Reactor和异步的Proactor。 Reactor模型: - 应用程序在事件分离器注册 读就绪事件 和 读就绪事件处理器 - 事件分离器等待读就绪事件发生 - 读就绪事件发生,激活事件分离器,...

2019-03-27 09:56:04 189

转载 Java8 - 使用 Comparator.comparing 进行排序

Java8 - 使用 Comparator.comparing 进行比较排序使用外部比较器Comparator进行排序当我们需要对集合的元素进行排序的时候,可以使用java.util.Comparator创建一个比较器来进行排序。Comparator接口同样也是一个函数式接口,我们可以把使用lambda表达式。如下示例,package com.common;import jav...

2019-03-27 09:55:50 25908 1

转载 分布式锁的几种实现方式

目前几乎很多大型网站及应用都是分布式部署的,分布式场景中的数据一致性问题一直是一个比较重要的话题。分布式的CAP理论告诉我们“任何一个分布式系统都无法同时满足一致性(Consistency)、可用性(Availability)和分区容错性(Partition tolerance),最多只能同时满足两项。”所以,很多系统在设计之初就要对这三者做出取舍。在互联网领域的绝大多数的场景中,都需要牺牲强一致...

2019-03-27 09:55:38 167

转载 MQ(消息队列)常见的应用场景解析

前言提高系统性能首先考虑的是数据库的优化,之前一篇文章《数据库的使用你可能忽略了这些》中有提到过开发中,针对数据库需要注意的事项。但是数据库因为历史原因,横向扩展是一件非常复杂的工程,所有我们一般会尽量把流量都挡在数据库之前。不管是无限的横向扩展服务器,还是纵向阻隔到达数据库的流量,都是这个思路。阻隔直达数据库的流量,缓存组件和消息组件是两大杀器。之前文章《Redis常见的应用场景解析》已经...

2019-03-27 09:55:21 210

转载 rocketMq-延迟消息实现细节

在rocketMq的消息体系中,很重要的一个消息体系是延迟消息,以前需要定时去实现的任务现在有rocketMq自身帮忙解决了,这篇文章主要是讲解清楚延迟消息的实现细节,延迟消息的是细节,延迟消息的实现细节,重要的事情说3遍。延迟消息的整个流转过程1、消息先写入commitlog文件 2、消费线程将数据保存以SCHEDULE_TOPIC_XXX的topic下面并且以延迟粒...

2019-03-27 09:55:11 736

转载 JVM 性能调优监控工具

企业级应用开发中经常会遇到以下问题,可以使用工具对JVM进行监管,以便及时查找问题所在。  内存不足OutOfMemory(大对象没有gc等),内存泄露;  线程死锁,线程数过多;  锁争用(Lock Contention),资源未及时释放(数据库);  Java进程CPU消耗过高.一、Java自带工具  Java安装目录的bin文件加下有一些工具可以用来监控JVM性能,如jcon...

2019-03-27 09:54:57 191

转载 HAProxy安装配置详解

简介HAProxy提供高可用性、负载均衡以及基于TCP和HTTP应用的代理,支持虚拟主机,它是免费、快速并且可靠的一种解决方案。HAProxy特别适用于那些负载特大的web站点,这些站点通常又需要会话保持或七层处理。HAProxy运行在当前的硬件上,完全可以支持数以万计的并发连接。并且它的运行模式使得它可以很简单安全的整合进您当前的架构中, 同时可以保护你的web服务器不被暴露到网络上...

2019-03-27 09:54:29 322

转载 Haproxy 配置项\配置实例

常用配置选项:OPTION 选项:option httpclose :HAProxy会针对客户端的第一条请求的返回添加cookie并返回给客户端,客户端发送后续请求时会发送此cookie到HAProxy,HAProxy会针对此cookie分发到上次处理此请求的服务器上,如果服务器不能忽略...

2019-03-27 09:54:11 301

转载 Haproxy的三种保持客户端会话保持方式

haproxy 三种保持客户端Seesion;一、源地址hash(用户IP识别)haroxy 将用户IP经过hash计算后 指定到固定的真实服务器上(类似于nginx 的IP hash 指令)。缺陷,当后端一台服务器挂了以后会造成部分session丢失。配置指令backend SOURCE_srv mode http balance source ser...

2019-03-24 21:05:37 1293

转载 优化或修改CentOS最大连接数限制

当我们在架设高可用服务器环境时会遇到来自于系统级别的连接数限制问题,这是因为CentOS根据系统硬件信息自己默认初始了一个限制连接数量,往往这个数量是我们遇到的问题,所以今天我们需要修改系统的默认值来达到我们需要的要求,解决一定的高并发产生的连接数问题。使用以下命令查看当前最大连接数:[root@HA ~]# ulimit -n1024修改以下配置文件:编辑/etc/securit...

2019-03-24 21:05:27 3648

转载 容器私有云和持续发布都要解决哪些基础问题

本文档适用人员:广义上的技术人员提纲:集装箱还是卷挂载? Host Networking 还是 Bridge Networking? 容器要固定IP吗? 容器内部如何获取宿主机的IP? 待续 首先,你要明白容器并不是虚拟机,虽然它可以解决虚拟机能够解决的问题,同时也能够解决虚拟机由于资源要求过高而无法解决的问题,但它真的不是虚拟机。以往我们的开发、配置管理、部署发布、监控报警思...

2019-03-24 21:05:17 192

转载 maven内部运行原理解析

maven至今还是Java编程语言构建的事实标准,大部分项目还在使用maven来进行构建,因此了解maven内部运行的原理对定位和分析问题还是很有裨益的。本篇文章主要介绍一些maven内部运行过程中的一些基本概念,相信看完后,对那么些刚刚接触maven的读者来说maven将不再陌生。  在具体分析项目构建的过程前,需要了解maven的一些基本概念,这些概念十分重要,请务必理解清楚后再看下文。基本...

2019-03-24 21:05:06 235

转载 AES加密过程

AES是一个对称密码,旨在取代DES成为广泛使用的标准。一、AES的加密过程二、AES的数据结构加密解密算法的输入是一个128位分组。这些分组被描述成4×4的字节方阵,这个分组被复制到state数组中,并在加密和解密的每一阶段都被修改。在字节方阵中,每一格都是一个字,包含了4字节。在矩阵中字是按列排序的。加密由N轮构成,轮数依赖于密钥长度:16字节密钥对应10轮,24...

2019-03-24 21:04:58 5324

转载 使用AES算法对文件进行加密/解密的操作(JAVA)

很简单,直接上代码。/** * 初始化 AES Cipher * @param sKey * @param cipherMode * @return */ public Cipher initAESCipher(String sKey, int cipherMode) { //创建Key gen KeyG...

2019-03-24 21:04:49 4279

转载 POI中设置Excel单元格格式

POI中可能会用到一些需要设置EXCEL单元格格式的操作小结:先获取工作薄对象:HSSFWorkbook wb = new HSSFWorkbook();HSSFSheet sheet = wb.createSheet();HSSFCellStyle setBorder = wb.createCellStyle();一、设置背景色:setBorder.setFillFore...

2019-03-24 21:04:39 327

转载 java base64 转码和解码

Java Base64 这是一个用于编码和解码(encode/decode )base64字符串和数据流的Java开源类库。Base64是网络上最常见的用于传输8Bit字节代码的编码方式之一。可用来作为电子邮件或WebService附件的传输编码.使用方法: 把类库javabase64-1.2.jar设置到编译路径中。示例代码: String类型 进行Base64编码...

2019-03-24 21:04:31 1108

转载 ExecutorService生命周期

ExecutorService接口继承了Executor接口,定义了一些生命周期的方法Java代码publicinterfaceExecutorServiceextendsExecutor{ voidshutdown(); List<Runnable>shutdownNow(); booleanisShutdown(); bool...

2019-03-24 21:04:21 139

转载 UML类图几种关系的总结

转载于https://blog.csdn.net/tianhai110/article/details/6339565

2019-03-24 21:04:08 113

转载 Java并发编程:线程池的使用

Java并发编程:线程池的使用  在前面的文章中,我们使用线程的时候就去创建一个线程,这样实现起来非常简便,但是就会有一个问题:  如果并发的线程数量很多,并且每个线程都是执行一个时间很短的任务就结束了,这样频繁创建线程就会大大降低系统的效率,因为频繁创建线程和销毁线程需要时间。  那么有没有一种办法使得线程可以复用,就是执行完一个任务,并不被销毁,而是可以继续执行其他的任务?  ...

2019-03-14 09:44:48 123

转载 深入浅出分析MySQL索引设计背后的数据结构

在我们公司的DB规范中,明确规定: 1 2 1、建表语句必须明确指定主键 2、无特殊情况,主键必须单调递增 对于这项规定,很多研发小伙伴不理解。本文就来深入简出地分析MySQL索引设计背后的数据结构和算法,从而可以帮你释疑如下问题:1、为什么innodb表需要主键?2、为什么建议innodb表主键是单调递增?3、为什么不建议in...

2019-03-14 09:44:41 131

转载 Java8 中 ConcurrentHashMap工作原理的要点分析

简介:本文主要介绍Java8中的并发容器ConcurrentHashMap的工作原理,和其它文章不同的是,本文重点分析了不同线程的各类并发操作如get,put,remove之间是如何同步的,以及这些操作和扩容操作之间同步可能出现的各种情况。由于源代码的分析肯定会有所纰漏,希望大家积极指出错误。1.Java8中 ConcurrentHashMap的结构图片来源(http://www....

2019-03-14 09:44:31 199

转载 Java7/8 中的 HashMap 和 ConcurrentHashMap 全解析

今天发一篇"水文",可能很多读者都会表示不理解,不过我想把它作为并发序列文章中不可缺少的一块来介绍。本来以为花不了多少时间的,不过最终还是投入了挺多时间来完成这篇文章的。网上关于 HashMap 和 ConcurrentHashMap 的文章确实不少,不过缺斤少两的文章比较多,所以才想自己也写一篇,把细节说清楚说透,尤其像 Java8 中的 ConcurrentHashMap,大部分文章都说不...

2019-03-14 09:44:24 106

转载 Java并发:深入分析volatile的实现原理

通过前面一章我们了解了synchronized是一个重量级的锁,虽然JVM对它做了很多优化,而下面介绍的volatile则是轻量级的synchronized。如果一个变量使用volatile,则它比使用synchronized的成本更加低,因为它不会引起线程上下文的切换和调度。Java语言规范对volatile的定义如下:Java编程语言允许线程访问共享变量,为了确保共享变量能被准确和一致地...

2019-03-14 09:44:15 114

转载 Gerrit代码审核服务器搭建与使用

gerrit的安装与使用的官方文档地址:https://gerrit-documentation.storage.googleapis.com/Documentation/2.16.6/index.html谷歌的Android开源项目在Git的使用上有两个重要的创新,一个是为多版本库协同而引入的 repo,另外一个重要的创新就是 Gerrit —— 代码审核服务器。Gerrit 为g...

2019-03-14 09:44:08 2005

转载 CentOS 7 find命令及文件名后缀的介绍-详解

find命令find 命令使用来搜索文件的一个命令。常见用法:-type -name -mtime -ctime -atime -mmin -exec {} \;#name 的实例演示:[root@centos7 a]# find /tmp/a/ -name "1.txt"/tmp/a/1.txt#模糊搜索[root@centos7 a]# find /tmp/a/ -nam...

2019-03-14 09:43:58 4842

转载 Linux查找某个时间内的文件

1、n天内修改的(-ctime)find . -type f -ctime -1| xargs ls –l说明:(1) -type f 只搜索文件,不包含文件夹(2)ctime中的c-change的意思(3)-ctime +n: n天前修改的;-ctime –n:n天内修改的,修改日期过去n天的ctime参数指文件日期等状态性参数修改,mtime参数指内容改变:fi...

2019-03-14 09:43:53 2090

转载 手把手教你实践Service Mesh微服务架构 - 基础部署部分

当下,已经有很大一部分公司完成了单体架构向微服务架构的迁移改造,并在疲于应对大量微服务间通信问题时,开始考虑采用Service Mesh微服务架构作为服务与服务直接通信的透明化管理框架,以插件式的方式实现各种业务所需的高级管理功能。而开源PaaS Rainbond提供了开箱即用的Service Mesh微服务架构,部署在Rainbond上的应用原生即是Service Mesh微服务架构应用。...

2019-03-14 09:43:43 513

转载 Swagger 入门和实战

Swagger 是最流行的 API 开发工具,它遵循 OpenAPI Specification(OpenAPI 规范,也简称 OAS)。Swagger 可以贯穿于整个 API 生态,如 API 的设计、编写 API 文档、测试和部署。Swagger 是一种通用的,和编程语言无关的 API 描述规范。应用场景如果你的 RESTful API 接口都开发完成了,你可以用 Swagge...

2019-03-14 09:43:07 446

转载 在Spring Boot 2中有什么新内容?

A look at new features in Spring Framework 5 &amp; Spring Boot 2Spring Boot 2刚刚发布,在最近的几个月里,我很兴奋地看到它不停的在更新。这个版本是17个月的工作的最高点的见证,由215个不同的人提交超过了6800次。有一些很棒的功能可以讨论,让我们来讨论一下Spring Boot 2中的新特性。在这篇文章中我们...

2019-03-12 11:05:13 217

转载 Java 类加载机制

(1)阿里的面试官问我,可以不可以自己写个String类答案:不可以,因为 根据类加载的双亲委派机制,会去加载父类,父类发现冲突了String就不再加载了;(2)能否在加载类的时候,对类的字节码进行修改答案:可以,使用Java探针技术,可以参考:Java探针-Java Agent技术-阿里面试题阅读目录 什么是类加载器 类加载器与类的”相同“判断 类加载器种类...

2019-03-12 10:56:44 209

转载 常用 Java 静态代码分析工具的分析与比较

简介:本文首先介绍了静态代码分析的基本概念及主要技术,随后分别介绍了现有 4 种主流 Java 静态代码分析工具 (Checkstyle,FindBugs,PMD,Jtest),最后从功能、特性等方面对它们进行分析和比较,希望能够帮助 Java 软件开发人员了解静态代码分析工具,并选择合适的工具应用到软件开发中。引言在 Java 软件开发过程中,开发团队往往要花费大量的时间和精力发...

2019-03-12 10:52:18 839

转载 sonar自定义规则

Sonar并不是简单地把不同的代码检查工具结果(例如 FindBugs,PMD 等)直接显示在 Web 页面上,而是通过不同的插件对这些结果进行再加工处理,通过量化的方式度量代码质量的变化,从而可以方便地对不同规模和种类的工程进行代码质量管理。sonarqubue默认的对java的检测规则不一定适合我们,可以自己去自定义rules。禁用rulesRules-Quality Prof...

2019-03-12 10:45:53 1117

转载 使用自定义注解+Spring AOP 实现日志记录

在平常的项目编程中,我们会经常使用到日志,用来记录各种事件.但是,有些日志记录套路实在是太像了,我们不得不要写很多遍.比如在Spring中,我们要使用日志记录每个controller的访问和结束时间,该怎么办呢.下面是我认为比较简单的一种方法: 自定义注解+Spring切面 .下面使用SpringBoot快速搭建一个项目来进行演示.具体pom文件查看源码创建一个Controller...

2019-03-12 10:42:16 160

转载 Spring安全架构-Spring Security Architecture

本篇是Spring安全的初级指南,主要介绍Spring安全框架的设计和基本模块。此处仅仅涉及应用安全方面非常基础的知识,但是通过本篇可以扫清使用Spring安全框架是遇到的一些困惑。为了达到此目的,我们会关注安全是如何通过过滤器和注解而被应用到Web应用中的。当你想在更高的层次理解Spring安全框架都是如何工作的,并且想自定义一些特性时可以考虑这份指南,或者你只是想了解一下应用安全的知识也是可以...

2019-03-12 10:36:51 367

转载 git log命令全解析

git log命令非常强大而好用,在复杂系统的版本管理中扮演着重要的角色,但默认的git log命令显示出的东西实在太丑,不好好打扮一下根本没法见人,打扮好了用alias命令拍个照片,就正式出道了!下面先详细而系统地介绍git log的所有配置知识(用我一向简洁清晰的表述方式),熟悉了这些东西,你就可以自由配置自己美丽的git log了~最后上个干货,直接给一个我打扮好的alias配...

2019-03-12 10:24:30 275

转载 maven跳过单元测试-maven.test.skip和skipTests的区别

-DskipTests,不执行测试用例,但编译测试用例类生成相应的class文件至target/test-classes下。-Dmaven.test.skip=true,不执行测试用例,也不编译测试用例类。不执行测试用例,但编译测试用例类生成相应的class文件至target/test-classes下。一 使用maven.test.skip,不但跳过单元测试的运行,也跳过测试代码...

2019-03-12 10:23:16 680

转载 Java并发编程:深入剖析ThreadLocal

Java并发编程:深入剖析ThreadLocal  想必很多朋友对ThreadLocal并不陌生,今天我们就来一起探讨下ThreadLocal的使用方法和实现原理。首先,本文先谈一下对ThreadLocal的理解,然后根据ThreadLocal类的源码分析了其实现原理和使用需要注意的地方,最后给出了两个应用场景。  以下是本文目录大纲:  一.对ThreadLocal的理解  二....

2019-03-12 10:21:02 116

Window10 Jmeter安装使用指南

Window10 Jmeter安装使用指南,BlazeMeter插件下载及安装操作,Jmeter常用的接口测试控件

2019-03-07

ANT 快速参考(OSSEZ)开发文档很详细

ant快速参考(OSSEZ) ant开发文档 很详细很具体

2014-06-30

J2EE体系chm帮助文档大全共27本

HTML参考手册 css2.0中文手册 J2EE全实例教程 Javascript参考手册 Jsp帮助文档 JSTL中英文对照版 servlet api 中文版chm格式 JAVA设计模式 Hibernate 2.1 中文参考手册 EL表达式 Tomcat中文帮助 掌握自定义JSP标签 xml指南 struts2.0中文帮助手册

2012-02-28

嵌入式系统开发入门

嵌入式系统开发入门

2012-01-02

网页设计与制作案例教程

网页设计与制作案例教程

2012-01-02

汇编语言入门教程

汇编语言入门教程ppt,深入的讲解汇编语言,帮助大家轻松掌握汇编语言的精髓。

2012-01-02

算法与数据结构课件

算法数据结构的课件,有表、栈、队列、排序的方法、树、图、集合、符号表、字典等数据结构的详细讲解!

2012-01-02

离散数学课后答案(耿素云 屈婉玲 张立昂 清华版)

离散数学是计算机必修课,离散数学课后答案,仅供大家参考!大家考试加油!!!

2012-01-02

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

TA关注的人

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