自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

漂泊的程序猿

一个程序猿的成长路~~

  • 博客(36)
  • 收藏
  • 关注

原创 QLExpress规则引擎实例

what is QLExpressQLExpress是阿里开源的一个规则引擎,对java支持良好,具体描述及用法直接移步github:https://github.com/alibaba/QLExpressjust do it!github中对基本用法已经描述很清楚,此处不再赘述,我们直接通过一个入门案例来帮忙理解,fisrt我们先来看一段java伪代码if(新用户) { 赠送优惠...

2020-01-17 11:30:55 5243 1

原创 使用Feign发送http请求以及源码分析

使用Feign发送http请求以及源码分析简介Feign是一个http请求调用的轻量级框架,可以用Java接口注解的方式调用Http请求,而不用像Java中通过封装HTTP请求报文的方式直接调用。注解(Annotation)注解作用域用法@RequestLine方法定义HttpMethod和UriTemplate请求。 {expression}使用大括号括起来的值...

2020-01-15 16:35:45 1490

原创 es分词查询优化

我们的搜索一般都是基于es来实现的,中文的搜索经常使用的又是ik分词器,针对不同的使用场景,我们一般会使用分词本来维护ik分词,但是分词本很难覆盖用户所有的需求,所以查不到的问题就会经常遇到,有什么办法可以解决呢?通过关键字搜索是大家经常使用的功能,怎么查不到呢的疑惑也时常出现在我们耳边,那到底是为啥呢?

2023-03-03 13:44:23 172

原创 不要设置allow-bean-definition-overriding=true

allow-bean-definition-overriding不要设置为true

2022-06-14 16:37:09 1195

原创 RocketMq事务回查

RocketMq事务回查问题rocketmq发送事务消息后,如果事务没有返回实际结果COMMIT/ROLLBACK,就会触发到消息回查,消息回查的时间是多少呢?消息回查是怎么做的呢?开搞部署个本地rocketmq: 略新建个springboot项目:略根据官网加依赖,随便改改代码如下:package com.example.study;import org.apache.rocketmq.client.producer.LocalTransactionState;import

2021-09-01 19:32:56 1893

原创 java设计模式

