自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(287)
  • 资源 (7)
  • 收藏
  • 关注

原创 解决 IDEA中Spring boot启动类注解@SpringBootApplication报红

创建工程后报红提示无法解析符号@SpringBootApplication,按Ctrl鼠标单击找不到所在类解决办法:删掉本地文件夹中Maven仓库 repository\org\springframework\boot 目录下的spring-boot-autoconfigure 文件夹,Idea工具重启,@SpringBootApplication报红问题解决...

2021-10-13 10:47:02 6496 3

转载 idea解决Command line is too long. Shorten command line for ServiceStarter or also for Application报错

idea解决Command line is too long. Shorten command line for ServiceStarter or also for Application报错找到 .idea\workspace.xml;如果找不到.idea是就更好显示目录,就能找到。找到<component name="PropertiesComponent">,在里面添加<property name="dynamic.classpath" value="t..

2021-05-17 16:43:10 6046 1

转载 springcloud(十)-Zuul微服务网关

为什么要使用微服务网关前面的文章我们介绍了,Eureka用于服务的注册于发现,Feign支持服务的调用以及均衡负载,Hystrix处理服务的熔断防止故障扩散,Spring Cloud Config服务集群配置中心,似乎一个微服务框架已经完成了。我们还是少考虑了一个问题,外部的应用如何来访问内部各种各样的微服务呢?如果让客户端直接与各个微服务通信,会有以下问题:客户端会多次请求不同的...

2019-09-03 11:07:16 305

转载 springcloud(十一)-Zuul聚合微服务

前言我们接着上一节。在许多场景下,外部请求需要查询Zuul后端的多个微服务。比如一个电影售票手机APP,在购票订单页上,既需要查询“电影微服务”获得电影相关信息,又需要查询“用户微服务”获得当前用户信息。如果让手机端直接请求各个微服务(即使使用Zuul进行转发),那么网络开销,流量耗费,耗费时长可能都无法令人满意。那么对于这种场景,可使用Zuul聚合微服务请求——手机APP发送一次请求给Zuu...

2019-09-03 10:37:30 236

转载 Docker的4种网络模式

我们在使用docker run创建Docker容器时,可以用--net选项指定容器的网络模式,Docker有以下4种网络模式:· host模式,使用--net=host指定。· container模式,使用--net=container:NAME_or_ID指定。· none模式,使用--net=none指定。· bridge模式,使用--net=bridge指定,默认设置。下...

2019-03-14 10:34:56 229

转载 JAVA学习(字符操作类Character、String、StringBuffer)(转)

在java中有三个类负责对字符的操作:Character、String、StringBuffer。其中Character类是对单个字符进行操作,String是对一个字符序列的操作,StringBuffer是对一串字符进行操作。 Character java中Character和char的区别:Character是类,char是基本数据类型.char可以自动包装成Char...

2019-02-26 15:42:53 1206

原创 JAVA常用的工具类使用

