- 博客(79)
- 资源 (2)
- 收藏
- 关注
原创 Git回滚本地已提交未推送的代码
时常提交代码时会多提交文件,推送的时候才发现多提交了文件。想回滚提交并且保留提交的修改执行以下命令:git reset --soft HEAD^
2024-05-29 11:26:00 426
原创 SQL优化之Oracle函数索引
SQL查询条件使用函数优化背景: 由于数据原因表关联只能使用函数对数据进行分隔select B.*from TABLE_A A cross join TABLE_B Bwhere substr(B.TID, 0, 22)=substr(A.TID, 0, 22) and B.TEST in ('X','XX','XX','XX','XXX','XXX'...
2022-09-16 17:05:00 1164 1
原创 Spring Cloud Alibaba 使用Gateway作为服务网关
为什么使用Gateway从没有网关的角度来看后台如有N个服务,那么前端则需要对接N个服务;只要后台修改IP或者端口等任何信息那么前端也需要修改。当服务对接了网关后前端只需要统一调用网关入口即可,具体调用那个服务,IP地址或者端口号是多少前端无需关注由网关处理。搭建网关服务创建普通SpringBoot工程(spring-cloud-alibaba-gateway)该工程当前用于搭建微服务网...
2022-09-06 11:05:00 556
原创 解决Nginx同网段ip_hash负载均衡无效果
问题Nginx ip_hash在局域网中所有机器访问的都是同一台机器没有Hash。造成原因如被Hash的Ip为192.168.1.100;实则上Nginx进行Hash算法时取的是192.168.1所以在局域网同网段所有机器得到的结果服务器都是同一台解决修改Nginx目录源码:nginx-1.18.0\src\http\modules\ngx_http_upstream_ip_hash_mo...
2022-08-30 09:41:00 2170 7
原创 RabbitMQ实现订单超时案例
前言人间清醒目录前言业务场景JUC(DelayQueue)方案DelayQueue简介JUC DelayQueue实现订单超时案例代码 案例代码Redis Key过期事件方案简介Rabbit Key过期时间实现订单超时案例代码JUC与Redis的不足为什么使用RabbitMQ来实现?RabbitMQ死信队列方案死信队列实现订单超时案例代码延迟消息插件方案延迟消息插件安装延迟消息实现订单超时案...
2022-08-26 09:57:00 839
原创 SpringBoot RabbitMQ 注解版 基本概念与基本案例
前言人间清醒目录前言Windows安装RabbitMQ环境工具下载Erlang环境安装RabbitMQ安装RabbitMQ Web管理端安裝RabbitMQ新增超级管理员RabbitMQ特点RabbitMQ 3种常用交换机RabbitMQ 5种常用模式RabbitMQ名词解释MQ适用场景异步处理场景应用解耦流量削峰消息通讯SpringBoot中使用RabbitMQ工程创建&准备简单队...
2022-08-24 09:22:00 562
原创 Linux部署多个Tomcat配置修改
多Tomcat部署配置修改修改配置文件: /opt/tomcat8.5/nps-tomcat8865/conf/server.xml ,修改以下三个配置端口为未被占用端口<Server port="8007" shutdown="SHUTDOWN"><Connector port="8081" protocol="HTTP/1.1" connectionTi...
2022-08-18 17:27:00 502
原创 Linux防火墙操作firewall、iptable
iptables防火墙命令操作# 查看防火墙状态service iptables status# 停止防火墙service iptables stop# 启动防火墙service iptables start# 重启防火墙service iptables restart# 永久关闭防火墙chkconfig iptables off# 永久关闭后重启chkconfig ip...
2022-08-18 17:14:00 338
原创 重构聚合支付案例教你如何写出高扩展性易读的代码
前言人间清醒目录前言聚合支付历史版本代码重构版本聚合支付代码定义支付统一参数DTO定义支付行为定义支付方式注解定义支付具体逻辑Bean保存容器PayService实现注册PayBeanContainer容器中定义支付模板方法开发微信支付提供统一支付接口给前端调用调用统一支付接口测试微信支付扩展支付宝支付调用统一支付接口测试支付宝支付总结今天你学费了吗?聚合支付历史版本代码以下代码逻辑为:按照...
2022-01-06 14:14:00 919
原创 Spring Cloud Alibaba 使用Seata解决分布式事务
为什么会产生分布式事务?随着业务的快速发展,网站系统往往由单体架构逐渐演变为分布式、微服务架构,而对于数据库则由单机数据库架构向分布式数据库架构转变。此时,我们会将一个大的应用系统拆分为多个可以独立部署的应用服务,需要各个服务之间进行远程协作才能完成事务操作。在微服务项目中通常一个大项目会被拆分为N个子项目,例如用户中心服务,会员中心服务,支付中心服务等一系列微服务,在面临各种业务需求时难免会产生用户中心服务中需要调用会员中心服务,支付中心服务而产生调用链路;服务与服务之间通讯采用RPC远程调用技术...
2022-01-03 17:05:03 1339
原创 Spring Cloud Alibaba 使用Feign进行服务消费
为什么使用Feign?Feign可以把Rest的请求进行隐藏,伪装成类似SpringMVC的Controller一样。你不用再自己拼接url,拼接参数等等操作,一切都交给Feign去做。使用Feign进行消费将需要使用feign的工程增加一下依赖pom.xml<!-- openfeign 服务发现调用 --><dependency> <group...
2021-11-05 10:58:00 175
原创 Spring Cloud Alibaba 使用Nacos作为配置管理中心
为什么需要配置中心?动态配置管理是 Nacos 的三大功能之一,通过动态配置服务,我们可以在所有环境中以集中和动态的方式管理所有应用程序或服务的配置信息。动态配置中心可以实现配置更新时无需重新部署应用程序和服务即可使相应的配置信息生效,这极大了增加了系统的运维能力。服务配置中心工程改造继续使用之前的工程:spring-cloud-alibaba-service-userpom.xml...
2021-11-01 10:55:00 303
原创 Spring Cloud Alibaba 使用Nacos作为服务注册中心
为什么需要注册中心?在分布式架构中,服务会注册到这里,当服务需要调用其它服务时,就到这里找到服务的地址,进行调用;服务管理,核心是有个服务注册表,心跳机制动态维护 ;服务注册创建普通SpringBoot工程(spring-cloud-alibaba-service-user)该工程当前用于使用Nacos进行服务注册。pom.xml<?xml version="1.0" encod...
2021-10-28 16:49:00 346
原创 Spring Cloud Alibaba 介绍及工程准备
简介SpringCloud Alibaba是阿里巴巴集团开源的一套微服务架构解决方案。微服务架构是为了更好的分布式系统开发,将一个应用拆分成多个子应用,每一个服务都是可以独立运行的子工程。其中涵盖了非常多的内容,包括:服务治理、配置管理、限流降级以及对阿里开源生态(Dubbo、RocketMQ等)支持的N多组件。SpringCloud Alibaba相关组件Sentinel:阿里巴巴开...
2021-10-28 16:46:00 349
原创 Kubernetes集群环境搭建全过程
资源准备以及服务器初始化所有服务器执行一下脚本进行配置信息初始化:#!/bin/bashcd `dirname $0` # 关闭selinuxsetenforce 0sed -i '/SELINUX/s/enforcing/disabled/g' /etc/selinux/config# 禁用NetworkManagersystemctl stop NetworkManager...
2021-03-20 17:33:00 271 1
原创 架构到底是指什么?
架构是顶层设计;框架是面向编程或配置的半成品;组件是从技术维度上的复用;模块是从业务维度上职责的划分;系统是相互协同可运行的实体。我们要做的东西都能抽象为一个系统,架构既可做动词也可做名词,作为动词就代表系统的设计,作为名词就代表系统的表现形式。所以架构首先继承了系统的属性:0、系统整体有价值1、由多个有关系的个体组成2、涌现,整体大于个体之和,也就是文中说的“流”出来的新的价...
2020-08-13 11:59:00 989
原创 Docker制作能够ssh连接的镜像
本类文章只作为记录使用命令操作:#拉取Centos 7docker pull centos:7 #运行一个镜像docker run -tdi --privileged centos:7 init#设置root用户初始化密码passwd rootdocker exec -it containerId bash#进入容器后安装依赖 yum install openss...
2020-08-03 14:23:00 183
原创 (六)、Docker 之 Dockerfile
1、什么是DockerfileDockerfile是用来构建Docker镜像的构建文件,是由一系列命令和参数构成的脚本。2、Dockerfile解析过程前提认知:每条保留字指令都必须为大写字母且后面要跟随至少一个参数指令按照从上到下,顺序执行表示注释每条指令都会创建一个新的镜像层,并对镜像进行提交解析流程:docker从基础镜像运行一个容器执行一条指令并对容...
2020-07-30 17:22:00 135
原创 (五)、Docker 容器数据卷
1、什么是数据卷将运用与运行的环境打包形成容器运行 ,运行可以伴随着容器,但是我们对数据的要求希望是持久化的容器之间希望有可能共享数据Docker容器产生的数据,如果不通过docker commit生成新的镜像,使得数据做为镜像的一部分保存下来,那么当容器删除后,数据自然也就没有了。为了能保存数据在docker中我们使用卷。卷就是目录或文件,存在于一个或多个容器中,由do...
2020-07-27 14:55:00 96
原创 (四)、Docker 镜像
1、Docker镜像是什么?镜像是一种轻量级、可执行的独立软件包,用来打包软件运行环境和基于运行环境开发的软件,它包含运行某个软件所需的所有内容,包括代码、运行时、库、环境变量和配置文件。2、Docker镜像加载原理docker的镜像实际上由一层一层的文件系统组成,这种层级的文件系统UnionFS。bootfs(boot file system)主要包含bootloader和ke...
2020-07-27 13:42:00 66
原创 (三)、Docker常用基础命令
1、Docker 帮助命令帮助命令:docker version 查看版本docker info 查询docker详细信息docker --help 查看命令帮助2、Docker 镜像命令docker images 查看docker镜像docker images -a 列出本地所有的镜像(含中间映像层)docker images -q 只显示镜像IDdocker ...
2020-07-27 13:24:00 97
原创 (二)、Docker 快速入门
文档:https://docs.docker.com/install/linux/docker-ce/centos/中文文档:https://docs.docker-cn.com/engine/installation/linux/docker-ce/centos/#prerequisites1、CentOS6.5安装DockerDocker使用EPEL发布,RHEL系的OS首先要...
2020-07-27 13:23:00 75
原创 (一)、Docker 简介
1、Docker镜像是什么?镜像是一种轻量级、可执行的独立软件包,用来打包软件运行环境和基于运行环境开发的软件,它包含运行某个软件所需的所有内容,包括代码、运行时、库、环境变量和配置文件。2、Docker镜像加载原理docker的镜像实际上由一层一层的文件系统组成,这种层级的文件系统UnionFS。bootfs(boot file system)主要包含bootloader和ke...
2020-07-27 13:22:00 104
原创 Jenkins Pipeline 部署 SpringBoot 应用
一. 安装依赖包yum install -y wgetyum install -y gcc-c++yum install -y zlib-devel perl-ExtUtils-MakeMakeryum -y install curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-ExtUtil...
2020-07-07 20:23:00 1378 1
原创 Java中使用JavaScript脚本
简介 NashornNashorn 一个 javascript 引擎。从JDK 1.8开始,Nashorn取代Rhino(JDK 1.6, JDK1.7)成为Java的嵌入式JavaScript引擎。Nashorn完全支持ECMAScript 5.1规范以及一些扩展。它使用基于JSR 292的新语言特性,其中包含在JDK 7中引入的 invokedynamic,将JavaScrip...
2020-03-30 14:31:00 215
原创 MyBatis拦截器自定义分页插件实现
MyBaits是一个开源的优秀的持久层框架,SQL语句与代码分离,面向配置的编程,良好支持复杂数据映射,动态SQL;MyBatis 是支持定制化 SQL、存储过程以及高级映射的优秀的持久层框架。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以对配置和原生Map使用简单的 XML 或注解,将接口和 Java 的 POJOs(Plain Old Jav...
2019-10-24 10:33:13 487
原创 Java网络传输数据加密算法
算法可逆,具有跨平台特性import java.io.IOException;import java.io.UnsupportedEncodingException;import java.security.MessageDigest;import javax.crypto.Cipher;import javax.crypto.spec.IvParameterSpec;im...
2019-09-25 17:27:00 956
原创 SpringBoot入门
springboot入门Authro:SimpleWuspringboot官方springboot2.1.0参考文档springboot配置properties大全SpringBoot是什么?springboot是spring家族中微型框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。Spring Boot可以轻松创建独立的,生产级的基于Spring的应用...
2019-09-05 14:52:47 4527
原创 SpringBoot配置文件priperties大全
flyway.baseline-description执行基线时标记已有Schema的描述。flyway.baseline-on-migrate在没有元数据表的情况下,针对非空Schema执行迁移时是否自动调用基线。(默认值:false 。)flyway.baseline-version执行基线时用来标记已有Schema的版本。(默认值: 1 。)flyway.check-loca...
2019-09-05 14:52:13 4835
原创 SpringBoot配置详解
SpringBoot配置详解Author:SimpleWuproperteis文件属性参考大全springboot默认加载配置SpringBoot使用两种全局的配置文件,全局配置文件可以对一些默认配置进行修改。application.properties application.yml这两个配置文件使我们springboot启动的时候回默认加载的配置文件。配置文件放...
2019-09-05 14:51:57 2211 3
原创 SpringBoot自定义异常处理
springboot异常处理Author:SimpleWu默认错误处理机制SpringBoot默认的错误处理直接回返回对应的错误视图页面。比如404错误。如果是其它客户端访问,默认相应一个json数据。比如通过postman来访问当前页面。springboot错误页面处理过程:SpringBoot的错误信息配置是通过ErrorMvcAutoConfiguration来进...
2019-09-05 14:51:06 5349
原创 SpringCloud Hoxton.SR3 服务注册中心 Eureka
服务注册中心 EurekaEureka,是 Spring Cloud Netflix 组件之一。 包含服务治理(Eureka)包括服务注册、服务发现和服务检测监控等。在Spring Cloud Netflix 整合技术栈中,Eureka既可以作为服务注册中心也可以用于服务发现对整个微服务架构起着最核心的整合作用。那啥是服务注册中心?举个例子:某某洗浴中心则作为服务注册中心。那啥...
2019-07-12 17:05:00 171
原创 企业级SpringBoot与Dubbo的使用方式
企业级SpringBoot与Dubbo的使用方式SpringBoot越来越热门以至于达到满大街可见的程度,而Dubbo这个基于二进制的微服务框架又捐献给Apache孵化,如果不会如何使用那么是不是很不好意思呢?这次从公司的项目中抽一个小列子来熟悉下如果从零构建,至于深入了解->传送门:Dubbo官方中文手册版本:Springboot2.xDouble2.6Zk3.4....
2019-05-08 18:10:00 171
原创 SpringBoot整合Swagger
@Author:SimpleWu什么是Swagger?Swagger是什么:THE WORLD’S MOST POPULAR API TOOLING根据官网的介绍:Swagger Inspector:测试API和生成OpenAPI的开发工具。Swagger Inspector的建立是为了解决开发者的三个主要目标。执行简单的API测试生成OpenAPI文档探索新的API...
2019-01-12 21:42:00 63
原创 分布式Session共享解决方案
分布式Session解决方案Author:SimpleWu分布式Session一致性?说白了就是服务器集群Session共享的问题Session的作用?Session 是客户端与服务器通讯会话跟踪技术,服务器与客户端保持整个通讯的会话基本信息。客户端在第一次访问服务端的时候,服务端会响应一个sessionId并且将它存入到本地cookie中,在之后的访...
2018-12-14 12:00:00 14543 3
原创 MongoDB基础应用
Author:SimpleWu聚合聚合(aggregate)主要用于处理数据(诸如统计平均值,求和等),并返回计算后的数据结果。有点类似sql语句中的 count(*)。//统计员工总数db.emp.aggregate([{$count:"countName"}])//或者db.emp.find().count()$group使用$group是对筛选的数据进行分组。类...
2018-11-24 15:13:00 133
原创 MangoDB快速入门
Author:SimpleWuMongoDB官方网:https://www.mongodb.com/MongoDB中文网:http://www.mongodb.org.cn/什么是MongoDB?NoSQL(NoSQL = Not Only SQL ),意即"不仅仅是SQL"。NoSQL,指的是非关系型的数据库。NoSQL有时也称作Not Only SQL的缩写,是对不同于...
2018-11-23 16:53:00 184
转载 如何在面试中介绍自己的项目经验
在面试时,经过寒暄后,一般面试官会让介绍项目经验 。常见的问法是,说下你最近的(或最拿得出手的)一个项目。 根据我们的面试经验,发现有不少候选人对此没准备,说起来磕磕巴巴,甚至有人说出项目经验从时间段或技术等方面和简历上的不匹配,这样就会造成如下的后果。 第一印象就不好了,至少会感觉该候选人表述能力不强。 一般来说,面试官会根据候选人介绍的项目背景来提问题,假设...
2018-11-10 10:45:55 19564 3
eclipse java注释模板
2018-08-15
struts2源码解析
2018-07-19
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人