自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Qizonghui的博客

大牛路上

  • 博客(74)
  • 资源 (5)
  • 收藏
  • 关注

原创 springCloud微服务—服务接口调用OpenFeign

1.Feign与OpenFeign feign是Spring Cloud组件中的一个轻量级RESTFul的HTTP服务客户端feign内置了Ribbon,用来做客户端负载均衡,去调用服务注册中心的服务,Feign的使用方式是:使用Feign的注解定义接口,调用这个接口,就可以调用注册中心的服务 2.使用OpenFeign项目我们还是使用之前的项目2.1、在springcloud-demo-consumer引入openfeign依赖包;修改配置文件

2022-06-15 18:15:48 421 1

原创 springCloud微服务—Ribbon负责均衡器

上一篇:springCloud微服务—初始服务注册发现与配置中心之Consul<spring-cloud.version>Hoxton.SR8</spring-cloud.version><spring-boot.version>2.3.0.RELEASE</spring-boot.version>为什么要用负载均衡?随着互联网的发展,公司的业务流量越来越大,业务处理逻辑也越来越复杂,单台机器的性能已经跟不上公司业务发展,所以单机出现了很多

2022-06-15 16:38:47 234

原创 springCloud微服务—初始服务注册发现与配置中心之Consul

上一篇:springCloud微服务—初识服务注册中心之Eureka<spring-cloud.version>Hoxton.SR8</spring-cloud.version><spring-boot.version>2.3.0.RELEASE</spring-boot.version>1.何为spring Cloud ConsulspringCloud Consul为spring boot应用提供了Consul支持,Consul即可

2022-05-25 21:18:49 320

原创 springCloud微服务—初识服务注册中心之Eureka

上一篇:从一个简单的springCloud项目开始—搭建一个微服务框架1.初始Eureka说到Eureka就不得不说说服务治理 和服务注册和发现1.1、服务治理在微服务盛行的今天,服务的颗粒度被拆分的很细,同时服务数量也在增长,在原生中,服务治理更多的情况下与容器调度平台结合,形成一站式的自动化调度平台;不管使用什么调度系统,服务治理的原理和范畴是不会改变的,只是不同的实现方式;服务治理主要包括了服务发现,负载均衡,限流,熔断,超时,重试,服务追踪等。为什么需要服务治理?在那些方面的需要

2022-05-22 22:36:48 273

原创 从一个简单的springCloud项目开始—搭建一个微服务框架

上篇文章了解了微服务,这篇我们就是做简单实践,微服务是将不同业务放到不同服务中,然后各个服务间互相调用。一般我们都会借助maven来做项目搭建,通常我们都会使用父子工程来搭建一个框架,父工程主要来实现,统一管理所以子工程(子模块),以及相关版本统一管理和依赖,可以统一编译;一、简单了解maven父子工程父子工程主要是利用了maven的继承,依赖传递为我们省去了一些重复配置,通常统一的配置都会在父工程中,为子模块提供使用,这样就不需要每个子模块都去做配置。其实在这个过程中也有很多小伙伴会有一些疑问,例

2022-05-21 02:16:56 272

原创 什么是微服务,为什么是微服务,什么是springCloud

我们都一直说单体应用,分布式,微服务;在技术路线上我们都经历或大或小的技术改革,技术架构的演变,常见的有:单体应用,集群应用(部署多个单体应用),分布式结构,soa架构(俗称服务化,也就是常说的面向接口开发),微服务架构近几年来,随着互联网的发展,对于软件交付与迭代速度和效率的要求不断提高,技术更新不断提升,微服务凭借灵活扩展,独立部署等优势,成为了分布式架构中的主流。任何应用主体中,业务初期都是很简单,通常我们都会用单体应用去实现,不断的随着公司业务的逐步扩张发展,产品思想也变的越来越复杂,单体应用的

2022-05-20 02:32:24 751

原创 GIT进阶—Git Flow

