自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

sout

静心学习

  • 博客(254)
  • 资源 (1)
  • 收藏
  • 关注

原创 Redis中的两种持久化方式的介绍(RDB、AOF)

Redis作为一个缓存数据库,如果我们不设置其持久化方式,那么数据是不会被保存下来的,因为其基于内存进行数据存储,一旦服务器宕机后,其数据便不可恢复。一、RDB方式的持久化在指定的时间间隔内将内存中的数据集快照写入磁盘,也就是行话讲的Snapshot快照,它恢复时是将快照文件直接读到内存里。1.rdb方式下redis如何进行数据持久化的?Redis会单独创建(fork)一个子进程来...

2020-02-22 13:18:14 278

原创 谈一谈分布式架构的相关重要概念(RPC、高并发高可用、限流、熔断、负载均衡)

目录第一章 分布式概念1.1 什么是分布式1.2 分布式与集群的关系1.3 软件架构演变1.4 RPC是什么第二章 分布式思想与基本概念2.1 高并发2.1.1 通过设计保证系统可以并行处理很多请求。 应对大量流量与请求2.1.2 高并发衡量指标2.2 高可用2.2.1 服务集群部署2.2.2数据库主从+双机热备2.3 ...

2020-01-30 13:20:27 3688 2

原创 小结一下这两年的备考

总结~

2021-12-31 00:13:34 360

原创 考研,停更一年,望大家继续关注我

今年考研,准备博客停更一年到年底,大家待我卷土重来。

2020-04-30 00:44:49 390

原创 MybatisPlus--复杂条件构造类 Wrapper 及在增删查改中的使用

如果想进行复杂条件查询,那么需要使用条件构造器 Wapper,涉及到如下方法1、delete2、selectOne3、selectCount4、selectList5、selectMaps6、selectObjs7、update一、wapper介绍Wrapper : 条件构造抽象类,最顶端父类 AbstractWrapper : 用于查询条件封装...

2020-02-25 20:16:49 6993

原创 MybatisPlus--CRUD接口及主键增长策略、自动填充、乐观锁更新数据