1、判断Object是否是String或者是Char类型(来自于json-lib,工具类:JSONUtils) /** * Tests if obj is a String or a char */ public static boolean isString( Object obj ) { if( (obj instanceof String)...

2019-02-26 15:37:13 242

转载 Spring Cloud Eureka REST 接口

Eureka 作为注册中心,其本质是存储了每个客户端的注册信息,Ribbon在转发的时候会获取注册中心的服务列表,然后根据对应的路由规则来选择一个服务给Feign来进行调用。如果我们不是Spring Cloud技术选型,也想用Eureka可以吗?完全可以如果不是Spring Cloud技术栈个人推荐用zk之类的会方便些,当然用Eureka也是可以的这样的话就涉及到如何注册信息,获取注册...

2018-12-11 19:16:48 310

转载 置TOMCAT及httpClient的keepalive以高效利用长连接

配置TOMCAT及httpClient的keepalive以高效利用长连接 总所周知http1.1(http1.0不是标准,依服务器而定)是支持长连接的,长连接能够保证服务器和客户端的socket能够高效利用,减少握手等额外的开销。httpClient在正常情况下会带上Connection: keep-alive表示我是支持长连接的,当完成一个请求后,视情况决定是否关闭连接。 正常情况下,服务...

2018-12-11 14:27:00 2891

转载 Hystrix使用说明,配置参数说明

一、什么情况下会触发fallback方法?二、fallback方法在什么情况下会抛出异常三、hystrix dashboard界面监控参数四、配置信息(default或HystrixCommandKey)最常用的几项超时时间(默认1000ms,单位:ms) (1)hystrix.command.default.execution.isolation.thread.ti...

2018-11-22 15:17:32 1168

转载 Hystrix 参数详解

hystrix.command.default和hystrix.threadpool.default中的default为默认CommandKeyCommand PropertiesExecution相关的属性的配置: hystrix.command.default.execution.isolation.strategy 隔离策略,默认是Thread, 可选Thread|Semaph...

2018-11-21 11:14:35 204

转载 Hystrix-Dashboard仪表盘

Hystrix Dashboard,它主要用来实时监控Hystrix的各项指标信息。通过Hystrix Dashboard反馈的实时信息,可以帮助我们快速发现系统中存在的问题。下面通过一个例子来学习。一、新建一个Spring Cloud 项目,命名为hystrix-dashboard1.1在pom.xml引入相关的依赖&lt;dependency&gt; &lt;groupI...

2018-11-16 10:43:19 241

转载 记一次feign的问题排查(短路、线程池、队列)

昨天开了一百个线程采用feign去请求第三方项目,结果报错,出现了短路,大概是下面这样的。(feign整合了hystrix并且自动打开了熔断器)Hystrix circuit short-circuited and is OPEN。。。。。百度了一下,几乎没人碰到这个问题,于是去谷歌了,发现还真有人碰到这个问题。引起这个问题的原因是在一个滚动窗口内,失败了二十个(默认),就会发生短路,...

2018-11-15 11:43:01 7861

转载 Http持久连接与HttpClient连接池

一、背景  HTTP协议是无状态的协议,即每一次请求都是互相独立的。因此它的最初实现是,每一个http请求都会打开一个tcp socket连接,当交互完毕后会关闭这个连接。  HTTP协议是全双工的协议,所以建立连接与断开连接是要经过三次握手与四次挥手的。显然在这种设计中,每次发送Http请求都会消耗很多的额外资源,即连接的建立与销毁。  于是,HTTP协议的也进行了发展,通过持久连接...

2018-11-08 10:55:46 846

转载 Feign 源码解析

解决两个问题:请求是怎么转到 Feign 的 Feign 是怎么工作的前者跟 Spring Boot 有关,但是也关系到了后者,即通过前者才能发现是创建了哪些 Bean 或者代理来处理请求。从注解开始看,使用 Feign 涉及到了两个注解,一个是@EnableFeignClients,用来开启 Feign,另一个是@FeignClient,用来标记要用 Feign 来拦截的请求接口。...

2018-11-07 17:39:42 202

转载 Spring @Conditional注解的使用

http://blog.csdn.net/mn960mn/article/details/51190590 spring Boot的强大之处在于使用了Spring 4框架的新特性:@Conditional注释,此注释使得只有在特定条件满足时才启用一些配置。下面来介绍如何使用Condition 首先写一个类 [java] view plain copypackage ...

2018-11-07 15:35:01 235

转载 Spring @Conditional注解 详细讲解及示例

前言:@Conditional是Spring4新提供的注解,它的作用是按照一定的条件进行判断,满足条件给容器注册bean。@Conditional的定义://此注解可以标注在类和方法上@Target({ElementType.TYPE, ElementType.METHOD})@Retention(RetentionPolicy.RUNTIME) @Documentedpubli...

2018-11-07 14:35:38 410

转载 Ribbon的饥饿加载(eager-load)模式

目前测试的时候发现在服务都成功启动的时候第一次访问会有报错的情况发生,但是之后又恢复正常访问通过查询相关文档,了解到要解决此问题那么让需要实例化的类提前创建,而不是在第一次调用的时候创建摘自DD的博客:主要是Ribbon进行客户端负载均衡的Client并不是在服务启动的时候就初始化好的,而是在调用的时候才会去创建相应的Client,所以第一次调用的耗时不仅仅包含发送HTTP请求的时间,...

2018-11-07 10:51:54 644

转载 Hystrix的threadPool属性解读

一 介绍Thread Pool Properties:用来控制Hystrix命令所属线程池的配置coreSize:该参数用来设置执行命令线程池的核心线程数,该值也是命令执行的最大并发量。maximumSize:该参数用来设置线程池的最大队列大小。queueSizeRejectionThreshold:该参数用来为队列设置拒绝阈值。通过该参数,即使队列没有达到最大值也能拒绝请求。...

2018-11-06 20:04:47 1017

转载 SrpingCloud的压测

Spring Cloud Feign 性能优化https://www.jianshu.com/p/fe1c4412de7fspringcloud与dubbo的性能对比https://blog.csdn.net/moonpure/article/details/80729558 Feign正确的使用姿势和性能优化注意事项https://www.jianshu.com/p/19...

2018-11-06 15:57:10 323

原创 使用Springboot打包为war部署于Tomcat7中报错

问题:使用Springboot打包为war部署于Tomcat7中报错java.lang.NoSuchMethodError: org.apache.tomcat.util.res.StringManager.getManager(Ljava/lang/Class;)Lorg/apache/tomcat/util/res/StringManager... 原因:Springboo...

2018-11-05 09:51:48 1734 1

转载 CentOS 7 安装 redis3.0.7 详细步骤

1、Redis源码获取 进入Redis官网获取Redis最新稳定版下载地址 或通过wget命令下载 Redis 源代码。2、Redis编译 通过tar -xvf redis-3.0.7.tar.gz命令解压下载Redis源码压缩包redis-3.0.7.tar.gz; 2、编译Redis。通过cd redis-3.0.7/进入Redis源码目录内,执行make编译Redis;...

2018-11-02 16:26:24 441

原创 IDEA使用Maven命令

1 点击"Edit Configurations"2 进入Run/Debug Configurations窗口,点击左上角的"+",在弹出的"Add New Configuration"列表中选择"maven".3.为新的configuration输入名称和执行的命令,点击确认4.配置完成后,新的configuration会成为默认的configuration,直接点击运行...

2018-11-01 20:20:25 778

原创 Spring Cloud随机端口

为Spring Cloud的应用实用随机端口非常简单,主要有两种方法:设置server.port=0,当应用启动的时候会自动的分配一个随机端口,但是该方式在注册到Consul的时候会一个问题:所有实例都使用了同样的实例名(如:Lenovo-test:hello-service:0),这导致只出现了一个实例。所以,我们还需要修改实例ID的定义,让每个实例的ID不同,比如使用随机数来配置实例ID:...

2018-11-01 19:37:30 1317

转载 process information unavailable 的解决办法

有时候在centos上查看java进程时,会遇到process information unavailable 的情况,如下图:不同账号之间kill进程时,可能会造成这种现象(比如:deploy用户启动了一个java进程,但是用root用户去kill,虽然杀掉了,但是查看进程时偶尔就会出现) 解决办法:cd /tmp 进到该目录,然后ls查看下,通常会遇到很多hsperfdata...

2018-11-01 11:30:52 11092

转载 tomcat 8.5.9.0 解决catalina.out过大的问题

先吐嘈一下tomcat这个项目,日志切割这么常见的功能,tomcat这种知名开源项目默认居然不开启,生产环境跑不了几天,磁盘就满了,而且很多网上流传的方法,比如修改conf/logging.properties文件,将级别设置成OFF,我试了好象并不管用(tomcat 8.5.9.0版本 + centos 6.5 + jdk1.8环境)正确姿势:1、下载 https://mirrors.t...

2018-11-01 11:22:47 727

转载 利用java8对设计模式的重构

java8中提供的很多新特性可以用来重构传统设计模式中的写法,下面是一些示例:一、策略模式上图是策略模式的类图,假设我们现在要保存订单,OrderService接口定义要做什么,而NoSqlSaveOrderStragegy以及MySqlSaveOrderStrategy则提供了二种策略,分别是保存到nosql数据库,以及传统的mysql关系型数据库,最后在OrderServiceEx...

2018-11-01 11:17:22 195

转载 maven学习(下)利用Profile构建不同环境的部署包

接上回继续,项目开发好以后,通常要在多个环境部署,象我们公司多达5种环境:本机环境(local)、(开发小组内自测的)开发环境(dev)、(提供给测试团队的)测试环境(test)、预发布环境(pre)、正式生产环境(prod),每种环境都有各自的配置参数,比如:数据库连接、远程调用的ws地址等等。如果每个环境build前手动修改这些参数,显然太不fashion.maven早就考虑到了这些问题,...

2018-10-30 17:26:47 143

转载 SpringBoot生成的jar包后台执行

一、java -jar直接运行方式一java -jar app.jar特点:当前ssh窗口被锁定,可按CTRL + C打断程序运行,或直接关闭窗口,程序退出那如何让窗口不锁定?方式二 &amp;java -jar app.jar &amp;&amp;代表在后台运行。特定:当前ssh窗口不被锁定,但是当窗口关闭时,程序中止运行。继续改进,如何让窗口关闭时,程序仍然运行?...

2018-10-30 15:15:40 293

转载 springboot jar 后台运行 sh

本文通过创建.sh文件启动jar,并在后台运行。假如需要运行的jar为business-callpush-1.1.jar,系统linux centos6.91、新建一个文件夹callpush 2、在callpush上新建bin目录3、将business-callpush-1.1.jar移到bin下4、在callpush目录下创建软连接 ln -s bin/busines...

2018-10-30 14:57:45 279

转载 记一次线上请求缓慢问题处理

9月的某天晚上,接到通知,线上环境请求非常慢,页面打开要1分钟,遂按照系统参数,数据库,应用,web服务器状态逐步排查的步骤,最终定位到问题并得以解决,此处做个检查流程梳理,供大家参考。问题描述:正式环境请求响应异常慢,页面打开需要1分钟左右时间等。第一步 系统参数检查 1 df -h 检查硬盘空间 重点看 Use这一栏,可以看到空间足够,硬盘空间ok2 free 检查内存使用...

2018-10-30 12:03:04 709

转载 如何使用jstack分析线程状态

背景记得前段时间,同事说他们测试环境的服务器cpu使用率一直处于100%,本地又没有什么接口调用,为什么会这样?cpu使用率居高不下,自然是有某些线程一直占用着cpu资源,那又如何查看占用cpu较高的线程?当然一个正常的程序员不会写出上述代码,这里只是为了让一个线程占用较高的cpu资源。top命令在linux环境下,可以通过top命令查看各个进程的cpu使用情况,默认按cpu使...

2018-10-30 11:48:04 221

转载 Linux查看某个进程的线程

线程是现代操作系统上进行并行执行的一个流行的编程方面的抽象概念。当一个程序内有多个线程被叉分出用以执行多个流时,这些线程就会在它们之间共享特定的资源(如,内存地址空间、打开的文件),以使叉分开销最小化,并避免大量高成本的IPC(进程间通信)通道。这些功能让线程在并发执行时成为一个高效的机制。在Linux中,程序中创建的线程(也称为轻量级进程,LWP)会具有和程序的PID相同的“线程组ID”。然...

2018-10-30 10:22:11 5856

转载 解读Raft(一 算法基础)

最近工作中讨论到了Raft协议相关的一些问题,正好之前读过多次Raft协议的那paper,所以趁着讨论做一次总结整理。 我会将Raft协议拆成四个部分去总结:  算法基础 选举和日志复制 安全性 节点变更  这是第一篇:《解读Raft(一 算法基础)》 什么是RAFT分布式系统除了提升整个体统的性能外还有一个重要特征就是提高系统的...

2018-10-30 09:39:24 194

转载 IDEA新建MAVEN项目时速度缓慢

原因IDEA根据maven archetype的本质,其实是执行mvn archetype:generate命令,该命令执行时,需要指定一个archetype-catalog.xml文件。该命令的参数-DarchetypeCatalog,可选值为:remote,internal  ,local等,用来指定archetype-catalog.xml文件从哪里获取。默认为remote,即从...

2018-10-29 20:21:07 225

原创 Linux下查看/管理当前登录用户及用户操作历史记录

一、查看及管理当前登录用户1、使用w命令查看登录用户正在使用的进程信息,w命令用于显示已经登录系统的用户的名称,以及他们正在做的事。该命令所使用的信息来源于/var/run/utmp文件。w命令输出的信息包括:用户名称 用户的机器名称或tty号 远程主机地址 用户登录系统的时间 空闲时间(作用不大) 附加到tty(终端)的进程所用的时间(JCPU时间) 当前进程所用时间(PC...

2018-10-29 19:59:07 1356 1

转载 linux清空日志文件内容 (转)

随着系统运行时间越来越长,日志文件的大小也会随之变得越来越大。如果长期让这些历史日志保存在系统中,将会占用大量的磁盘空间。用户可以直接把这些日志文件删除,但删除日志文件可能会造成一些意想不到的后果。为了能释放磁盘空间的同时又不影响系统的运行,可以使用echo命令清空日志文件的内容,命令格式如下所示。 echo &gt; 日志文件 例如要清空/var/log/message日志文件的内容,可以使...

2018-10-29 17:46:47 817

转载 服务器是否支持断点续传

通常情况下,Web服务器(如Apache)会默认开启对断点续传的支持。因此,如果直接通过Web服务器来提供文件的下载,可以不必做特别的配置,即可享受到断点续传的好处。断点续传是在发起HTTP请求的时候加入RANGE头来告诉服务器客户端已经下载了多少字节。等所有这些请求都返回之后,再把得到的内容一块一块的拼接起来得到完整的资源。你可以通过以下的命令来测试一下。Linux 测试服务器是否支...

2018-10-29 17:43:46 895

转载 SAR命令

前面已经介绍了 vmstat和top命令的解析及使用,下面我们来学习一个更重要的命令sarsar命令可以通过参数单独查看系统某个局部的使用情况sar 命令行的常用格式:sar [options] [-A] [-o file] t [n]在命令行中,n 和t 两个参数组合起来定义采样间隔和次数,t为采样间隔,是必须有的参数,n为采样次数,是可选的,默认值是1,-o file表示将命令结...

2018-10-29 17:32:50 421

转载 Linux系统中的load average

1. load average 定义linux系统中的Load对当前CPU工作量的度量。简单的说是进程队列的长度。Load Average 就是一段时间 (1 分钟、5分钟、15分钟) 内平均 Load 。通过系统命令"w"查看当前load average情况[appdeploy@CNSZ22PL0088:/home/appdeploy]$w 10:38:55 up 217 d...

2018-10-29 17:28:48 103

Chrome插件Postman_v4.1测试Http接口

Chrome插件Postman_v4.1测试Http接口,支持HTTP的GET和POST、DELETE等提交

2018-08-27

kafka网上三种监控开源软件

三种工具分别是Kafka Web Conslole、Kafka Manager、KafkaOffsetMonitor

2017-08-29

Netty epool引入Soket多个进程监听一个服务端口

Netty epool引入Soket多个进程监听一个服务端口

2016-04-22

epel-release-6-8.noarch

解决yum install nload 安装过程中可能会抛出异常,如下 Setting up Install Process No package git available. Nothing to do

2016-04-01

centos安装telnet插件与说明

centos直接安装telnet-server-0.17-47.el6.x86_64.rmp会报错 “error: Failed dependencies:xinetd is needed by 解决办法: 1、先安装xinetd包 rpm -ivh xinetd-2.3.14-10.el5.x86_64.rpm 2、启动xinetd service xinetd start 3、启用telnet chkconfig telnet on 4、安装telnet客户端 rpm -ivh telnet-clinet-0.17-47.el6.x86_64.rpm 5、重启xinetd service xinetd start

2016-02-01

centos安装telnet使用

centos直接安装telnet-server-0.17-47.el6.x86_64.rmp会报错 “error: Failed dependencies:xinetd is needed by 解决办法: 1、先安装xinetd包 rpm -ivh xinetd-2.3.14-10.el5.x86_64.rpm 2、启动xinetd service xinetd start 3、启用telnet chkconfig telnet on 4、安装telnet客户端 rpm -ivh telnet-clinet-0.17-47.el6.x86_64.rpm 5、重启xinetd service xinetd start

2015-10-19

netty整理的源码

使用了netty等技术实现TCP\UDP的通信协议,和实现HTTP rest接口访问,

2014-11-25

空空如也

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

TA关注的人

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