Git Flow是构建在Git之上的一个组织软件开发活动的模型,是在Git之上构建的一项软件开发最佳实践。Git Flow是一套使用Git进行源代码管理时的一套行为规范和简化部分Git操作的工具。GIT flow模型工作流中涉及到的角色介绍:功能开发者:模块中功能的开发人员; 开发管理员:由项目模块开发的小组长(team leader)担当; 测试管理员:由测试团队指定人员担当; 发布管理员:由生产环境发布团队指定人员担当;分支说明名称 说明 命名规范 命名示例

2022-04-01 18:14:43 167

原创 GIT基本规范

Git规范所有使用项目,必须严格按照规范操作,否则不予合并代码、提测、打包上线等后续操作。基本要求所有commit必须要有注释,内容必须按照注释格式严格执行, 合理控制内容提交的颗粒度,一次commit含一个独立功能点,禁止一次提交涵盖多个功能项目, 正确为每个项目设置提交用到的user.name信息,不可随意设置无法识别的信息。版本号(tag)版本号命名规则:主版本号.次版本号.修订版本号,(遵循github语义化版本命名规范), 版本号仅标记master分支,用于标记某个可发布/

2022-03-30 20:57:51 1201

原创 mysql篇二:mysql安装配置使用

一、mysql安装官网下载安装包:https://www.mysql.com/;在mysql社区,找到免费的mysql 下载社区版server; 下载自己所需要的的版本2. 本地安装 打开本地命令窗口进入到下载的文件bin目录:${path}/bin安装mysql服务mysqld --install成功提示:Service successffully installed.数据库初始化(初始化时候会初始化数据库初始密码,一定要记录)mysql ...

2020-09-21 14:41:14 110

原创 mysql篇一:mysql是什么

1. mysql数据库: 存储数据的仓库,本质是一套基于CS结构的,客户端和服务端程序,最终数据存储在服务器的磁盘中。2. 数据库分类 关系型数据库:数据之间可以存在关联关系,数据库帮我们维护这种关系。通常存储介质都是磁盘。 mysql:因为免费,开源,性能不错,所以算是目前最流行的数据库,目前已经被oracl收购,适合中小型企业 sqlserver:微软开发的;基于windows部署;很少有人使用; ...

2020-09-11 15:16:04 523

原创 简单配置tomcat实现基于redis的session共享

具体参考:https://github.com/redisson/redisson/tree/master/redisson-tomcattomcat新增jarredisson-all-3.13.3.jarfor Tomcat 7.xredisson-tomcat-7-3.13.3.jarfor Tomcat 8.xredisson-tomcat-8-3.13.3.jarfor Tomcat 9.xredisson-tomcat-9-3.13.3.jar1.增加context配置在Ca

2020-08-24 15:04:23 477

原创 那些年踩过的坑—java项目启动n次后才能正常启动

之前有个项目打成war后再tomcat8+jdk1.8启动时候n次中有1次成功;n-1次一直死循环然后启动失败;之前配置mybatis时候少了注入方式在MapperScannerConfigurer中,我们知道sqlSessionFactory的注入方式有四种,分别是sqlSessionFactory,sqlSessionFactoryBeanName,sqlSessionTemplate,sqlSessionTemplateBeanName注入sqlSessionFactory,后面的valu

2020-08-13 14:14:08 161

原创 那些年踩过的坑—应用登录账号串号

用户最近报了一个账号串号;登录a账号看到了别人账号的权限以及操作;刚开始以为是缓存问题;最后查到是奇葩代码问题开发在sessionFilter把一个关键的字段定义成了全局变量,并发导致这个数字被篡改了;a用户访问时候并发b进来篡改了这个关键字段;然后session存储了b这个字段的信息;导致后面a登录成功后一直使用了b的信息...

2020-08-13 13:33:16 944

原创 JVM—命令(jps,jstat,jmap,jstack)

一般用于tomcat异常场景使用:OOM, 线程死锁(lock dead),锁争用(lock contention),java消耗过多cpu等一般使用分析命令有:jps #查看运行java进程jstat -gc PID #查看进程PID新生代老年代内存使用情况,年轻老年代垃圾回收次数以及时间jstat -gccause PID #查看进程垃圾收集原因jmap -heap PID...

2020-04-16 14:12:01 353

原创 JVM—jvm内存结构及模型

