- 博客(35)
- 资源 (2)
- 收藏
- 关注

原创 SpringCloud踩坑记(八)SpringCloud链路跟踪
背景随着互联网架构的扩张,分布式系统变得日趋复杂,越来越多的组件开始走向分布式化,如微服务、消息收发、分布式数据库、分布式缓存、分布式对象存储、跨域调用,这些组件共同构成了繁杂的分布式网络,那现在的问题是一个请求经过了这些服务后其中出现了一个调用失败的问题,只知道有异常,但具体的异常在哪个服务引起的就需要进入每一个服务里面看日志,这样的处理效率是非常低的。因此分布式调用链跟踪非常需要的...
2020-01-08 10:14:05
418

原创 SpringCloud踩坑记(七)Spring Cloud路由网关
前言路由是微服务架构不可或缺的一部分。例如,/可能被映射到您的Web应用程序,/api/users被映射到用户服务以及/api/shop被映射到商店服务。生产环境中我们经常会使用Nginx进行来做路由转发,但是Spring Cloud本身已经有集成zuul和getaway组件来提供动态路由。现在我们就来学习如何使用这俩个组件和了解其实现机制。zuulZuul是一项网关服务,可提供动态路...
2020-01-08 10:13:31
1150
3

原创 SpringCloud踩坑记(六)SpringCloud熔断器Hystrix
什么是Hystrix?在分布式环境中,不可避免地会有许多服务依赖项中的某些失败。Hystrix是一个库,可通过添加等待时间容限和容错逻辑来帮助您控制这些分布式服务之间的交互。Hystrix通过隔离服务之间的访问点,停止服务之间的级联故障并提供后备选项来实现此目的,所有这些都可以提高系统的整体弹性。Hystrix的作用是什么?Hystrix旨在执行以下操作:提供保护并控制通过第三方...
2020-01-08 10:13:15
535

原创 SpringCloud踩坑记(五)SpringCloud Feign使用
前言先前我们学习了Spring Cloud注册服务和使用Ribbon+RestTemplate进行消费服务。现在我们再来学习另外一种调用服务方式——Fegin。介绍Feign是一种声明式、模板化的HTTP客户端。与Ribbo相比使用起来更加方便的。Fegin采用接口的方式,只需要创建一个接口,然后在上面添加注解即可,将需要调用的其他服务的方法定义成抽象方法即可,不需要自己构建 htt...
2020-01-08 10:13:04
451

原创 SpringCloud踩坑记(四)SpringCloud负载均衡器Ribbo
前言先前我们已经了解Spring Cloud使用Eureka作为注册中心进行注册服务,那我们注册完的服务如何进行消费呢?Spring Cloud本身结合了俩种方式进行服务消费。负载均衡器Ribbon+RestTemplate声明式的HTTP客户端Feign今天我们就来学习负载均衡器Ribbon如何使用及源码分析。Ribbon 介绍Ribbon是Netflix公司开源的一个负载均...
2020-01-08 10:12:44
659

原创 SpringCloud踩坑记(三)SpringCloud 注册中心Eureka
简介Eureka是基于REST(代表性状态转移)的服务,主要在AWS云中用于定位服务,以实现负载均衡和中间层服务器的故障转移。它主要分为Server和Client两个部份。与Zookeeper和Consul类型,是作用于服务注册和发现的组件。架构Eureka 的基本架构下图所示其中主要包括以下3种角色Register Service:服务注册中心,它是一个Eureka Server ,...
2020-01-08 10:12:26
870

原创 SpingCloud踩坑记(二)SpringCloud配置中心
springCloud配置中心官网介绍如下Spring Cloud Config provides server and client-side support for externalized configuration in a distributed system. With the Config Server you have a central place to manage ex...
2020-01-08 10:12:01
483