目录一、insert1、插入操作2、主键策略二、update1、根据Id更新操作2、自动填充3、乐观锁三、select1、根据id查询记录2、通过多个id批量查询3、简单的条件查询4、分页四、delete1、根据id删除记录2、批量删除3、简单的条件查询删除4、逻辑删除一、insert1、插入操作@RunWith(S...

2020-02-25 19:25:19 1272

原创 MybatisPlus入门介绍使用

一、简介官网:http://mp.baomidou.com/参考教程:http://mp.baomidou.com/guide/MyBatis-Plus(简称 MP)是一个MyBatis的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。二、特性无侵入:只做增强不做改变,引入它不会对现有工程产生影响,如丝般顺滑 损耗小:启动即会自动注...

2020-02-25 14:23:07 370

原创 redis--集群搭建

当redis需要水平扩容,而且并发写操作比较多的时候,就需要redis集群环境来解决这种redis服务器的压力redis通过主从复制实现了读写分离通过哨兵+主从复制的机制解决了单点故障。通过集群来进行水平扩容分担写的压力,并提高服务器的高可用性。redis从3.0后开始支持了集群。一、什么是集群Redis 集群实现了对Redis的水平扩容,即启动N个redis节点,将整个数...

2020-02-22 15:35:12 178

原创 详细了解一下Redis中的事务

1.redis事务介绍•Redis事务是一个单独的隔离操作:事务中的所有命令都会序列化、按顺序地执行。事务在执行的过程中,不会被其他客户端发送来的命令请求所打断。所以:• Redis事务的主要作用就是串联多个命令防止别的命令插队2.在Redis中如何操作事务 (Multi、Exec、discard)•从输入Multi命令开始,输入的命令都会依次进入命令队列中,但...

2020-02-22 12:50:41 302

原创 Vue基础--基本语法

一、介绍1、Vue.js 是什么2、初识Vue.js二、基本语法1、基本数据渲染和指令2、双向数据绑定3、事件4、修饰符5、条件渲染6、列表渲染7、计算属性一、介绍1、Vue.js 是什么Vue (读音 /vjuː/,类似于 view) 是一套用于构建用户界面的渐进式框架。Vue 的核心库只关注视图层,不仅易于上手,还便于与第三方库或既...

2020-02-20 15:43:11 362

原创 前端开发工具VScode的下载安装及插件配置

一、前端开发前端工程师“Front-End-Developer”源自于美国。大约从2005年开始正式的前端工程师角色被行业所认可,到了2010年,互联网开始全面进入移动时代,前端开发的工作越来越重要。最初所有的开发工作都是由后端工程师完成的,随着业务越来越繁杂,工作量变大,于是我们将项目中的可视化部分和一部分交互功能的开发工作剥离出来,形成了前端开发。由于互联网行业的急速发展,导...

2020-02-20 14:53:30 837

原创 ES6--JS新规范的入门使用

自学参考:http://es6.ruanyifeng.com/一、ECMAScript 6 简介ECMAScript 6.0(以下简称 ES6)是 JavaScript 语言的下一代标准,已经在 2015 年 6 月正式发布了。它的目标,是使得 JavaScript 语言可以用来编写复杂的大型应用程序,成为企业级开发语言。1、ECMAScript 和 JavaScript 的关系一...

2020-02-19 13:29:45 440

原创 ElasticSearch---Java中如何使用

目前市面上有两类客户端一类是TransportClient 为代表的ES原生客户端,不能执行原生dsl语句必须使用它的Java api方法。另外一种是以Rest Api为主的missing client,最典型的就是jest。 这种客户端可以直接使用dsl语句拼成的字符串,直接传给服务端,然后返回json字符串再解析。两种方式各有优劣,但是最近elasticsearch官网,宣布计划在...

2020-02-17 16:05:03 736

原创 ElasticSearch--IK中文分词器的配置

elasticsearch本身自带的中文分词,就是单纯把中文一个字一个字的分开,根本没有词汇的概念。但是实际应用中,用户都是以词汇为条件,进行查询匹配的,如果能够把文章以词汇为单位切分开,那么与用户的查询条件能够更贴切的匹配上,查询速度也更加快速。分词器下载网址:https://github.com/medcl/elasticsearch-analysis-ik1.安装下载好的zip包...

2020-02-17 16:03:28 348

原创 ElasticSearch--概念理解与基本实操

一、基本概念 cluster 整个elasticsearch 默认就是集群状态,整个集群是一份完整、互备的数据。 node 集群中的一个节点,一般只一个进程就是一个node shard 分片,即使是一个节点中的数据也会通过hash算法,分成多个片存放,默认是5片。 ...

2020-02-17 15:57:34 272

原创 ElasticSearch--入门介绍及Centos7下安装

一、搜索功能带来的问题目前各大网站无外乎都有搜索功能,作为很重要的功能,自然而然要求其稳定、准确。常见的全网搜索引擎,像百度、谷歌这样的。但是除此以外,搜索技术在垂直领域也有广泛的使用,比如淘宝、京东搜索商品,万芳、知网搜索期刊,csdn中搜索问题贴。也都是基于海量数据的搜索。海量数据的搜索如果是采用传统的关系型数据库进行弊端: 1、 对于传统的关系性数据库对于关键词的查...

2020-02-17 15:20:59 222

原创 docker介绍及入门使用

一、Docker简介1.为什么会有Docker出现呢?一款产品从开发到上线,从操作系统,到运行环境,再到应用配置。作为开发+运维之间的协作我们需要关心很多东西,这也是很多互联网公司都不得不面对的问题,特别是各种版本的迭代之后,不同版本环境的兼容,对运维人员都是考验,Docker之所以发展如此迅速,也是因为它对此给出了一个标准化的解决方案。环境配置如此麻烦,换一台机器,就要重来一次,费力费...

2020-02-16 13:43:33 200

原创 分布式版本控制工具Git的介绍、基操 与 github联网使用

一、Git的简介Git是目前世界上最先进的分布式版本控制系统。能干啥?经典的集中管理型(CVS、VSS、SVN)特点: 实现了大部分开发中对版本管理的需求 结构简单,上手容易在windows上下载安装,本文不再描述,安装过程中需要注意的几个地方1)选择Git命令的执行环境,这里推荐选择第一个,就是单独用户Git自己的命令行窗口。不推荐和wind...

2020-02-14 11:18:36 212

原创 分布式系统中session一致性的说明及其解决方案(SpringSession)

一、谈一下HttpSession1.HttpSession其实Session作用域大家做后端开发的都清楚,用于会话级别的作用域,一般我们用其存储常用数据,这样就可以效率更高的拿到常用数据,而不需要再去占用一个数据库连接去查询数据库。Session是存储在服务端的一个会话级别的对象,对应着客户端的一个会话,Session依赖于浏览器进程,当浏览器进程关闭,其Session也就失效了,因为...

2020-02-05 18:23:21 1113

原创 项目中Swagger2、lombok(小辣椒)、以及短信API的调用 简单介绍

一、使用Swagger2实时生成接口文档(分布式系统使用)Swagger 是一个规范和完整的框架,用于生成、描述、调用和可视化 RESTful 风格的 Web 服务。总体目标是使客户端和文件系统作为服务器以同样的速度来更新。文件的方法,参数和模型紧密集成到服务器端的代码,允许API来始终保持同步。Swagger 让部署管理和使用功能强大的API从未如此简单。1.使用swagger生成实...