在我们开发运维过程中会碰到好多关于堆内存溢出,还有持久代内存溢出等各种故障;有时候java堆内存管理是影响应用性能的主要因素之一;了解jvm内存结构会方便我们在服务器出现性能问题时候快速了解和解决问题。1. java内存结构: 1.1 上图可获取到数据Java内存结构主要有三块:堆内存,方法区和栈。堆内存是jvm中最大的一块由年轻代和老年代组成,而年轻代内存又被划分为:Ed...

2020-04-03 15:35:02 200

原创 JVM—java类加载机制

1.java类加载机制 1.1 java类加载机制中最重要的是类初始化过程,包含静态资源,非静态资源,父子类,构造方法等执行顺序。学过java的人都应该知道:带有static关键字的代码块应该是最先被执行的,其次是非static关键字的代码块以及类的属性,最后是构造方法;所以类初始化过程应该是:父类的静态代码块—子类的静态代码块—初始化父类的属性/父类的普通代码块(代码自上而下执行...

2020-03-31 19:44:02 203

原创 Cookie&session

cookie&amp;session的出现:http协议的无状态特性(对业务处理没有记忆能力)导致如果后续处理需要前面的信息,则它必须重传前面的信息,这也导致每次链接传送数据量增大,为了克服http这个缺陷,出现了两种用于保持http链接状态的技术cookie&amp;session;1.cookiecookie是有服务器端生成的,发送给User-Agent(web浏览器),浏览器会将...

2019-03-05 16:24:44 169

原创 Tomcat 启动过程很慢,JVM上的随机数与熵池策略

之前遇到过一个很奇怪的问题,这个大多数会在阿里云服务器上出现;就是tomcat启动超级慢最后发现是session引起的随机数导致的;解决方案;在tomcat/bin/catalina.sh加JAVA_OPTS="-Djava.security.egd=file:/dev/./urandom" ...

2018-12-28 14:31:45 609

原创 log4j记录单独的日志到单独文件

我们一般需要记录特殊的日志到单独文件中:1.配置log4j.propertieslog4j.rootLogger=DEBUG,Console,File,infolog4j.appender.Console=org.apache.log4j.ConsoleAppenderlog4j.appender.Console.Target=System.outlog4j.appender.C...

2018-12-04 14:07:29 2867 2

原创 spring boot 上传超过默认1M限制

在项目上传过程中遇到一个上传超出限制的问题;报上传图片超出tomcat默认限制大小1M解决方案:1.加入限制大小配置(application.properties):spring.http.multipart.maxFileSize = 5Mbspring.http.multipart.maxRequestSize=100Mb一个是单数据大小,一个是总数据大小;仅仅这样是不...

2018-11-01 13:09:16 3097

原创 spring boot将MultipartFile file图片上传到远程服务器;

1.controller@Api(description = "图片上传接口")@RestController@RequestMapping("/uploadController")public class UploadController { @ApiOperation(value = "上传图片") @RequestMapping(value="/uploadPic",me...

2018-09-09 21:20:17 12303 5

原创 spring boot 使用Swagger

现在框架都是方便开发,采用前后台分离的技术;所以现在联系前后台唯一的就是api接口;所以api文档在前后端开发人员之间至关重要;swagger就是一款书写api文档的框架;swagger包括:swagger editor,swagger ui等很多部分,今天我们主要看看swagger ui在项目中的实际使用;这个主要是进行aip预览和测试;框架:spring boot1.添加依赖jar...

2018-08-22 20:56:57 259

原创 linux命令—screen会话管理

系统管理员经常需要ssh或者telnet远程登录到linux服务器,经常运行一些需要长时间才能完成的任务传输,备份,启动一个进程等;通常我们都是为这样的任务开一个远程终端窗口,再次期间不能关闭终端窗口,否则这个任务就会被杀掉;screen可以实现:只要screen本身没有终止,在其内部运行的会话都可以恢复。这点对于远程登录的用户特别有用:即使网络中断,用户也不会失去对已经打开的命令行会话的控制...

2018-08-21 10:35:04 993

原创 java面试—mysql数据库

MYSQL一、sql的select语句完整的执行顺序    1.sql select的执行顺序:    1)、from组装来自不同数据源的数据;    2)、where基于指定的条件对记录进行筛选;    3)、group by将数据划分为多个分组    4)、使用聚集函数进行计算    5)、使用having筛选分组    6)、计算所有的表达式;    7)、select的字...