面向对象六大原则指导思想可维护性(Maintainability)修改功能,需要改动地方越少,可维护性越好可复用性(Reusability)代码可以被重复使用,总结类库可扩展性(Extensibility/Scalability)添加功能无需修改原来代码灵活性(Flexibility/Mobility/Adapta...

2020-05-19 10:54:19 312

原创 分布式锁实现方式

分布式锁实现方式1.基于数据库创建一个专门的锁表,通过操作数据来实现。基于数据库的锁性能相对较差,一般都是首先排除的方案,必要才用。基于唯一索引实现以方法名为唯一索引,每次使用时插入,结束时删除,当无法插入时表示有人占有锁。这种方案的问题是服务挂掉可能数据一直存在,导致锁一直没有删除释放,需要定时清理。基于悲观锁实现通过悲...

2020-05-19 10:54:04 163

原创 一文搞定JVM调优

JVM内存模型程序计数器:线程私有,记录当前线程字节码执行的位置,占用内存很小,java虚拟机规范中唯一没有规定OOM的区域。java虚拟机栈:线程私有,每个java方法调用时候创建一个栈帧入栈,结束后出栈,所有栈帧出栈,线程结束。局部变量表:存放方法参数与内部定义的局部变量,编译期就确定最大容量。操作数栈:方法执行就是各种...

2020-05-19 10:52:29 174

原创 Docker入门及基础命令

Docker入门Docker介绍关于 Docker 是什么,有个著名的隐喻:集装箱。但是它却起了个“码头工人”(docker 的英文翻译)的名字。这无疑给使用者很多暗示:“快来用吧!用了 Docker,就像世界出现了集装箱,这样你的业务就可以随意的、无拘无束的运行在任何地方(Docker 公司的口号:Build,Ship,and ...

2020-03-10 22:30:32 126

原创 WordPress从Apache迁移到nginx

1.停掉httpd当前服务,禁用重启 service httpd stop#开机重启后,apache服务不再启动p chkconfig httpd off2.安装nginx yum -y install nginx3.安装php-fpm yum install php-fpm/etc/init.d/php-fpm...

2020-03-10 22:29:51 947

原创 java8初识

接口里允许使用default关键字,为接口声明添加非抽象的方法实现。这个特性又被称为扩展方法。默认方法可以直接使用。默认方法无法在lambda表达式内部被访问。(test1)一个所谓的函数式接口必须要有且仅有一个抽象方法声明。每个与之对应的lambda表达式必须要与抽象方法的声明相匹配。由于默认方法不是抽象的,因此你可以在你的函...

2020-03-10 22:29:40 152

原创 Spring-batch restart重拉机制

对于Spring-batch中的Reader-processor-writer模式,例如 <batch:step id="test-01"> <batch:tasklet> <batch:chunk reader="testR" process...

2020-03-10 22:29:39 633

原创 Docker容器中搭建rabbitmq集群

RabbitMq简介AMQP,即Advanced Message Queuing Protocol,高级消息队列协议,是应用层协议的一个开放标准,为面向消息的中间件设计。消息中间件主要用于组件之间的解耦,消息的发送者无需知道消息使用者的存在,反之亦然。AMQP的主要特征是面向消息、队列、路由(包括点对点和发布/订阅)、可靠性、安全。...

2020-03-10 22:29:36 296

原创 [Wechat-Public-Manage]1.前端VUE初始化

准备安装nodejs,选择LTS版本:下载 使用淘宝镜像npm install -g cnpm --registry=https://registry.npm.taobao.org 开始安装vue-clicnpm install vue-cli -g //全局安装 vue-cli 创建项目vue init we...

2020-03-10 22:29:32 136

原创 idea插件--时序图Plantuml

idea插件–时序图Plantuml基本语法@startumlA -> B: do somethingB -> A: do something@enduml不同的角色@startumlactor Foo1boundary Foo2control Foo3entity Foo4database Foo5...

2020-03-10 22:29:30 435

原创 Docker容器中搭建Redis集群

Redis简介Redis为传说中的内存数据库的一种,运行在内存中,性能强大,还可以用作缓存和消息中间件。Redis支持多种数据结构的存储,提供了大部分平台的客户端,使用方便。Redis优缺点优点性能极高:Redis能读的速度是110000次/s,写的速度是81000次/s。丰富的数据类型:Redis支持二进制案例的 String...

2020-03-10 22:29:20 278

原创 Hello,World!

第一次搭建,有点小激动,感谢夏某某的服务器和指导。

2020-03-10 22:29:17 116

原创 腾讯专有云解决方案--部分功能介绍

CMQ简介腾讯云消息队列(Cloud Message Queue,CMQ)是一种分布式消息队列服务,它能够提供可靠的基于消息的异步通信机制,能够将分布式部署的不同应用(或同一应用的不同组件)之间的收发消息,存储在可靠有效的 CMQ 队列中,防止消息丢失。CMQ 支持多进程同时读写,收发互不干扰,无需各应用或组件始终处于运行状态。 ...

2020-03-10 22:29:15 813

原创 Dubbo+Zookeeper+Spring-boot+dubbo-simple 搭建入门

安装Zookeeper[root@linxu ~]# wget http://mirrors.shu.edu.cn/apache/zookeeper/zookeeper-3.5.3-beta/zookeeper-3.5.3-beta.tar.gz[root@linxu ~]# tar -zxvf zookeeper-3.5.3-...

2020-03-10 22:29:11 202

原创 SpringBoot小知识点

Spring-boot 小知识点注解BeanMappingJackson2HttpMessageConverterSpring Boot底层通过HttpMessageConverters依靠Jackson库将Java实体类输出为JSON格式。当有多个转换器可用时,根据消息对象类型和需要的内容类型选择最适合的转换器使用。 ...

2020-03-10 22:29:08 94

原创 Redis集群搭建

redis安装请参考:http://www.reallinxu.com/2018/01/24/redis%E5%85%A5%E9%97%A8/1.单台机器redis集群搭建 [root@linxu ~]# mkdir /usr/local/redis-cluster #创建集群目录[root@linxu ~]# cd /us...

2020-03-10 22:29:02 144

原创 网站同时支持http和https访问

1.在腾讯云申请SSL证书https://buy.cloud.tencent.com/ssl?fromSource=ssl,此时选择了个人配置DNS,具体使用方法请参照官网说明。2.证书申请成功后,下载证书上传到服务器,将crt和key两个文件放到/usr/local/httpscrt文件夹中3.修改nginx配置文件如下: ...

2020-03-10 22:28:50 2915

原创 centos服务器安装mysql

安装mysql[root@localhost ~]rpm -qa | grep mysql #搜索指定rpm包是否安装。[root@localhost ~]yum install mysql #安装客户端[root@localhost ~]yum install mysql-server #安装服务端(此时安装失败,需要下载)[...

2020-03-10 22:28:43 100

原创 [数据结构]1.集合

MapHashMap基于数组+链表,默认大于8使用红黑树,小于6改为链表,默认容量是16,负载因子默认为0.75,HashMap每次put操作是都会检查一遍 size(当前容量)>initailCapacity*loadFactor 是否成立。如果不成立则HashMap扩容为以前的两倍,HashMap中计算Hash值封装为:(...

2020-03-10 22:28:43 93

原创 WordPress搭建

具体参考http://www.bandwagonhost.net/401.htmlhttp://www.bandwagonhost.net/403.html

2020-03-10 22:28:38 98

原创 时间简史

时间简史时间的开端公元前340年,亚里士多德提出地球是宇宙中心,是不动的,其他的行星和恒星都是围绕着地球做规律的圆周运动的,也就是地心说1514年,哥白尼提出了日心说。直到一个世纪后伽利略和开普勒通过观测才开始公开支持日心说,并且修正运动轨迹为椭圆形。1687年,牛顿提出万有引力定律,并证明了引力使月亮绕着地球转动,地球和其他...

2020-03-10 22:28:37 223

原创 git常用命令

Note此处为git使用过程中的一些常用命令记录汇总。初始化绑定github并提交 第一步:建立git仓库 cd到你的本地项目根目录下,执行git命令 git init 第二步:将项目的所有文件添加到仓库中 git add .如果想添加某个特定的文件,只需把.换成特定的文件名即可** 第三步:将add的文件com...

2020-03-10 22:28:28 143

原创 redis入门

安装redis[root@linxu ~]# wget http://download.redis.io/releases/redis-4.0.6.tar.gz[root@linxu ~]# tar xzf redis-4.0.6.tar.gz [root@linxu ~]# mkdir /usr/local/redis[roo...

2020-03-10 22:28:24 81

原创 微信小程序初探

微信小程序,简称小程序,英文名Mini Program,是一种不需要下载安装即可使用的应用,它实现了应用“触手可及”的梦想,用户扫一扫或搜一下即可打开应用。2017年1月9日,张小龙在2017微信公开课Pro上发布的小程序正式上线。前言:距离微信小程序发布已经过去很长一段时间了,怀着只求一知半解的心态来初探一下小程序,并利用小程...

2020-03-10 22:28:20 131

原创 lombok

前言“发明起源于懒”,当你在java开发中需要不停地重复编写set,get,tostring方法时,当你觉得这些代码很浪费时间,影响美观时,lombok你需要了解一下。简介lombok可以通过简单注解实现bean的set,get,tostring等方法,不再需要额外编写。lombok常用注解如下: @Data 注解在类上;提供...

2020-03-10 22:28:15 120

原创 nginx入门

nginx入门简介Nginx是一个很强大的高性能Web和反向代理服务。由俄罗斯的程序设计师lgor Sysoev(塞索耶夫)所开发,供俄国大型的入口网站及搜索引擎Rambler使用。其特点是占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好。nginx的崛起要感谢wordpress(WordPress...

2020-03-10 22:28:14 109

原创 java多线程与高并发---(一)线程与锁基础

线程基础进程与线程:进程是资源分配的最小单位,线程是程序执行的最小单位。启动线程的三种方式:1.继承Thread类;2.实现Runable接口;3.Executors.newCacheThread(本质为前两种之一)。线程的几个重要方法sleep:线程休息,TIMED_WAITING状态。yield:谦让的退出,让出一下cpu,...

2020-03-10 22:27:36 224

原创 Dockerfile构建java环境镜像

dockerfile详解Dockerfile是一个文本格式的配置文件,用户可以使用Dockerfile快速构建自定义的镜像。dockerfile基本结构dockerfile一般分为四部分:基础镜像信息维护者信息镜像操作指令容器启动时执行指令dockerfile基本命令FROM命令,选择一个基础镜像,如果有多个,可以使...

2020-03-10 22:27:35 1355

原创 java多线程与高并发---(二)JUC

volatile保证线程可见性禁止指令重排序单例模式双重检查,还是要加volatitle,问题可能会出在指令重排序上。 jvm new对象分为三步,申请内存—>构建成员变量–>赋值给对象,加了volatile才能保证赋值完成才会返回new出的对象。锁细化,前后都有逻辑,只有中间几步需要加锁,不加在方法,而加在这几步...

2020-03-10 22:27:33 146

原创 a=a++引发的思考

前言最近越来越感觉到java基础的重要性,开始重新拾起封存已久的《Thinking in java》,偶然的一个小案例引发了此次的思考。Demo首先一个小的demo:public class Test { public static void main(String[] args) { int a = 1;...

2020-03-10 22:27:23 266

原创 CentOS下安装JDK、NEXUS、TOMCAT、RABBITMQ集群

CentOS JDK NEXUS RABBITMQ集群 TOMCAT

2017-10-11 17:02:35 500 2

空空如也

空空如也

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

TA关注的人

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