自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(44)
  • 收藏
  • 关注

转载 2020-10-29

Layui点击图片弹框预览的实现方法<img src="123.png" width="20px" height="20px" class="layui-upload-img" onclick="previewImg(this)">function previewImg(obj) { var img = new Image(); img.src = obj.src; //var height = img.height + 50; // 原图片大小 //var wi

2020-10-29 15:32:16 170

原创 Springcloud config 分布式配置中心SpringCloud Bus 消息总线

12.1 config 是什么Spring Cloud Config为分布式系统中的外部配置提供服务器和客户端支持微服务面临问题?微服务把单一服务拆成一个一个的子服务,每个服务粒度相对较小。在系统种会出现大量的服务。由于每个服务都需要必要的配置文件。一套集中式。 动态配置的设施。成百上千。。。。Springcloud config 为微服务架构种的微服务提供集中化的外部配置支持。 配置服务器为各个不同的微服务应用的所有环境提供了一个中心化的配置。12.2 config 能干什么​ 集中

2020-08-25 21:15:18 212

原创 Gateway服务网关

11.1 是什么GatewayCloud 全家桶中有一个非常重要得组件就是网关。 在1.x 版本 我们都采用得zuul网关。在zuul 一直跳票。 springcloud自己研发了一个网关替代zuul。gateway 是 zuul1.x 替代。Spring cloud Gateway 使用得webflux 中得reactor-netty 响应编程组件。 底层使用得netty框架11.2 能干什么Gateway反向代理鉴权流量控制熔断日志监控。。。。有了zuu

2020-08-25 21:04:45 504 1

原创 HystrixDashboard 监控

10.5.1 创建项目 cloud-hystrix-dashboar900110.5.2 引入pom.xml<dependencies> <!--hystrix dashboard--> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-s

2020-08-25 20:59:37 111

原创 Hystrix熔断器

十、Hystrix熔断器10.1是什么?Hystrix是一个处理分布式系统 延迟 和容错的开源的库 。在分布式系统系统过依赖不可避免的调用失败。 比如超时 异常 等。Hystrix 能够保证在一个依赖出现问题情况下。 不会导致我们的服务失败。 避免一个级联的故障。 来提高我们分布式的系统的弹性。熔断器 本身是一个开关装置。 当某个服务发生故障之后。 通过断路器的故障监控。 返回一个符合预期的可处理的备用的响应。10.2能干什么10.2.1 服务降级 (fllback)例如:当服务器超时、程

2020-08-23 21:21:44 176

原创 OpenFeign 服务接口调用

九、OpenFeign 服务接口调用9.1 是什么 ?Feign 是一个声明式webservice客户端, 使用Feign能让编写webservice客户端更加简单。它的使用方法 定义一个服务接口在上面添加注解 。 Feign也支持可以拔插式的编码器和解码器。spring cloud 对feign进行一些支持spring mvc 标准注解 。Feign可以和Eureka和Ribbon支持负载均衡9.2 能干什么?Feign主要目的编写java http客户端变得刚加容易。 我们以前已经使用

2020-08-23 21:20:57 783

原创 Ribbon负载均衡调用

八、Ribbon负载均衡调用8.1 是什么 ?Spring cloud Ribbon 是基于Netfilix Ribbon 实现一套 客户端 负载均衡工具。简单的说, Ribbon 是 Netflix 发布开源项目。 主要是提供客户端软件负载均衡算法和服务调用。 Ribbon客户端提供一系列完善的配置项如连接超时。 重连等。 简单的来说。 就是在配置文件中加入一个LoadBalanced(简称LB),后面所有的机器ribbon自动会帮我们基于魔种规则(轮询 随机连接)进行连接机器8.2 有什么功

2020-08-23 21:20:27 171

原创 Consul 服务注册与发现

7.1 是什么?Consul是一种分布式,高度可用且具有数据中心感知能力的解决方案,用于跨动态,分布式基础架构连接和配置应用程序。7.2 能干什么领事提供了几个关键功能:多数据中心 -Consul旨在支持数据中心,并且无需复杂的配置即可支持任意数量的区域。服务网格/服务细分 -Consul Connect通过自动TLS加密和基于身份的授权来实现安全的服务间通信。应用程序可以在服务网格配置中使用sidecar代理来为入站和出站连接建立TLS连接,而根本不知道Connect。服务发现 -Consu

2020-08-23 21:19:06 235

原创 zookeeper和eyreka区别

zookeeper和eyreka区别zookeeper:分布式协调服务。保证数据(配置数据。状态数据。)RDBMS ==>关系型数据库(mysql oracle sqlserver)遵循原则ACID原则(A原子性C一致性﹔独立性d持久性)Nosql ==>(redis , es,mogodb非关系型数据库)遵循原则CAP原则(C一致性﹐A可用性p分区容错性)在分布式领域有一个很著名一个CAP定理:C数据一致性A服务可用性p分区容错性在这个特性中在任何分布式系统中只能保证两

2020-08-23 21:15:10 452

原创 微服务,spring cloud,热部署,eureka注册服务,自我保护关闭

idea字符编码设置file encodjava编译版本java compiler过滤不显示的文件editor file types热部署:在pom 引入 devtools<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <scope&gt..

2020-08-23 21:14:57 305

原创 zookeeper安装 集群搭建linux

上传安装包到集群服务器解压修改配置文件进入zookeeper的安装目录的conf目录cp zoo_sample.cfg zoo.cfgvi zoo.cfg#The number of milliseconds of each ticktickTime=2000initLimit=10syncLimit=5#路径 zookeeper的根目录下创建dataDir=/root/zkdataclientPort=2181#autopurge.purgeInterval=1#三台服.

2020-08-18 19:30:56 86

原创 RDB持久化,linux Redis安装,

Redis安装,Yum install lrzsz 在linux里可代替ftp上传和下载。上传 tcl8.6.1-src.tar.gzredis-3.2.8.tar.gz解压tcl8.6.1-src.tar.gz #安装编译工具 安装tcl组件包 安装reids 需要tcl支持tar -zxvf tcl8.6.1-src.tar.gz -C /usr/local进入 tcl8.6.1 cd /usr/local/tcl8.6.1/unix unix 文件cd /us

2020-08-18 19:17:46 134

原创 Linux CentOS7 下的mysql安装与配置,Linux系统实现mysql主从复制

下载YUM库(下载本地在传输到虚拟机)wget http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm安装YUM库rpm -ivh mysql57-community-release-el7-10.noarch.rpm安装数据库yum -y install mysql-community-server完成安装,重启mysql查密码systemctl restart mysqldgrep ".

2020-08-18 19:17:39 95

原创 linux Redis集群搭建,哨兵配置,Redis事务,Redis瑞士军刀,pipeline,发布订阅, GEO

linux Redis集群搭建,修改ipvim /etc/sysconf ig/network -scr ipts/ ifcfg-ens33关闭防火墙才可链接查看防火墙是否启动firewall-cmd --state关闭或永久关闭 systemctl stop/disable firewalld.service父配置bind 设置ip子都是各自的ip在/etc/redis/6379.conf中修改vim /etc/redis/6379.conf子修改是否受保护protec

2020-08-18 19:17:30 104

原创 Nginx注册中心,Nginx keepalived四层负载均衡

Nginx注册中心实现动态配置第三方模块nginx-upsync-module-master支持consul_0.7.5_linux_amd64nginx-upsync-module-master解压unzip consul_0.7.5_linux_amd64启动./consul agent -dev -ui -node=consul-dev -client=192.168.66.55 解压unzip nginx-upsync-module-master进入 ,添加模块,编译cd

2020-08-16 18:48:54 883

原创 linux安装nginx,Nginx 虚拟主机配置,反向代理,负载均衡,负载均衡算法:

linux安装nginx下载依赖库 第三方的开发包PERE 是一个Perl库,包括 perl 兼容的正则表达式库。zlib库提供了很多种压缩和解压缩的方式,nginx使用zlib对http包的内容进行gzip,所以需要在linux上安装zlib库。OpenSSL 是一个强大的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及SSL协议,并提供丰富的应用程序供测试或其它目的使用yum -y install gcc pcre-devel zlib-devel ope

2020-08-16 18:48:46 105

原创 linux安装tomcat,菜鸟教程

解压tar -zxvf apache-tomcat-8.5.56.tar.gz 运行cd apache-tomcat-8.5.56/bin/./startup.sh 查看端口service iptables status配置公用端口vim /etc/sysconfig/iptablesservice iptables restart 查看端口netstat -anp|more

2020-08-16 18:48:35 428

原创 linux安装jdk,配置java环境变量,

在linux里可代替ftp上传和下载。yum install lrzsz 2.压缩包放在cd /optrz 上传文件 或者 wget+文件地址下载安装JDK:解压到c /usr/local/tar -zxvf jdk-8u201-linux-x64.tar.gz -C /usr/local/进入cd /usr/local/jdk1.8.0_201/pwd获取地址/usr/local/jdk1.8.0_201配置环境变量:vi /etc/profile/最下方加入代码ex

2020-08-16 18:48:25 121

原创 Springmvc架构原理解析

Springmvc架构原理解析第一步:发起请求到前端控制器(DispatcherServlet)第二步:前端控制器请求HandlerMapping查找 Handler可以根据xml配置、注解进行查找第三步:处理器映射器HandlerMapping向前端控制器返回Handler第四步:前端控制器调用处理器适配器去执行Handler第五步:处理器适配器去执行Handler第六步:Handler执行完成给适配器返回ModelAndView第七步:处理器适配器向前端控制器返回ModelAndView

2020-08-16 18:48:08 262

原创 SSM搭建流程图

SSM搭建流程图1.创建mvn项目 完善目录结构<properties> <!-- 数据库相关版本 --> <jdbc.driver.version>5.1.25</jdbc.driver.version> <mybatis.version>3.2.5</mybatis.version> <mybatis-spring.version>1.2.2</mybatis-spring.v

2020-08-16 18:47:55 337

原创 Thymeleaf语法webjars使用

Thymeleaf概述Thymeleaf是一个Java模板引擎,支持html、xml、text、javascript、css、raw这几种模型。使用Thymeleaf首先需要引入命名空间<html xmlns:th="http://www.thymeleaf.org">基本使用方法引用web静态资源 Thymeleaf通过”@{}”来引用web静态资源,例如:<script th:src="@{bootstrap/js/boostrap.min.js}">.

2020-08-16 18:47:45 686

原创 Springboot优雅处理异常,全局异常处理

异常实体类package com.etc.exitpation;import lombok.Data;/** * 处理业务异常 */@Datapublic class BizExiption extends RuntimeException { /** * 错误码 */ protected String errorcode; /** * 错误信息 */ protected String errormsg; .

2020-08-16 18:47:34 248

原创 Spring boot远程调试nginx项目debug调试

Sptring boot远程调试应用程序打包mvn clean install -Dmaven.test.skip=true把jar包上传至linux系统中开启远程调试java -Xdebug -xrunjdwp:transport=dt_ socket , address=5005 ,server=y, suspend=n -jar项目在idea中创建Remote 设置ip 设置端口...

2020-08-16 18:47:24 446

原创 单机容量问题 水平拓展 部署 openResty

单机容量问题 水平拓展mysql 数据库开放远程连接服务器水平对等部署验证访问部署:192.168.66.30 nginx192.168.66.31 miaosha.jar192.168.66.32 miaosha.jar192.168.66.33 myql redis部署 openRestyopenResty是一个基于ningx 与 lua 的高性能 web平台,他在内部集成了大量精良的Lua库。 以及第三方模块的依赖项,能够方便的搭建处理高并发。拓展性极高动态web应用

2020-08-16 18:46:50 149

原创 Springboot使用aop实现性能统计

引包<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-aop</artifactId> </dependency>/** * @Date: 2020/7/15 20:56 * @Description: */@Slf4j@Aspect@Compone.

2020-08-15 12:32:09 813

原创 过滤器拦截器监听器具体代码实现

过滤器过滤器是对数据进行过滤,预处理过程,当我们访问网站时,有时候会发布一些敏感信息,发完以后有的会用*替代,还有就是登陆权限控制等,一个资源,没有经过授权,肯定是不能让用户随便访问的,这个时候,也可以用到过滤器。过滤器的功能还有很多,例如实现URL级别的权限控制、压缩响应信息、编码格式等等。过滤器依赖servlet容器。在实现上基于函数回调,可以对几乎所有请求进行过滤。下面简单的说说Spring Boot里面如何增加过滤器。引入spring-boot-starter-web在pom.xml

2020-08-15 12:32:01 211

原创 SpringData-jpa介绍

JPA是什么?JPA(Java Persistence API)是Sun官方提出的Java持久化规范.为Java开发人员提供了一种对象/关联映射工具来管理Java应用中的关系数据. 它的出现是为了简化现有的持久化开发工作和整合ORM技术.结束各个ORM框架各自为营的局面. JPA仅仅是一套规范,不是一套产品, 也就是说Hibernate,TopLink等是实现了JPA规范的一套产品. Spring Data JPA Spring DataJPA是Spring基于ORM框架、JPA规范的基础上封装

2020-08-15 12:31:54 128

原创 Springboot整合Mybaits

application.properties配置文件mybatis.mapper-locations=classpath:mapper/*.xmlmybatis.type-aliases-package=com.etc.entityspring.datasource.driver-class-name=com.mysql.jdbc.Driverspring.datasource.url=jdbc:mysql://localhost:3306/findlist?useUnicode=true&

2020-08-15 12:31:46 70

原创 springboot自动配置原理

7.自动配置原理springboot启动的时候加载主配置类 并且开启了自动装配@EnableAutoConfiguration@EnableAutoConfiguration作用:利用AutoConfigurationlmportSelector给容器加载组件?调用selectlmports方法List configurations = getCandidateConfigurations(annotationMetadata, ttributes/,/获取候选的配置String facto

2020-08-15 12:31:38 113

原创 Spring boot 配置文件

配置文件1.value获取值与ConfigurationProperties获取值比较@ConfigurationProperties批量注入配置文件中的属性@value -个个指定如果说。我们只是在业务逻辑中需要获取某一个值 可以是@value如果说,我们专门编一个个javabean 来配置文件的映射,我们就可以直接使用configurationproperties<bean id="dog" class="com. etc . Dog"><property name="a

2020-08-15 12:31:31 73

原创 用户登录分布式session,用户添加 redis 设置cookie

<fastjson.version>1.2.38</fastjson.version> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> </dependency> <depende

2020-08-15 12:31:22 130

原创 Validator 参数校验springboot整合Validator,自定义手机号参数校验

简介:spring vallidator:是在spring context下,在spring boot项目中。我们引入spring boot-strarter-web, spring validation是对vallidator二次封装。使我们可以更加方便的springmvc中进行自动校验。Hibernate Validator:是JSR-303参考实现。常用注解:Constranitdesc@Null被注解的元索必须为空@notNull被注解的元素必须不为空.

2020-08-15 12:31:14 7798 2

原创 从cookie中获取用户,自定义参数拦截器处理cookie,用户登录设置cookie,登录用户信息写入redis,自定义页面跳转,

自定义页面跳转,配置文件,参数拦截package com.etc.config;import com.etc.access.AccessInterCeptor;import com.etc.access.AccessLimit;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.context.annotation.Configuration;import org..

2020-08-15 12:30:53 585

原创 Tomcat 线程数调优配置文件

1) 服务端 如何查看java进程的线程数量jps 查看java进程使用pstree -p 进程号 这个命令可以列出改进程下所有的线程出来使用命令 pstree -p 进程号 | wc -l 给我计算出一共有多少个线程查看结果[root@iZbp1j6g2ax5izam8a53ojZ src]# pstree -p 4409| wc -l33Tomcat 配置最大连接数# 等待队列的长度 默认 100# 当调用web服务的http的请求数量 到达tom

2020-08-15 12:30:40 612

原创 查询性能优化,本地热点缓存,实现对象缓存,页面URL缓存,页面缓存,基于Lua完成商品id的定向流量分发策略,Lua shared dict缓存

本地热点缓存实现:guava 开源java 库。是由谷歌公司研发。 这个库主要是为了方便编码,并且减少编码错误。 这个库用于集合 缓存 并发性 常用注解 字符串处理呀 i/o 和 验证 实用的方法。1引入pom引入guava <dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> &l

2020-08-14 14:35:15 326

原创 静态资源缓存和更新

五、 静态资源​ 本节课CDN的核心原理将静态页面部署在cdn上, 来提升我们商品详情页的流量能力发挥到极致。CDN静态资源 CDN—cache control 响应头​ —(1) DNS 用cname 解析到源站​ —(2)回源缓存设置cacahe-control 状态private 客户端可以缓存public 客户端和代理端进行缓存max-age= 缓存内存将在多少秒后失效no-cache 强制向服务器验证一次no-store 不可缓存浏

2020-08-14 10:53:32 359

原创 RabbitMQ基本队列 交易性能优化

简单队列连接代码封装:package com.etc.utils;import com.rabbitmq.client.Connection;import com.rabbitmq.client.ConnectionFactory;import java.io.IOException;import java.util.concurrent.TimeoutException;/** * @Author kalista * @Description * @Date 2020/8/6

2020-08-14 10:45:55 342

原创 redis预减库存 rabbitmq异步下单

减缓存 添加队列@ResponseBody @RequestMapping("/{path}/domiaosha") public ResultBean findall(@RequestParam("goodsId") Long goodsId, @PathVariable String path, User user, long addresssId) throws Exception { if (user == null) { return.

2020-08-14 10:43:44 939

原创 队列化泄洪- ExecutorService

我们一块想- -下,如果我们在开发一个网站 我们做秒杀活动,有10个商品进行秒杀,每个1000件, 那么我们要就要发50000个令牌,这个数量很大。队列进行泄洪就是把访问的用户分成批次,来减轻同时访问造成的压力。队列化泄洪- ExecutorService通过这个队列。中每次获取- 定数量的请求进行处理。处理的速度完全取决于 下游的窗口的速度。我们之前创建线程我们都是使用new Thread来创建线程。但这样有一些问题。 。a.每次new thread新建对象性能差。b.线程缺乏统-管理

2020-08-14 10:31:15 526

原创 交易安全 接口隐藏 前端实现结果轮询机制

/miaoshagoods/do_miaosha function checkPath() { var goodsid = $("#goodsId2").text() $.ajax({ url: "/miaoshavo/path", type: "get", data: { "goodsId": goodsid }, s.

2020-08-14 10:17:40 160

空空如也

空空如也

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

TA关注的人

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