2018-08-20 22:13:53 606 2

原创 java面试—nginx

1.nginx反向代理为什么能够提升服务器性能    对于后端动态服务来说:java php。这类服务器处理io能力不高;nginx有个好处是会把request在读取完整之前buffer住,这样交给后端就是一个完整的HTTP请求,从而提高效率,而不是断断续续传递,同样nginx也可以吧reponse给buffer住,减轻后端压力。2.nginx和apache    1)、nginx优点  ...

2018-08-14 22:50:05 464

原创 java面试—dubbo

1.dubbo的容错机制;    1)、Failover Cluster:失败自动切换,当出现失败,重试其他服务器    2)、Failfast Cluster:快速失败,只发起一次调用,失败立即报错,通常用于非幂等性的写操作。    3)、Failsafe Cluster:失败安全,出现异常时,直接忽略,通常用于写入审计日志等操作。    4)、Failback Cluster:失败自动...

2018-08-14 22:38:32 1181

原创 java面试—消息队列ActiveMQ

1.如何使用ActiveMq解决分布式事物    在应用中,都会有用户注册功能:收集用户录入信息,保存到数据库—向用户的手机或邮箱发验证码······    在传统集中式架构,实现功能:开启一个本地事物,往本地数据库中插入一条用户数据,发送验证码,提交事物。    在分布式架构中,用户和发送验证码是两个独立的服务,他们都有各自的数据库,那么就不能通过本地事物保证操作的原子性,这时候我们需要用...

2018-08-09 23:28:20 1244

原创 java面试—redis nosql数据库

1.redis的特点    redis是一款内存告诉缓存数据库。redis:远程数据服务;由C语言编写,典型的NoSql数据库服务器,redis是一个key-value存储系统,它支持丰富的数据类型:String list set hash等    redis本质上是一个key-value类型的内存数据库,数据库统统加载在内存当中进行操作,定期通过一步操作把数据库数据flush到硬盘上进行保存...

2018-08-09 23:01:12 329

原创 那些年趟过的坑—log4j和slf4j-api冲突Maven版

slf4j-api-1.6.6.jar slf4j-log4j12-1.7.5.jar slf4j-simple-1.7.7.jar在使用到log4j和slf4j的同时slf4j-api-1.6.6.jar依赖的两个jar包也必须同时依赖,故加入以下依赖即可:&lt;dependency&gt; &lt;groupId&gt;org.slf4j&lt;/groupId&gt; &lt...

2018-08-04 22:24:57 4617 1

原创 ftp上传下载工具类