原创 SpingCloud踩坑记(一)SpringCloud是何物?
由来单体架构及存在不足在软件设计中,经常提及和使用经典的3层模型,即表示层、业务逻辑层和数据访问层。虽然在软件设计中划分了经典的3层模型,但是对业务场景没有划分。一个典型的单体应用就是将所有的业务场景的表示层、业务逻辑层和数据访问层放在一个工程中,最终经过编译、打包,部署在一台服务器上。例如典型的J2EE工程,它是将表示层的JSP、业务逻辑层的Service、Controller和数据访问层...
2020-01-08 10:11:49
426
2
原创 Unsafe JNI 问题常见修复方法
第三方进行安全漏洞扫描出现Unsafe JNI问题会引起安全问题原因是Java Native Interface(JNI)应用不当会导致 Java 应用程序容易受到其他语言的安全漏洞攻击。解决方法: 不用使用native的本地方法即可。1.system.currentTimeMillis();1)使用SystemClock.now()替换。2.isAssignableFrom();1)使用 obj instanceof XXX2)使用ClassUtils.isAssign
2022-04-22 22:00:00
1983
原创 使用pinpoint服务微服务链路跟踪
服务依赖jdk 1.8 hadoop 2.5.1 hbase 1.2.6 pinpoint 3.3.3 windows7系统hadoop安装下载Hadoop包http://archive.apache.org/dist/hadoop/core/hadoop-2.5.1/下载地址2.5.1版本安装包,访问http://archive.apache.org/dist/hadoop/core/hadoop-2.5.1/。解压Hadoop包,并添加环境变量将上面下载好的Hadoop..
2022-01-18 21:00:00
1897
原创 填坑日记(三)shiro整合memcache问题
memcache 1.1.4问题现象启动Shiro整合memcache共享Session的项目,访问出现There is no session with id的问题org.apache.shiro.session.UnknownSessionException: There is no session with id [6ec13a08-5ea9-488a-bbb3-0c9da209fb31] at org.apache.shiro.session.mgt.eis.AbstractSes..
2021-12-13 21:00:00
602
原创 填坑日记(二)
前言对接第三方系统,接口请求需要带上签名标识和返回数据需要验签。 整个系统使用编码格式为UTF-8问题描述IDEA进行对接调试,使用国密加解密生成签名标识和验签没问题,但是打成jar包后进行部署后,一直验签错误。问题排查进行部署环境DEBUG跟踪代码发现部署环境的String.getBytes()和本地直接IDEA启动String.getBytes()两个字节长度不一致,因此导致部署环境验签等问题查看String.getBytes()相关encode代码,代码如下: p
2021-11-25 10:48:02
809
原创 填坑日记(一)
问题描述使用maven打包部分配置如下: <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <version>2.4</version> <c
2021-11-14 10:07:32
817
原创 Spring REST Docs生成接口文档
介绍Spring REST Docs官网的介绍如下大概意思就是说通过Spring REST Docs是用Asciidoctor编写的手写文档和Spring MVC Test生成的自动生成的代码片段结合帮助我们生成RESTful服务的接口文档。与Swagger的对比如果有使用自动生成接口文档工具的同学,应该对Swagger不陌生。那Spring REST docs跟Swagger有哪些差异?对比如下:Spring REST DocsSwagger代码侵入性零侵入高,需
2021-04-29 16:42:10
905
原创 python librosa File contains data in an unknown format.
windows下报错:Error opening ‘media/xx/cj.mp3’: File contains data in an unknown format解决方案:下载ffmpeg找到其中的ffmpeg.exe文件,将其复制到项目目录下(文末附带了ffmpeg.exe文件,版本为 4.3.1 windows 64位)然后打开 项目文件夹\venv\Lib\site-packages\audioread\ffdec.py# COMMANDS = ('ffmpeg', 'avconv'
2020-10-16 18:01:46
5008
原创 JAVA之限流
何为限流?在开发高并发系统时,有三把利器用来保护系统:缓存、降级和限流。那么何为限流呢?顾名思义,限流就是限制流量,就像你宽带包了1个G的流量,用完了就没了。通过限流,我们可以很好地控制系统的qps,从而达到保护系统的目的。常见限流算法1、计算器算法计数器算法是限流算法里最简单也是最容易实现的一种算法。比如我们规定,对于A接口来说,我们1分钟的访问次数不能超过100个。那么我们可以这么做:...
2020-01-06 10:23:52
482
1
原创 ffmpeg推送音视频
ffmpeg -f video4linux2 -r 10 -s 640x480 -i "$CAMERA_DEV_NAME" -vcodec h264 -f alsa -thread_queue_size 1024 -i "$MIC_DEV_NAME" -ac 1 -b:a 128k -ar 44100 -tune zerolatency -preset medium -b:...
2019-07-26 10:37:56
1477
原创 基于Gensim的维基百科语料库中文词向量训练
环境:Win7 +Anaconda(自带Python3.6)安装Gensim库:在Anaconda Prompt中输入:pip install gensim等待其显示安装完毕即可1.语料库下载下载地址:https://dumps.wikimedia.org/zhwiki/2.将wiki的xml文件处理成正常的txt文件新建process.py文件,文件内...
2019-06-05 15:20:35
553
原创 JAVA的SPI机制
SPI : Service Provider Interface : 服务提供接口。 JavaSPI 实际上是“基于接口的编程+策略模式+配置文件”组合实现的动态加载机制。 具体而言: STEP1. 定义一组接口, 假设是Person; STEP2. 写出接口的一个或多个实现(Woman或者Man); STEP3....
2019-05-28 16:45:06
249
原创 deepdive使用错误及解决办法
/lib64/libc.so.6: version `GLIBC_2.14' not found或/lib64/libc.so.6: version `GLIBC_2.15' not found wget http://ftp.gnu.org/gnu/glibc/glibc-2.15.tar.gz wget http://ftp.gnu.org/gnu/glibc/glibc-por...
2019-05-28 15:50:41
841
原创 docker安装失败
yum -y install docker-io已加载插件:fastestmirror, security设置安装进程Loading mirror speeds from cached hostfile* base: mirrors.huaweicloud.com* elrepo: mirrors.tuna.tsinghua.edu.cn* epel: mirrors.huawe...
2019-05-13 14:42:48
1143
原创 正则表达式最短内容匹配
正则贪婪与懒惰当正则表达式中包含能接受重复的限定符时,通常的行为是(在使整个表达式能得到匹配的前提下)匹配尽可能多的字符。考虑这个表达式:a.*b,它将会匹配最长的以a开始,以b结束的字符串。如果用它来搜索aabab的话,它会匹配整个字符串aabab。这被称为贪婪匹配。有时,我们更需要懒惰匹配,也就是匹配尽可能少的字符。前面给出的限定符都可以被转化为懒惰匹配模式,只要在它后面加上一个问号?...
2019-05-09 09:31:58
1097
原创 ES设置字段搜索权重
GET /_search{ "query": { "bool": { "should": [ { "match": { "title": { "query": "quick brown fox", "boost": 2 //设置权重为2 ...
2019-04-28 22:09:48
10309
转载 java程序性能分析之thread dump和heap dump
一.dump基本概念 在故障定位(尤其是out of memory)和性能分析的时候,经常会用到一些文件来帮助我们排除代码问题。这些文件记录了JVM运行期间的内存占用、线程执行等情况,这就是我们常说的dump文件。常用的有heap dump和thread dump(也叫javacore,或java dump)。我们可以这么理解:heap dump记录内存信息的,thread du...
2018-08-23 16:34:30
261
转载 如何线程安全的使用 HashMap
转自:https://yemengying.com/2016/05/07/threadsafe-hashmap/深入理解ConcurrentHashMap原理分析以及线程安全性问题:https://blog.youkuaiyun.com/jjc120074203/article/details/78625433
2018-08-23 13:47:54
269
原创 Method的Invoke方法,调用失败注意点
从父类class通过getDeclaredMethod获取的Method可以调用子类的对象,而子类改写了这个方法,从子类class通过getDeclaredMethod也能获取到Method,这时去调用父类的对象也会报错。 public class ClassA { public void init(String i){ System.out.println("...
2018-08-22 17:42:11
6250
原创 easyui 扩展方法返回数据为空显示默认文字
$.extend($.fn.datagrid.methods, { /** * 空行显示内容 * @param content : 内容 */ insertNullContent : function(jq, param) { var content = param.content; var grid = $(jq); ...
2018-08-16 14:02:33
556
转载 数据库SQL优化大总结1之- 百万级数据库优化方案
转自:https://mp.weixin.qq.com/s?__biz=MzIxMjg4NDU1NA==&mid=2247483684&idx=1&sn=f5abc60e696b2063e43cd9ccb40df101&chksm=97be0c01a0c98517029ff9aa280b398ab5c81fa1fcfe0e746222a3bfe75396d9eea1...
2018-08-14 15:50:36
633
转载 网站应用服务器性能优化方案总结
应用服务器的性能优化大体上可以从一下四个方向入手:使用缓存 使用异步 进行服务器集群 进行代码优化应用服务器性能优化(一)——缓存一、使用缓存优化网站性能网站性能优化第一定律:优化考虑使用缓存优化性能缓存的本质是一个内存Hash表,网站应用中,数据缓存以一对Key,Value的形式存储在内存Hash表中。缓存主要用来存放那些读写比很高、很少变化的数据。二八定律...
2018-08-14 15:39:42
366
转载 Linux常用命令大全
Linux常用命令大全(非常全!!!)最近都在和Linux打交道,感觉还不错。我觉得Linux相比windows比较麻烦的就是很多东西都要用命令来控制,当然,这也是很多人喜欢linux的原因,比较短小但却功能强大。我将我了解到的命令列举一下,仅供大家参考: 系统信息 arch 显示机器的处理器架构(1) uname -m 显示机器的处理器架构(2) uname -r 显示正在使用...
2018-08-14 15:28:51
413
转载 Jenkins的详细安装及使用
操作环境:Windows一、环境准备1 安装JDK 本文采用jdk-8u111-windows-x64.exe;2 配置tomcat 本文采用tomcat8,无需安装,配置JAVA_HOME及JRE_HOME环境变量即可;3 安装maven 本文采用maven3.3.9,无需安装;4 安装Jenkins 下载地址https://jenkins.io...
2018-08-14 09:57:04
197
原创 臭皮匠零编程软件快速开发平台
我们的官网: http://www.stoogessoft.com/臭皮匠零编程软件快速开发平台,是一个拥抱HTML5标准,颠覆传统手工开发,使用在线可视化所见即所得开发模式,大幅提高程序员开发效率的自动化软件生产平台。臭皮匠软件快速开发平台几大特性:1、零编程可视化在线开发,低门槛,高效率2、基于JBPM6.0的自主研发的流程引擎,支持会审、分支、聚合、转办、改签、会签
2017-09-05 10:36:06
1577
原创 UEditor上传图片和上传文件(基于jquery)
客户端: 这里写你的初始化内容 UE.Editor.prototype._bkGetActionUrl = UE.Editor.prototype.getActionUrl;UE.Editor.prot
2017-07-19 12:36:33
1908
1
原创 css控制页面内容不能选中
body{ -webkit-user-select:none; -moz-user-select:none; -ms-user-select:none; user-select:none;}
2017-04-19 16:10:44
1328
poi操作word转html必须jar
2018-04-12
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人