2020-02-03 11:24:17 888

原创 外机无法连接redis的解决方案

1.开放防火墙的6379端口firewall-cmd --zone=public --add-port=6379/tcp --permanent2.使配置立即生效firewall-cmd --reload3.修改redis配置文件将redis.conf 文件中的 bind 设置为bind 0.0.0.0重启redis服务4.尝试连接,连接成功...

2020-02-03 10:49:29 386

原创 centos7开放防火墙端口以及常用操作

一.开放防火墙端口(如果开放了直接看下一步)1、开放端口firewall-cmd --zone=public --add-port=6379/tcp --permanent #开放6379端口(firewall-cmd --zone=public --remove-port=6379/tcp --permanent#关闭6379端口)firewall-cmd --relo...

2020-02-03 10:46:40 432

原创 SpringCloud快速入门---Netflix项目的(Eureka、ribbon、Feign、Hystrim)的快速使用案例

目录第一章 SpringCloud介绍1.1 概念1.2 为什么使用Spring Cloud?1.3 应用Spring Cloud1.4 Spring Cloud是分布式系统的整体解决方案1.5 官方网站第二章 SpringCloud-HelloWorld架构图2.1 案例图解2.2 注册中心第三章 SpringCloud-HelloWorld案例开发-注册...

2020-01-31 16:26:59 986 3

原创 SpringSecurity--原理(代码级别)

第六章 SpringSecurity-原理6.1 认证原理-过滤器链的调用1 源码调试分析程序入口 打断点-第一批次 运行调试 打断点-关键点2 过滤器 <filter> <filter-name>springSecurityFilterChain</filter-name> <filter-class>...

2020-01-28 14:34:15 1046

原创 SpringSecurity---细粒度的权限控制

第五章 细粒度权限控制5.1 前置细节【Role和Authority的区别】5.1.1 用户拥有的权限表示roles("ADMIN","学徒","宗师")authorities("USER","MANAGER");5.1.2 给资源授予权限(角色或权限) //.antMatchers("/level1/**").hasRole("学徒") //.antMatche...

2020-01-28 14:24:07 4032

原创 SpringSecurity--认证的配置以及debug流程跟踪

第四章 认证使用数据库保存/查询用户数据,完成认证功能4.1 方式一:重写jdbcAuthentication规则(不推荐)基于数据库的RBAC查询出我们需要的用户以及这些用户的权限(权限标识、角色) 创建和SpringSecurity要求一模一样的表,然后用默认jdbcAuthentication 更新jdbcAuthentication里面所有我们需要实际运行的sql aut...

2020-01-28 14:04:44 3208

原创 SpringSecurity---八个小实验带你掌握最基本的使用

实验用到的模板https://download.csdn.net/download/m2606707610/12122449已上传,免费下载。在上一篇博客中我已经在HelloWorld中导入了该模板,大家可以参考上篇博客,来进行这篇博客的学习。https://blog.csdn.net/m2606707610/article/details/104099005第三章 Sprin...

2020-01-28 13:53:42 833

原创 SpringSecurity---简介以及HelloWorld环境搭建(所需资料文末免费下载)

第一章 SpringSecurity-简介1.简介https://docs.spring.io/spring-security/site/docs/4.2.10.RELEASE/guides/html5/helloworld-xml.htmlSpringSecurity融合Spring技术栈,提供JavaEE应 用的整体安全解决方案;Spring Security为基于Ja...

2020-01-28 13:02:14 576

原创 在Spring、Springboot中使用slf4j+logback日志框架的实现方案

第一章 介绍1.1 为什么有日志及框架?跟踪用户对系统访问 统计 Debug1.2 日志框架市场上存在非常多的日志框架。JUL(java.util.logging),JCL(Jakarta Commons Logging),Log4j,Log4j2,Logback(具体框架,springboot使用)、SLF4j、jboss-logging等。Spring 在框架内部使用...

2020-01-17 13:54:01 1143

原创 相对路径和绝对路径以及前台路径和后台路径的解释

首先弄清楚绝对路径和相对路径的区别。 绝对路径:固定不变的路径。 http://19.168.137.3:8080/xxx/yyy.jsp c:\temp\1.jsp 相对路径:与当前请求所访问的路径相关,是可变的路径。 ./1.jsp ../1.jsp 前台路径:浏览器端发起的请求路径。也就是浏览器端要解析的路径 ...

2020-01-09 11:25:38 1278

原创 VMWare挂起或重启客户端centos7断网问题