import org.apache.commons.logging.Log;import org.apache.commons.logging.LogFactory;import org.apache.commons.net.ftp.*;import java.io.*;import java.util.Date;/** * To change this template use...

2018-08-01 09:41:22 456

原创 maven引用本地jar包

有些jar是我们自己生成的需要在本地引用,那么需要配置依赖: &lt;dependency&gt; &lt;groupId&gt;com.localhost&lt;/groupId&gt; &lt;artifactId&gt;localhost&lt;/artifactId&gt; &lt;version&gt;1.0.0&lt;/version&gt;

2018-07-23 16:23:25 510

原创 判断请求协议方法

最近公司需要做https;在浏览器重定向时会从https重新跳到http,所以做了强转;但是在转换过程中使用了替换导致,在苹果浏览器Safari中是不存在的,所以强转后会出现httpss;判断请求协议:1.js获取:if("https:" == document.location.protocol)if( location.href.indexOf("https") &gt; ...

2018-07-23 14:10:07 664

原创 java之日期工具类DATE

 java日期工具类import java.text.SimpleDateFormat;import java.util.*;public class DateUtil { /** * 获取SimpleDateFormat * @param parttern 日期格式 * @return SimpleDateFormat对象 * @throws RuntimeExc...

2018-07-17 14:13:21 145

原创 httpclient—http和https的post请求;

对于编程我们对于读文件是不可避免的;读取文件无非三种方式字节,字符,行读取文件

2018-07-10 13:54:35 1956 1

原创 java项目打包加版本号清理缓存二

一篇我们主要介绍了在代码中怎么处理可以做到清理缓存的效果,这篇我们说说在打包的时候加版本号,意义上就是给静态资源加版本号,意思我们每次打包的静态页面都是一个全新的页面,通过这种方式来达到清理缓存的目的;为达目标不择手段吗!1.maven项目打包增加版本号,利用maven插件:com.google.code.maven-replacer-plugin这种方式在项目打包时执行,自动在静态文件后追加版本...

2018-07-10 13:35:45 1593 1

原创 java应用清缓存方式一

缓存机制在页面性能优化中是非常重要的,缓存可以使页面尽可能快加载,具有减轻带宽,降低服务负荷,提高用户体验等;我们说了这么多缓存好处,为什么现在要说清缓存机制;因为在一个项目在开发中不稳定,频繁发布过程中我们就会发现缓存不是那么好,因为缓存的存在经常会使我们发布的功能不能实现,用户体验非常差;所以在开发阶段,频繁上线发布阶段我们清楚缓存还是有必要的;缓存清除一版有:每个页面加http头部,加载每个...

2018-07-07 00:14:18 7024

原创 java项目问题排查

我之前遇到过好几次程序打不开,进程存在;后来多次排查是因为代码的原因造成的;查询数据太多造成了堵塞等;我们可以从以下几个方面去查:1.进程是否存在:jps2.导出堆栈信息:jmap jhat3.定位线程堆栈,根据堆栈信息我们可以定位到具体代码,在jvm调优中使用的比较多;记下来我们详细操作一下;1),查找对应程序的进程号pid2)生成一个堆栈信息:jmap -dump:format=b,file=...

2018-07-05 14:34:22 941

原创 nginx安装—配置

首次自己玩nginx;公司准备前端开发使用react写页面,做到前后台分离,需要用到nginx;1.首先我们安装一下nginx环境:yum -y install gcc-c++yum -y install pcre pcre-develyum -y install zlib zlib-develyum -y install openssl openssl--develgcc:nginx编译需要依赖...

2018-07-04 11:33:31 180

原创 mongodb使用三—java中使用连接mongdb

首先我们要使用mongdb首先要引入相应的jar包;mongo-java-driver-3.2.2.jar maven中加入依赖:&lt;dependency&gt;    &lt;groupId&gt;org.mongodb&lt;/groupId&gt;    &lt;artifactId&gt;mongo-Java-driver&lt;/artifactId&gt;    &lt;ve...

2018-07-04 11:16:29 636

原创 mongodb使用二—数据(文档)

1.mongodb插入 insert();save()insert: db.collection_name.insert();db.firstCollection.insert({_id:1,title:"mongdb"})WriteResult({ "nInserted" : 1 })_id是为objectId为唯一的12字节的十六进制数db.collection_name.insertOn...

2018-07-03 15:16:34 155

fuliwd.rar

spring boot+mybatis+maven框架,需要自行配置maven开发环境,这个框架可以作为学习或者以后开发框架的基础

2020-09-07

jmap -dump:format=b,file=heapdump.hprof Pid堆栈文件分析工具

jmap -dump:format=b,file=heapdump.hprof Pid;生成一个关于此进程的堆栈使用情况;使用工具做出对比

2018-07-05

ftp-tomcat

在一个项目中,图片和文件服务器是不可避免的,我们经常安装使用vsftp作为图片服务器,使用tomcat作为文件服务器,此tomcat是自己配置的一个文件服务器;

2018-04-12

微信公众号开发--微信JS-SDK扫一扫功能

微信公众号开发--微信JS-SDK扫一扫功能 微信公众号开发--微信JS-SDK扫一扫功能 微信公众号开发--微信JS-SDK扫一扫功能

2017-10-14

微信公众号开发--微信JS-SDK扫一扫功能后台

微信公众号开发--微信JS-SDK扫一扫功能后台 微信公众号开发--微信JS-SDK扫一扫功能后台 微信公众号开发--微信JS-SDK扫一扫功能后台 微信公众号开发--微信JS-SDK扫一扫功能后台

2017-10-14

空空如也

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

TA关注的人

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