- 博客(38)
- 资源 (8)
- 收藏
- 关注
原创 Java8新特性(五)新日期时间的API
1、新时间日期APIjava.time – 包含值对象的基础包 java.time.chrono – 提供对不同的日历系统的访问 java.time.format – 格式化和解析时间和日期 java.time.temporal – 包括底层框架和扩展特性 java.time.zone – 包含时区支持的类说明:大多数开发者只会用到基础包和format包,也可能会用到temporal...
2018-12-24 14:15:18 309
原创 redis反序列化异常:org.springframework.data.redis.serializer.SerializationException
1、日志如下org.springframework.data.redis.serializer.SerializationException: Cannot deserialize; nested exception is org.springframework.core.serializer.support.SerializationFailedException: Failed to d...
2018-12-19 16:19:30 16790
原创 Java8新特性(四)Stream API
目录:1、Stream概述1.1、为什么要使用Stream API1.2、什么是 Stream2、Stream 的操作三个步骤2.1、创建Stream2.2.1、由数组创建流2.2.2、由值创建流2.2.3、由函数创建流:创建无限流2.2、Stream的中间操作2.2.1、筛选与切片2.2.2、映射2.2.3、排序2.3、Stream 的终止...
2018-12-18 18:24:51 295
原创 Java8新特性(三)方法引用、构造器引用、数组引用
目录:1、方法引用1.1、对象 :: 实例方法1.2、类 :: 静态方法1.3、类 ::实例方法2、构造器引用2.1、介绍2.2、使用3、数组引用3.1、介绍3.2、使用1、方法引用若lambda体中的内容有方法已经实现了,我们可以使用"方法引用"(实现抽象方法的参数列表,必须与方法引用方法的参数列表保持一致!)可以理解为方法引用是lambda表达式...
2018-12-18 10:59:30 240
原创 Java8新特性(二) 函数式接口
1、什么是函数式接口函数式接口(Functional Interface)就是一个有且仅有一个抽象方法,但是可以有多个非抽象方法的接口。 你可以通过 Lambda 表达式来创建该接口的对象。(若 Lambda表达式抛出一个受检异常,那么该异常需要在目标接口的抽象方法上进行声明)。 我们可以在任意函数式接口上使用 @FunctionalInterface 注解,这样做可以检查它是否是一个函数...
2018-12-18 10:29:15 172
原创 Java8新特性(一) Lambda 表达式
目录:1、为什么使用 Lambda 表达式?2、Lambda 表达式语法3、类型推断4、实例4.1、入门案例4.2、替代匿名内部类4.3、使用lambda表达式对集合进行迭代4.4、用lambda表达式实现map4.5、用lambda表达式实现map与reduce4.6、filter操作4.7、与函数式接口Predicate配合Java 8 (又...
2018-12-18 09:54:18 340
原创 JVM优化(7)代码优化
目录:1、尽可能使用局部变量2、尽量减少对变量的重复计算3、尽量采用懒加载的策略,即在需要的时候才创建4、异常不应该用来控制程序流程5、不要将数组声明为public static final6、不要创建一些不使用的对象,不要导入一些不使用的类7、程序运行过程中避免使用反射8 、使用数据库连接池和线程池9、容器初始化时尽可能指定长度10、ArrayList随机...
2018-12-14 10:36:03 249
原创 JVM优化(6)jvm字节码分析
目录:1、JVM字节码1.1、通过javap命令查看class文件的字节码内容2.2、常量池2.3、描述符2.3.1、字段描述符2.3.2、方法描述符2.4、解读方法字节码2.5 、研究 i++ 与 ++i 的不同2.5.1、查看class字节码2.5.2、对比2.6、字符串拼接2.7、小结1、JVM字节码对于程序本身的优化,可以借鉴很多前辈...
2018-12-14 10:18:52 293
原创 JVM优化(5)GC机制之垃圾收集器以及内存分配
目录:3、垃圾收集器以及内存分配3.1、串行垃圾收集器3.1.1、编写测试代码3.1.2、设置垃圾回收为串行收集器3.2、并行垃圾收集器3.2.1、ParNew垃圾收集器3.2.2、ParallelGC垃圾收集器3.3 、CMS垃圾收集器3.3.1、测试3.4、G1垃圾收集器(重点)3.4.1、原理3.4.2、Young GC3.4.3、Mixe...
2018-12-14 08:55:58 815
原创 JVM优化(4)GC机制之垃圾回收的常见算法
目录:1、什么是垃圾回收?1.1、C/C++语言回收1.2、Java语言的垃圾回收2、垃圾回收的常见算法2.1、引用计数法2.1.1、原理2.1.2、优缺点2.1.3、什么是循环引用?2.2、标记清除法2.2.1、原理2.2.2、优缺点2.3、标记压缩法2.3.2 、优缺点2.4、复制算法2.4.1 、JVM中年轻代内存空间2.4.2...
2018-12-14 08:55:20 304
转载 10大主流压力测试工具推荐
在移动应用和Web服务正式发布之前,除了进行必要的功能测试和安全测试,为了保证互联网产品的服务交付质量,往往还需要做压力/负载/性能测试。然而很多传统企业在试水互联网+的过程中,往往由于资源或产品迭代速度等原因忽视了这一块工作,导致新产品上线之后频繁出现卡顿等严重影响用户体验的问题。那么互联网产品为什么要进行压力/负载/性能测试,又有哪些工具帮我们实现呢,本文将为您细说端详。1、压力/负载/性...
2018-12-13 11:37:22 691
原创 JVM优化(3)jmap的使用以及内存溢出分析
前面通过jstat可以对jvm堆的内存进行统计分析,而jmap可以获取到更加详细的内容,如:内存使用情况的汇总、对内存溢出的定位与分析。1、查看内存使用情况 [root@node01 ~]# jmap ‐heap 6219Attaching to process ID 6219, please wait...Debugger attached successfully.Serve...
2018-12-13 10:48:36 476
原创 JVM优化(2)jvm的内存模型
1、jdk1.7的堆内存模型1.1、Young 年轻区(新生代)Young区被划分为三部分,Eden区和两个大小严格相同的Survivor区,其中,Survivor区间中,某一时刻只有其中一个是被使用的,另外一个留做垃圾收集时复制对象用,在Eden区间变满的时候, GC就会将存活的对象移到空闲的Survivor区间中,根据JVM的策略,在经过几次垃圾收集后,任然存活于Survivor...
2018-12-13 10:10:29 249
原创 JVM优化(1)jvm运行参数
1、为什么要进行JVM优化?在本地开发环境中我们很少会遇到需要对jvm进行优化的需求,但是到了生产环境,我们可能将有下面的需求:运行的应用 “卡住了”,日志不输出,程序没有反应 服务器的 CPU负载突然升高 在多线程应用下,如何分配线程的数量? 。。。。。对jvm优化分析解决在生产环境中所遇到的各种“棘手”的问题。在jvm中有很多的参数可以进行设置,这样可以让...
2018-12-13 09:02:28 834
转载 git学习总结
1、git基础介绍:https://blog.csdn.net/u014079773/article/details/494971812、git初级使用教程https://blog.csdn.net/u014079773/article/details/495559893、git常用命令https://blog.csdn.net/u014079773/article/det...
2018-12-12 15:16:51 157
原创 (4)Dockerfile与Docker私有仓库
目录:1、Dockerfile1.1、什么是Dockerfile1.2、常用命令1.3、使用脚本创建镜像2、Docker私有仓库2.1、私有仓库搭建与配置2.2、镜像上传至私有仓库1、Dockerfile1.1、什么是DockerfileDockerfile是由一系列命令和参数构成的脚本,这些命令应用于基础镜像并最终创建一个新的镜像。1、对于开发人员:可...
2018-12-12 08:34:19 838
原创 (3)Docker应用部署、迁移与备份
目录:1、应用部署1.1、MySQL部署1.2、tomcat部署1.3、Nginx部署1.4、Redis部署2、迁移与备份2.1、容器保存为镜像2.2、镜像备份2.3、镜像恢复与迁移1、应用部署1.1、MySQL部署(1)拉取mysql镜像docker pull centos/mysql-57-centos7(2)创建容器docke...
2018-12-12 08:33:57 641
转载 (2)Docker常用命令介绍
目录:1、镜像相关命令1.1、查看镜像1.2、搜索镜像1.3、拉取镜像1.4、删除镜像2、容器相关命令2.1、查看容器2.2、创建与启动容器2.3、停止与启动容器2.4、文件拷贝2.5、目录挂载2.6、查看容器IP地址2.7、删除容器docker常用命令原理图:1、镜像相关命令1.1、查看镜像docker images...
2018-12-12 08:33:05 273 1
原创 (1)Docker简介及安装
推荐阅读:https://www.cnblogs.com/clsn/p/8410309.html#auto_id_59目录:1、Docker简介1.1、什么是虚拟化1.2、什么是Docker1.3、容器与虚拟机比较1.4、Docker 组件1.4.1、Docker服务器与客户端1.4.2、Docker镜像与容器1.4.3、Registry(注册中心)2、Do...
2018-12-11 23:54:12 217
原创 Gitlab安装以及使用
目录:1、Centos7安装部署gitlab服务器1.1、安装和配置必须的依赖1.2、添加gitlab安装包,并安装到服务器上1.3、修改gitlab配置文借鉴指定服务器的ip和自定义端口1.4、对GitLab进行重配置(这一步也是启动GitLab)1.5、查看启动状态2、GitLab使用2.1、访问GitLab界面2.2、创建新的工程2.3、gitlab仓...
2018-12-11 10:08:30 2020
原创 (3)Kafka HA
1、CAP理论Consistency通过某个节点的写操作结果对后面通过其它节点的读操作可见 如果更新数据后,并发访问情况下可立即感知该更新,称为强一致性 如果允许之后部分或者全部感知不到该更新,称为弱一致性 若在之后的一段时间(通常该时间不固定)后,一定可以感知该更新,称为最终一致性Availability任何一个没有发生故障的节点必须在有限的时间内返回合理的结果Partit...
2018-12-11 08:58:44 235
原创 (2)Kafka架构分析
1、Kafka架构2、Topic & Partition2.1、Topic:逻辑概念,同一个Topic的消息可分布在一个或多个节点(Broker)上 一个Topic包含一个或者多个Partition 每条消息都属于且仅属于一个Topic Producer发布数据时,必须指定将该消息发布到哪一个Topic Consumer订阅消息时,也必须指定订阅哪个Topic的消息...
2018-12-11 08:58:32 226
原创 (1)Kafka简介
1、消息系统分类2、消息系统适用场景解耦 ——各位系统之间通过消息系统这个统一的接口交换数据,无须了解彼此的存在 冗余 ——部分消息系统具有消息持久化能力,可规避消息处理前丢失的风险 扩展 ——消息系统是统一的数据接口,各系统可独立扩展 峰值处理能力 ——消息系统可顶住峰值流量,业务系统可根据处理能力从消息系统中获取并处理对应量的请求 可恢复性 ——系统中部分组件失效并不会影响...
2018-12-11 08:58:13 189
转载 10大经典排序算法动画
代码实现及动画演示:https://www.cnblogs.com/guoxiangyue/archive/2018/08/13/9468453.htmlhttps://blog.csdn.net/wq_1995/article/details/81937926排序算法是《数据结构与算法》中最基本的算法之一。排序算法可以分为内部排序和外部排序。内部排序是数据记录在内存中进行排序。...
2018-12-10 10:30:15 665
转载 HTTP 协议简介
引言HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网服务器传输超文本到本地浏览器的传送协议。HTTP 是基于 TCP/IP 协议通信协议来传递数据(HTML 文件、图片文件、查询结果等)。它不涉及数据包(packet)传输,主要规定了客户端和服务器之间的通信格式,默认使用80端口。一、Http的特点1、简单快速:客户...
2018-12-10 10:12:33 204
原创 SpringCloud(七)Zuul路由网关
1、Zuul概述1.1、什么是服务网关?服务网关是在微服务前边设置一道屏障,请求先到服务网关,网关会对请求进行过滤、校验、路由等处理。有了服务网关可以提高微服务的安全性,校验不通过的请求将被拒绝访问。前边介绍的Ribbon客户端负载均衡技术可以不用经过网关,因为通常使用Ribbon完成微服务与微服务之间的内部调用,而对那些对外提供服务的微服务,比如:用户登录、提交订单等,则必须经过网关...
2018-12-08 17:30:54 284
转载 Linux curl命令详解
命令:curl在Linux中curl是一个利用URL规则在命令行下工作的文件传输工具,可以说是一款很强大的http命令行工具。它支持文件的上传和下载,是综合传输工具,但按传统,习惯称url为下载工具。语法:# curl [option] [url]常见参数:-A/--user-agent <string> 设置用户代理发送给服务器-b/--coo...
2018-12-07 16:26:32 164
原创 SpringCloud(六)Hystrix断路器《2》(服务监控hystrixDashboard)
1、服务监控hystrixDashboard1.1、概述除了隔离依赖服务的调用以外,Hystrix还提供了准实时的调用监控(Hystrix Dashboard),Hystrix会持续地记录所有通过Hystrix发起的请求的执行信息,并以统计报表和图形的形式展示给用户,包括每秒执行多少请求多少成功,多少失败等。Netflix通过hystrix-metrics-event-stream项目实现...
2018-12-06 10:38:16 266
原创 SpringCloud(六)Hystrix断路器《1》(服务熔断、服务降级)
1、Hystrix概述1.1、分布式系统面临的问题复杂分布式体系结构中的应用程序有数十个依赖关系,每个依赖关系在某些时候将不可避免地失败。服务雪崩:多个微服务之间调用的时候,假设微服务A调用微服务B和微服务C,微服务B和微服务C又调用其它的微服务,这就是所谓的“扇出”。如果扇出的链路上某个微服务的调用响应时间过长或者不可用,对微服务A的调用就会占用越来越多的系统资源,进而引起系统崩...
2018-12-05 23:41:42 295 2
原创 RestTemplate源码解析及使用详解
一、RestTemplate服务调用在前面Eureka的服务注册与发现中,我们使用了一个非常有用的对象RestTemplate。该对象会使用Ribbon的自动化配置,同时通过配置@LoadBalanced还能开启客户端负载均衡。这里我们详细介绍RestTemplate针对不同请求类型和参数类型的服务调用实现。什么是RestTemplate?RestTemplate是Spring提供的...
2018-12-05 15:40:34 1343
原创 SpringCloud(五)Feign负载均衡
1、Feign概述1.1、Feign官网解释http://projects.spring.io/spring-cloud/spring-cloud.html#spring-cloud-feignFeign是一个声明式WebService客户端。使用Feign能让编写WebService客户端更加简单,他的使用方法是定义一个接口,然后再上面添加注解,同时也支持JAX-RS标准的注解。...
2018-12-05 09:58:27 236
原创 SpringCloud(四)Ribbon负载均衡《2》(核心组件IRule及自定义Ribbon负载均衡策略)
1、Ribbon核心组件IRule1.1、解析IRule自带的7种算法IRule:根据特定算法从服务列表中选取一个要访问的服务。IRule实现类如下:RandomRule:随机,使用Random对象从服务列表中随机选择一个服务 RoundRobinRule:轮训策略。默认策略,同时也是更高级rules的回退策略 RetryRule: 轮询 + 重试。先使用RoundRob...
2018-12-05 00:03:57 782
转载 vmware 虚拟机三种网络模式详解
由于linux目前很热门,越来越多的人在学习linux,但是买一台服务放家里来学习,实在是很浪费。那么如何解决这个问题?虚拟机软件是很好的选择,常用的虚拟机软件有vmware workstations和virtual box等。在使用虚拟机软件的时候,很多初学者都会遇到很多问题,而vmware的网络连接问题是大家遇到最多问题之一。在学习交流群里面,几乎每天都会有同学问到这些问题,写这篇详解也是因为...
2018-12-04 10:22:12 154
原创 ls was unable to load class org.springframework.tooling.ls.eclipse.commons.YamlGenericEditor.
启动eclipse打开application.properties报:eclipse中无法编辑yml文件Plug-in org.springframework.tooling.boot.ls was unable to load class org.springframework.tooling.ls.eclipse.commons.YamlGenericEditor.org.eclip...
2018-12-03 10:22:35 4624 1
转载 阿里重磅开源在线分析诊断工具Arthas(阿尔萨斯)
github地址:ArthasEnglish version goes here.Arthas 是Alibaba开源的Java诊断工具,深受开发者喜爱。当你遇到以下类似问题而束手无策时,Arthas可以帮助你解决:这个类从哪个 jar 包加载的?为什么会报各种类相关的 Exception? 我改的代码为什么没有执行到?难道是我没 commit?分支搞错了? 遇到问题无法...
2018-12-03 09:45:30 633
原创 SpringCloud(四)Ribbon负载均衡《1》(Ribbon配置及负载均衡)
目录1、Ribbon概述1.1、Ribbon是什么?1.2、负载均衡(LoadBalancer)1.2.1、集中式负载均衡:1.2.3、进程内LB:1.3、Ribbon主要组件1.3.1、ServerList:定义获取服务器列表1.3.2、ServerListFilter:对ServerList服务器列表进行二次过滤1.3.3、ServerListUpdater...
2018-12-03 09:21:20 394
转载 鸡汤帖(睡前必读)
一、你总要为了梦想,全力以赴一次。管它什么流言蜚语,做自己。赢,也要赢的漂亮。晚安!二、别总是抱怨生活不够幸运,是你欠了生活一份努力,每一个你讨厌的现在,都有一个不够努力的曾经,未来美不美,取决于你现在拼不拼。晚安!三、世界上唯一可以不劳而获的就是贫穷,唯一可以无中生有的是梦想,没有哪件事是不动手就可以实现的。世界虽残酷,但只要你愿意走,总会有路!晚安!四、努力,是为了跳出你厌恶的...
2018-12-02 23:56:57 1284
原创 SpringCloud(三)Eureka服务注册与发现《4》(CAP原则和Eureka,Zookeeper的区别)
目录:1、几种常见注册中心区别2、在分布式数据库中的CAP原理CAP+BASE2.1、传统的ACID分别是什么?2.2、什么是CAP?2.3、CAP图谱分析2.4、CAP的3进22.5、与BASE的关系3、作为服务注册中心,Eureka 比Zookeeper好在哪?3.1、Zookeeper 保证的是CP(一致性和分区容错性)3.2、Eureka 保证的是A...
2018-12-02 19:04:41 511
WebService之CXF开发指南
2018-08-07
POI实战总结
2018-08-07
FastDFS图片服务器详细介绍文档
2018-08-06
EhCache使用
2018-08-06
RESTful-API设计原则与规范
2018-04-13
ProtocolBuffer详细使用文档
2018-04-13
sql经典语句
2018-04-09
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人