自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(159)
  • 资源 (1)
  • 收藏
  • 关注

原创 JVM优化

JVM优化Q:为什么要对jvm进行优化?运行过程中应用卡住了, 日志不输出,程序没反应,服务器cpu负载突然升高等,jvm优化就是不仅让程序跑起来,而且跑的更快!可以分析解决在生产环境中所遇到的各种‘棘手’问题。jvm运行参数jvm运行参数分为三类:标准参数、-X参数(非标准参数)、-XX参数(使用频率较高)标准参数jvm标准参数,一般都很稳定的,在未来的jvm版本中不会改变,可以使用Java -help检索出所有的标准参数。用法: java [-options] class [args.

2023-02-06 08:59:29 489

原创 nacos安装和配置

nacos安装和配置愿景Nacos 通过提供简单易用的动态服务发现、服务配置、服务共享与管理等服务基础设施,帮助用户在云原生时代,在私有云、混合云或者公有云等所有云环境中,更好的构建、交付、管理自己的微服务平台,更快的复用和组合业务服务,更快的交付商业创新的价值,从而为用户赢得市场。Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据及流量管理。服务注册中心,消费者可以把从注册中心去拿数据等操作。提供者注册到n

2022-03-25 13:58:15 1000 2

原创 Linux中安装maven

Linux中安装maven一、下载安装包官网地址: http://maven.apache.org/download.cgi二、安装包上传到linux中使用的命令rz,如果没有安装使用以下命令apt install lrzsz -y安装好之后rz+回车,选择你下载的安装包注意:rz会默认把文件上传到当前文件夹三、在linux中解压安装包tar -zxvf apache-maven-3.6.0-bin.tar.gz四、配置maven环境打开配置文件vi /etc/prof

2022-03-02 16:33:31 430

原创 提高Tesseract-OCR验证码识别率

Tesseract-OCR训练自己需要的语言在正常使用Tesseract-OCR的默认eng去识别复杂的验证码失败率很高,这时候就需要自己训练出自己需要的语言来提高识别成功率。如何训练呢?训练提高识别率从jTessBoxEditor:https://sourceforge.net/projects/vietocr/files/jTessBoxEditor/,上下载jTessBoxEditor训练工具,训练工具是java写的,所以需要你电脑上有java环境变量(什么,如何装?妈耶,不会吧不会吧!不会有人

2021-09-15 14:13:25 3284 4

原创 Tesseract-OCR安装与使用

Tesseract-OCR安装使用,通过java结合使用随着人工智能的发展,生活中也逐渐出现了很多便捷高效的应用,人脸识别、证件识别认证、名片识别、车牌识别等,都在方便着我们的日常生活。同样,这些技术也可以为我们的日常业务处理流程提供智能高效的解决方案。日常交易、清算业务往来存在各种电子邮件、传真等单据,主要有确认成交单据、定存协议、对敲指令、银行间费用、网下中签公告、境外券商确认单等。这些单据需要人工识别提取要素录入系统,通过使用OCR技术,对单据图像内容进行识别、矫正,提取关键字段元素,与相关系统连

2021-09-15 09:43:32 3926 6

原创 canvas练习

canvas时钟和鼠标移动炫彩小球canvas前端一种动态技术,学好之后用起来很爽,做出来画面很舒服,废话不多说了直接上代码吧时钟<!DOCTYPE html><html><head><meta charset="utf-8"><title>时钟</title><style> body { padding: 0; margin: 0; background-color: rgba(0, 0,

2021-09-14 17:59:58 201

原创 canvas

canvascanvas简介canvas 是html5新增的,一个可以使用脚本(通常JavaScript)在其中绘制图像的HTMl元素。它可以用来制作照片集或者制作简单的动画,甚至可以进行实时视频处理和渲染。Canvas基本使用<canvas id="tutorial" width="300" height="300"></canvas>canvas元素跟img标签一样,只是canvas只有两个可选择的属性width、height,没有src、alt属性。默认width为

2021-09-14 15:45:12 718

原创 svg环形进度条

SVG环形进度条示例环形进度条html文件代码示例<!DOCTYPE html><html> <header> </header> <style> .text{ text-align: middle; dominant-baseline:middle; } body{ text-align: center; } </style> <bod

2021-07-27 09:43:19 190

原创 svg初认识

svg什么是svg?在网页中绘制矢量图片,(矢量图放大后不会失真),svg是一种基于xml语法的图像格式,全称是可缩放矢量图(scalable vector graphics),其他图像格式都是基于像素处理的,SVG则是属于对图像的形状描述,所以它本质上是文本文件,体积较小,且不管放大多少倍都不会失真。SVG文件可以直接插入到网页,成为DOM的一部分,然后用js和css进行操作。语法SVG代码都放在顶层svg标签中<svg width="100%" height="100%">

2021-07-27 09:42:10 188

原创 Spring Task定时任务

Spring Task定时任务实现定时任务的方案如下:1、使用jdk的Timer和TimerTask实现可以实现简单的间隔执行任务,无法实现按日历去调度执行任务。2、使用Quartz实现Quartz 是一个异步任务调度框架,功能丰富,可以实现按日历调度。3、使用Spring Task实现Spring 3.0后提供Spring Task实现任务调度,支持按日历调度,相比Quartz功能稍简单,但是在开发基本够用,支 持注解编程方式。编写任务类在Spring boot启动类上添加注解:@E

2021-05-11 10:52:27 150

原创 java+Selenium自动化测试工具

Java+Selenium爬虫介绍场景:springboot+selenium实现自动化爬取数据,爬虫是常见的一个功能,因为我们在做项目的时候会经常使用到一些数据从别的地方获取到,常用的是用python去爬虫。但Java也可以去实现简单的爬虫。选用技术有springboot、selenium深入了解见官网文档:https://www.selenium.dev/documentation/en/selenium介绍Selenium (WEB自动化工具),Selenium 是一个用于Web应用程序测

2021-05-11 10:51:09 375

原创 springboot整体总结

springboot整体总结看pom.xml中要想使用springboot,先有父jar包,有这个说明一个springboot的环境已经搭建好了 <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.2.0.R

2021-05-06 13:43:22 84

原创 springboot通过dockerfile部署

mvn ‐f pom_docker.xml clean package ‐DskipTests docker:build打包遇到的问题遇到的第一个问题问题:[ERROR] Failed to execute goal com.spotify:docker-maven-plugin:0.4.13:build (default-cli) on project springb: Exception caught: java.util.concurrent.ExecutionException: com.s

2021-04-02 19:14:35 111

原创 用户认证与单点登录

用户认证与单点登录用户认证技术方案单点登录技术方案分布式系统要实现单点登录,通常将认证系统独立抽取出来,并且将用户身份信息存储在单独的存储介质,比如: MySQL、Redis,考虑性能要求,通常存储在Redis中,如下图:单点登录的特点是:1、认证系统为独立的系统。2、各子系统通过Http或其它协议与认证系统通信,完成用户认证3、用户身份信息存储在Redis集群。Java中有很多用户认证的框架都可以实现单点登录:1、Apache Shiro2、CAS3、Spring security

2021-03-03 14:54:49 532

原创 图片存储阿里云oss

阿里云oss存储在开发中我们很经常遇见需要上传图片的功能,图片上传功能开发简单,但问题是我们一般把图片存在到哪里呢?有下面几种解决方案1.直接将图片保存到服务的硬盘优点:开发简捷,成本低缺点:扩容难2.使用分布式文件系统进行存储(比如fastDfs)优点:容易实现扩容缺点:开发复杂度稍大(尤其是开发复杂的功能)3.使用nfs做存储(没操作过)优点:开发较为便捷缺点:需要有一定的运维知识进行部署和维护4.使用第三方的存储服务优点:开发简单,拥有强大功能,免维护缺点

2020-12-29 16:35:17 1934

原创 分布式事务

分布式事务1、什么是分布式系统?部署在不同结点上的系统通过网络交互来完成协同工作的系统。比如:充值加积分的业务,用户在充值系统向自己的账户充钱,在积分系统中自己积分相应的增加。充值系统和积 分系统是两个不同的系统,一次充值加积分的业务就需要这两个系统协同工作来完成。2、什么是事务?事务是指由一组操作组成的一个工作单元,这个工作单元具有原子性(atomicity)、一致性(consistency)、隔 离性(isolation)和持久性(durability)。原子性:执行单元中的操作要么全

2020-12-23 09:16:30 158

原创 reactjs

ReactJS入门首先是乌米js官网:https://umijs.org/zh/想深入了解的同学,看官网吧:可插拔的企业级react应用框架首先安装nodejs接下来,开始安装yarn,其中tyarn使用的是npm.taobao.org的源,速度要快一些可以把yarn看做了优化了的npmnpm i yarn tyarn -g下面开始安装umityarn global add umi入门创建项目通过初始化命令将生成package.json文件,它是 NodeJS 约定的用来存放项

2020-12-16 16:39:56 187

原创 华为微服务ServiceComb

ServiceComb特点:设计思想开放,解决方案级,多语言、多通信协议、标准服务契约、事务最终一致性开源开放,拥抱 SpringBoot、SpringCloud、ServiceMesh 等主流生态低门槛准入,业务侵入度低,架构松耦合官网介绍英文:http://servicecomb.incubator.apache.org/中文:http://servicecomb.incubator.apache.org/cn安装 ServiceComb 开发环境服务注册中心CSE服务中心是微服

2020-12-08 10:27:29 3360

原创 mongodb安装和入门

mongodb安装mongodb介绍MongoDB是一个基于分布式文件存储 的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。它支持的数据结构非常松散,是类似json的bson格式,因此可以存储比较复杂的数据类型。Mongo最大的特点是它支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建

2020-12-01 15:58:51 152

原创 持续化集成与容器管理

持续化集成与容器管理微服务部署有两种方法:手动部署持续集成工具-Jenkins安装jdk不说了。解压后安装,让后配置环境变量。可以参考在Linux下安装jdk,之前写的挺详细的Jenkins安装与启动我是在虚拟机上安装的,Linux是centos7版本。可以参考官网:https://pkg.jenkins.io/redhat/导入镜像:wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat/jenkins.r

2020-11-19 10:02:03 153

原创 docker部署中间件

docker部署常用容器docker部署redis先下载redis镜像安装最新的docker pull redis或者docker pull redis:版本(如下)docker pull redis:4.0.9看是否下载成功docker images启动redisdocker run -di --name=myredis -p 6379:6379 redis:4.0.9查看容器是否启动 docker ps我就可以连上了部署ES和ik中文...

2020-11-03 10:07:48 548

原创 在linux中安装Docker

在linux中安装DockerDocker官方建议在Ubuntu中安装,因为Docker是基于Ubuntu发布的,而且一般Docker出现的问题Ubuntu是最先更新或者打补丁的。在很多版本的CentOS中是不支持更新最新的一些补丁包的。注意:建议安装在CentOS7.x以上的版本,在CentOS6.x的版本中,安装前需要安装其他很多的环境而且Docker很多补丁不支持更新。我是第一次安装docker,所以就总结一下。安装Dockerstep1: yum 包更新到最新这一步一直y就行啦su

2020-10-26 08:57:22 327 4

原创 Swagger-UI和雪花方法生成ID

Swagger-UI和雪花方法生成IDSwagger-UI丝袜哥什么是OpenAPI现在网站架构基本都由原来的后端渲染,变成了:前端渲染、前后端分离的形态,而且前端技术和后端技术在各自的道路上越走越远。 前端和后端的唯一联系,变成了API接口;API文档变成了前后端开发人员联系的纽带,变得越来越重要。没有API文档工具之前,大家都是手写API文档的,在什么地方书写的都有,而且API文档没有统一规范和格式,每个公司都不一样。这无疑给开发带来了灾难。OpenAPI规范(OpenAPI Specif

2020-10-21 08:54:15 545 1

原创 Hibernate-Validator框架完成数据校验

Hibernate-Validator框架完成数据校验在我们实现注册的时候,一般前端都会加上校验,而前端的校验是很容易被有心人绕过的。所以我们必须在后台添加数据校验功能:我们这里会使用Hibernate-Validator框架完成数据校验:而SpringBoot的web启动器中已经集成了相关依赖:什么是Hibernate ValidatorHibernate Validator是Hibernate提供的一个开源框架,使用注解方式非常方便的实现服务端的数据校验。官网:http://hiberna

2020-10-16 16:04:48 256

原创 RabbitMQ的五种消息模型

RabbitMQ的五种消息模型RabbitMQ提供了6种消息模型,但是第6种其实是RPC,并不是MQ,那么也就剩下5种。但是其实3、4、5这三种都属于订阅模型,只不过进行路由的方式不同。基本消息模型RabbitMQ是一个消息代理:它接受和转发消息。 你可以把它想象成一个邮局:当你把邮件放在邮箱里时,你可以确定邮差先生最终会把邮件发送给你的收件人。 在这个比喻中,RabbitMQ是邮政信箱,邮局和邮递员。生产者,一个发送消息的用户应用程序。消费者,消费和接收有类似的意思,消费者是一个主要用来等待接

2020-10-09 09:27:51 1228

原创 Linux中安装rabbitMQ

Linux中安装rabbitMQ安装Erlang在线安装yum install esl-erlang_17.3-1~centos~6_amd64.rpmyum install esl-erlang-compat-R14B-1.el6.noarch.rpm离线安装链接:https://pan.baidu.com/s/1reLZYpmqP3NEY1mflg13IA 提取码:04chcd /usr/localmkdir rabbitmqcd rabbitmq把文件上传到服务器中的rab

2020-09-30 09:40:16 246

原创 linux下安装FastDFS

FastDFS引言:文件上传到本地的缺陷单机器存储,存储能力有限无法进行水平扩展,因为多台机器的文件无法共享,会出现访问不到的情况数据没有备份,有单点故障风险并发能力差这个时候,最好使用分布式文件存储来代替本地文件存储。什么是分布式文件系统分布式文件系统(Distributed File System)是指文件系统管理的物理存储资源不一定直接连接在本地节点上,而是通过计算机网络与节点相连。通俗来讲:传统文件系统管理的文件就存储在本机。分布式文件系统管理的文件存储在很多机器,这

2020-09-25 20:38:30 168

原创 feign.FeignException: status 500 reading GoodsClient#querySkusBySpuId(Long);

feign.FeignException: status 500 reading GoodsClient#querySkusBySpuId(Long); content:{“timestamp”:“2020-09-23T05:35:38.834+0000”,“status”:500,“error”:“Internal Server Error”,“message”:“No message available”,“path”:"/goods/sku/list"}...

2020-09-24 13:49:28 1616

原创 feign.FeignException: status 404 reading GoodsClient#querySkusBySpuId(Long)

feign.FeignException: status 404 reading GoodsClient#querySkusBySpuId(Long)前言:做乐优商城的时候,讲数据库的数据导入到ES时报错报错信息feign.FeignException: status 404 reading GoodsClient#querySkusBySpuId(Long)本人也是在谷歌上查方法,看见一个最扯的方法就是把数据在重新导入,哈哈哈,我试了,没用。解决方案测试路径是不是有问题。没找到id

2020-09-24 13:43:07 318

原创 操作ElasticSearch

操作ElasticSearch参考官网:https://www.elastic.co/guide/index.html基本概念Elasticsearch也是基于Lucene的全文检索库,本质也是存储数据,很多概念与MySQL类似的。对比关系:索引(indices)--------------------------------Databases 数据库 类型(type)-----------------------------Table 数据表 文档(Document)-----

2020-09-21 17:34:15 256

原创 在linux上安装ElasticSearch

ElasticSearch在linux上安装ES安装版本:6.3.0Linux系统:centos7ik分析插件: 6.3.0kibana版本:6.3.0虚拟机JDK1.8新建一个用户leyou(名字你随便起)原因:出于安全考虑,elasticsearch默认不允许以root账号运行。创建用户:useradd leyou设置密码:passwd leyou切换用户:su - leyou上传安装包,并解压我们将安装包上传到:/home/leyou目录解压缩:tar

2020-09-14 12:57:52 263

原创 Vue入门

vue入门Vue (读音 /vjuː/,类似于 view) 是一套用于构建用户界面的渐进式框架。与其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用。Vue 的核心库只关注视图层,不仅易于上手,还便于与第三方库或既有项目整合。另一方面,当与现代化的工具链以及各种支持类库结合使用时,Vue 也完全能够为复杂的单页应用提供驱动。Node和NPMNPM是Node提供的模块管理工具,可以非常方便的下载安装很多前端框架,包括Jquery、AngularJS、VueJs都有。为了后面学习方便,我们先安装n

2020-09-09 18:27:24 161 1

原创 分享一个好玩的规范代码的插件

分享一个好玩的规范代码的插件插件名字叫CheckStyle,用来规范代码的,感觉很好玩,所以就分享出来。步骤1File->Setting->Plugins安装完插件会让你重启idea在你的项目中创建一个xml文件,文件内容中如下<?xml version="1.0"?><!DOCTYPE module PUBLIC "-//Puppy Crawl//DTD Check Configuration 1.2//EN" "http://www.pupp

2020-09-08 17:52:39 550

原创 ElasticSearch学习第二天

IK 分词器和ElasticSearch集成使用支持中文分词的分词器有很多,word分词器、庖丁解牛、盘古分词、Ansj分词等,但我们常用的还是下面要介绍的IK分词器。IK分词器简介IKAnalyzer是一个开源的,基于java语言开发的轻量级的中文分词工具包。从2006年12月推出1.0版开始,IKAnalyzer已经推出 了3个大版本。最初,它是以开源项目Lucene为应用主体的,结合词典分词和文法分析算法的中文分词组件。新版本的IKAnalyzer3.0则发展为 面向Java的公用分词组件,独立

2020-09-08 12:37:36 154

原创 Failed to parse mapping [_doc]: Root mapping definition has unsupported parameters:

Failed to parse mapping [_doc]: Root mapping definition has unsupported parameters看请求路径如下:返回的错误信息{ "error": { "root_cause": [ { "type": "mapper_parsing_exception", "reason": "Root mapping definiti

2020-09-04 11:04:29 6933

原创 ElasticSearch学习第一天

ElasticSearch简介什么是ElasticSearchElaticsearch,简称为es, es是一个开源的高扩展的分布式全文检索引擎,它可以近乎实时的存储、检索数据;本身扩展性很好,可以扩展到上百台服务器,处理PB级别的数据。es也使用Java开发并使用Lucene作为其核心来实现所有索引和搜索的功能,但是它的目的是通过简单的RESTful API来隐藏Lucene的复杂性,从而让全文搜索变得简单。ElasticSearch对比SolrSolr 利用 Zookeeper 进行分布式管理

2020-09-04 10:59:02 121

原创 Restful风格

Restful风格注解作用@PostMapping创建@PutMapping修改@DeleteMapping删除@GetMapping查询加上这四种主解就已经代表你要做的是什么了,使用注解来区分@GetMapping("/companies"):查询功能@PostMapping("/companies"):提交增加@PutMapping("/companies/{id}"):修改@DeleteMapping("/companies/{id}"):

2020-09-03 11:46:14 186

原创 解决:Failed to load property source from:xxx/application.yml

不能加载application.yml配置文件报错信息中出现:Caused by: org.yaml.snakeyaml.error.YAMLException: java.nio.charset.MalformedInputException: Input length = 1字符格式应该不对所以启动不可主类。应该是你的配置文件yml中存在中文注解。如果没有就不会报错最简单的方法就是把中文注解给去掉。就不会报错了。这样就不会报错了。下面是我报错信息。java.lang.IllegalSta

2020-08-28 18:01:01 20580 3

原创 com.netflix.zuul.exception.ZuulException: Forwarding error

解决zuul的com.netflix.zuul.exception.ZuulException: Forwarding error报错信息如图;但是在往下看看到这样一句Caused by: com.netflix.client.ClientException: Load balancer does not have available server for client: consumer1解决方案第一步检查eureka服务中心是否存在consume1服务,如图我的不存在,所以在检查一下

2020-08-28 08:59:02 13578 2

原创 最全的解决方案:springboot在yml配置了启动端口但启动还是8080如何解决

springboot在yml配置了启动端口但启动还是8080如何解决Eureka Server中配置多个集群来做负载均衡时启动多个springboot时找了各种资料,最后得出结论有1)看你的yml文件中是否少一个空格如下所示少一个空格颜色就不一样,(下面图是为了演示,但我的明显不是这问题)2)还有一种说看你的target目录中是否有application.yml配置文件,但是哥哥你看我的配置文件这不好好的吗,而且里面跟外面配置一样。(这种方法对我也没有用)3)我最后肯定解决了所以才会写下这博

2020-08-27 14:51:30 9016 1

省市sql .txt

省市数据库sql源码

2020-06-01

空空如也

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

TA关注的人

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