输入命令: chkconfig NetworkManager off chkconfig network on service NetworkManager stop service network start /etc/init.d/network restart

2020-01-07 18:23:13 556

转载 深入理解HashMap

文章目录什么是 HashMap?HashMap的简单使用HashMap中的负载因子和容量负载因子的默认值HashMap中的构造函数一、HashMap(int initialCapacity, float loadFactor)>> 与 >>> 的区别为什么容量必须为2的整数幂?二、HashMap(int initialCapacity)三、HashMap()四、Has...

2020-01-06 21:20:15 242

原创 Maven--详解Maven各个强悍的功能

第一章 WhyMaven是干什么用的?这是很多同学在学完这个课程后最大的问题。之所以会提出这个问题,是因为即使不使用Maven我们仍然可以进行B/S结构项目的开发。从表述层、业务逻辑层到持久化层再到数据库都有成熟的解决方案——不使用Maven我们一样可以开发项目啊?所以我们有必要通过企业开发中的实际需求来看一看哪些方面是我们现有技术的不足。1.1 添加第三方jar包在今天的JavaEE...

2020-01-06 17:19:08 2312

原创 Mycat--安装启动及配置读写分离、分库分表

一、Mycat简介Mycat是个数据库中间件,前身是阿里的cobar。利用Mycat可以对数据库集群进行管理。可以进行1.读写分离2.数据分片垂直拆分(分库)水平拆分(分表)垂直+水平拆分(分库分表)3.多数据源整合Mycat的原理:拦截。它拦截了用户发送过来的SQL语句,首先对SQL语句做了一些特定的分析:如分片分析、路由分析、读写分离分析、缓存分析等,然后将...

2019-12-29 17:46:00 208

原创 MySQL--主从复制搭建

一、主从复制的原理1 master将改变记录到二进制日志(binary log)。这些记录过程叫做二进制日志事件,binary log events;2 slave将master的binary log events拷贝到它的中继日志(relay log);3 slave重做中继日志中的事件,将改变应用到自己的数据库中。 MySQL复制是异步的且串行化的这里与Redis主从复制的数据...

2019-12-29 11:29:19 127

原创 MySQL优化--关联查询、子查询、排序分组的优化

一、关联查询的优化在做join的时候,原理为驱动表(主表)做全表扫描,对子表(被驱动表)可以利用索引进行优化,而驱动表的全表扫描是必须存在的。建表sql CREATE TABLE IF NOT EXISTS `class` (`id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,`card` INT(10) UNSIGNED NOT NUL...

2019-12-25 15:44:01 1430

原创 MySQL优化---单表索引失效原因及优化策略

一、数据准备往表里插50W数据以测试我们的SQL建表语句 CREATE TABLE `dept` ( `id` INT(11) NOT NULL AUTO_INCREMENT, `deptName` VARCHAR(30) DEFAULT NULL, `address` VARCHAR(40) DEFAULT NULL, ceo INT NULL , PRIMARY KEY...

2019-12-24 18:40:50 441

原创 MySQL优化---常见的性能瓶颈以及Explain详解

一、MySQL常见性能瓶颈CPU方面:SQL中对大量数据进行比较、关联、排序、分组。IO方面:实际内存满足不了缓存数据或排序等需要,导致产生大量的物理I/O操作。锁:不适宜的锁设置,导致线程阻塞性能下降。死锁,线程之间交叉调用资源导致死锁,程序卡住。服务器硬件的性能瓶颈:可以通过top free iostat 和 vmstat来查看系统的性能状态。二、Explain1.Ex...

2019-12-23 21:23:23 1861

原创 Mysql优化---基于索引优化(B-Tree与B+Tree)

一、索引是什么?1.MySQL官方对索引的定义为:索引(Index)是帮助MySQL高效获取数据的数据结构,即索引的本质是一种数据结构。可以简单理解为:排好序的快速查找数据结构详解:在数据之外,数据库系统还维护着满足特定查找算法的数据结构---索引,这些数据结构是以某种方式引用(指向)数据,这样就可以在这些数据结构上实现高级的查找算法。左边是数据表,一共有两列七行数据,最左边存...

2019-12-21 16:01:46 491

原创 MySQL优化---可能导致性能下降的几个原因以及常用Join查询

1.SQL执行慢,执行时间长,等待时间长的原因1.1查询数据过多1.2关联了太多表,用了太多的join:join查询的原理,是用A表的每一条数据都去扫描B表的每一条数据。1.3没有利用到索引索引分为单值索引和复合索引单值索引创建:create index idx_user_id on user(id)复合索引创建:create index idx_user_id...

2019-12-19 22:08:26 482

security实验.zip

学习用到的模板,供大家免费下载。

2020-01-28

空空如也

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

TA关注的人

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