- 博客(42)
- 收藏
- 关注
原创 RabbitMQ的5种消息模型
MQ官方教程地址:http://www.rabbitmq.com/getstarted.html什么是MQ`MQ`(Message Quene) : 翻译为 `消息队列`,通过典型的 `生产者`和`消费者`模型,生产者不断向消息队列中生产消息,消费者不断的从队列中获取消息。因为消息的生产和消费都是异步的,而且只关心消息的发送和接收,没有业务逻辑的侵入,轻松的实现系统间解耦。别名为 `消息中间件` 通过利用高效可靠的消息传递机制进行平台无关的数据交流,并基于数据通信来进行分布式系统的集成。基于AMQP协
2020-08-22 16:54:57
671
原创 TCP和UDP的实现
TCP和UDP的实现(网络编程入门)1.网络编程入门1.1软件架构CS/BSC/S结构 :全称为Client/Server结构,是指客户端和服务器结构。常见程序有QQ、迅雷等软件。B/S结构 :全称为Browser/Server结构,是指浏览器和服务器结构。常见浏览器有谷歌、火狐等。1.2网络通信协议**网络通信协议:**通过计算机网络可以使多台计算机实现连接,位于同一个网络中的计算机在进行连接和通信时需要遵守一定的规则,这就好比在道路中行驶的汽车一定要遵守交通规则一样。在计算机网络中,这些
2020-08-03 17:25:30
859
原创 Redis哨兵模式
Redis哨兵模式哨兵的介绍哨兵(sentinel) 是一个分布式系统,用于对主从结构中的每台服务器进行监控,当出现故障时通过投票机制选择新的 master并将所有slave连接到新的master。 ,主要有以下功能:• 集群监控:负责监控 redis master 和 slave 进程是否正常工作。• 消息通知:如果某个 redis 实例有故障,那么哨兵负责发送消息作为报警通知给管理员。(保持联通)• 故障转移:如果 master node 挂掉了,会自动转移到 slave node 上。哨兵
2020-07-30 19:06:33
365
原创 Redis主从复制机制
Redis主从复制机制1. 主从复制机制前言:1.1单机问题:1、 机器故障:硬盘故障、系统崩溃数据丢失,很可能对业务造成灾难性打击2、 容量瓶颈: 内存服务器,很吃内存,硬件技术限制,容量不能无限扩展为了避免单点Redis服务器故障,准备多台服务器,互相连通。将数据复制多个副本保存在不同的服务器上,连接在一起,并保证数据是同步的。即使有其中一台服务器宕机,其他服务器依然可以继续 提供服务,实现Redis的高可用,同时实现数据冗余备份。1.2所以就有了多台服务器连接方案:一个master(写
2020-07-28 17:09:06
318
原创 Redis删除策略和逐出算法
Redis中的数据特征:Redis是一种内存级数据库,所有数据均存放在内存中,内存中的数据可以通过TTL指令获取其状态 XX :具有时效性的数据 -1 :永久有效的数据 -2 :已经过期的数据 或 被删除的数据 或 未定义的数据数据删除策略:1. 定时删除 2. 惰性删除 3. 定期删除时效性数据的存储结构:数据删除策略的目标: 在内存占用与CPU占用之间寻找一种平衡,顾此失彼都会造成整体redis性能的下降,甚至引发服务器宕机或内存泄露1.定时删
2020-07-24 10:50:51
204
原创 Rides持久化机制
Rides的持久化及其原理一、 持久化介绍1.什么是持久化利用永久性存储介质将数据进行保存,在特定的时间将保存的数据进行恢复的工作机制称为持久化。2.怎样保证持久化Redis 为了保证效率,数据缓存在了内存中,但是会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件中,以保证数据的持久化。其实对应的就是Redis的俩种持久化策略:1.快照:RDB(Reids周期性的把更新的数据写入磁盘)2.日志:AOF(将Reids的操作日志以追加的方式写入文件)作用: 防止数据的意外丢失,确保
2020-07-20 22:40:00
969
原创 vm15安装的CentOS7LINUX系统开机黑屏问题
解决方法很简单:背景:win10系统。之前虚拟机用的好好的,突然遇到这个黑屏问题。1.修复winsock LSP在开始→搜索栏里打“cmd”后以管理员身份运行→在框里输入“netsh winsock reset”回车。重启系统。2.根本问题还是win10与WM15的版本兼容问题自己之前用的15.0.2出现问题。这里我直接重装的15.5版本问题应该彻底解决!1、官网下载VMware15.5https://www.vmware.com/cn/products/workstation-pro/wor
2020-07-17 10:58:52
619
原创 2003 - Cant’t connect to MySQL server on ‘ip’(10060 “Unknown error”)
远程连接MySQL数据库Can’t connect to MySQL server (10060“Unknown error”) 总结了一下几种方法就解决1.网络不通。检查能不能ping通。2.防火墙设置。这个可能性也很大,优先排查这个防火墙是否放过mysql的进程,是否屏蔽了mysql的3306端口。方法:防火墙开放3306端口1、打开防火墙配置文件 vi /etc/sysconfig/iptables2、增加下面一行 -A INPUT -m state --state NE
2020-07-13 11:01:00
2002
原创 oauth2 获取到access_token之后访问资源返回Cannot convert access token to JSON
{“error”:“invalid_token”,“error_description”:“Cannot convert access token to JSON”}重新生成RSA加密公钥私钥就好了
2020-07-09 17:08:22
2880
原创 Maven 引入jar包没问题,但是程序中使用jar中的类报错
MAVEN 引入jar包没问题,没法import背景:最近在做一个分布式项目,这个问题困惑了我2天,今天总算是解决了。网上搜到的方法都差不多,都不是我的问题都没法解决。试了老半天我知道我踩坑里去了,有啥法慢慢找办法解决。网上搜到这个问题的解决方法打折有这些:1.某些问题导致有些jar包下载不完整,在maven引入依赖时是不会报错的,但在使用此jar的时候会标红;1.通过编译找到报错的jar;2.在 repository找到此jar,一般未下载完大小为1k我的是这样();3.删除未下载完
2020-07-05 00:31:32
1673
转载 解决Maven无法下载fastdfs-client-java依赖
转载于:https://www.cnblogs.com/ZZS-DYL/p/9585222.html解决Maven无法下载fastdfs-client-java依赖,Dependency ‘org.csource:fastdfs-client-java:1.27-SNAPSHOT’ not foun因为fastdfs-client-java-1.27-SNAPSHOT.jar这个依赖包在maven中央仓库是没有的,而且我们配置的maven是引用阿里云中央仓库,(注意:本地必须安装了Maven,并配置好
2020-06-19 13:22:21
652
1
原创 IdWorker工具类
分布式自增长ID产生唯一的id,也可用其他方式生成id如通过时间搓的形式去产生不同的id。一个工具类:import java.lang.management.ManagementFactory;import java.net.InetAddress;import java.net.NetworkInterface;/** * <p>名称:IdWorker.java</p> * <p>描述:分布式自增长ID</p> * <pre>
2020-06-15 15:41:10
1697
原创 Docker的下载安装及基本使用
Docker的下载安装及基本使用**一、Docker的安装**1)前提:2)安装docker:二、docker常用指令和操作常用基础指令:2.镜像操作:容器操作:更多参考:一、Docker的安装1)前提:centos内核版本高于3.10 查看命令uname –r升级内核命令:yum update提示:Docker仓库:https://hub.docker.com2)安装docker:安装前准备:我安装的Docker再CentOS8上,第一步先yum更新一下:(最好都更新,不然后面运行事务
2020-06-12 13:20:41
200
原创 git快速下载与安装
git快速下载与安装1.下载在官方下载速度很慢提供一个快速下载网站:https://npm.taobao.org/mirrors/git-for-windows/找对应的版本,推荐最新版本。2.安装是最简单的全部默认安装next点到底。3.查看windows开始菜单安装是否成功点击Git Bash,输入git测试到安装成功!4.git的使用和svn都是版本管理工具都比较相似也比较简单。这儿了解一下:SVN与Git比较的优缺点差异https://www.cnblogs.com/S
2020-06-10 11:35:21
1980
1
原创 Redis 五种数据类型详解
Redis 五种数据类型Redis 的Key了解一下key相关指令Stringstring基本语法操作String类型注意事项:Key的设置约定String应用场景:HashHash基本语法操作Hash类型注意事项hash应用场景:ListList基本语法操作List使用注意事项![在这里插入图片描述](https://img-blog.csdnimg.cn/20200608175917398.png)应用场景:SetSet基本语法操作:Set使用操作注意事项Set应用场景:Sorted_setSorted
2020-06-08 18:05:57
3370
原创 Redis基础入门
Redis基础入门在下载安装前,先介绍一下入门基础知识:1.传统关系数据库:性能:磁盘IO性能低下扩展:数据关系复杂,扩展性能,不便于大规模集群2.Nosql(Not-OnlySql泛指非关系型数据库)作为关系型数据库的补充:降低磁盘IO次数,越低越好 ---------------磁盘性能低就用内存去除数据间关系,与简单越好---------------不存储关系,仅存储数据作用:应对基于海量用户和海量数据前提下的数据处理。特征: 可扩容,可伸缩 大数据下高性能 灵活的数据
2020-06-06 15:42:17
205
原创 springboot整合mybatis
springboot整合mybatis准备:1.数据源配置见上篇:[SpringBoot2.0x整合Druid数据源以及Druid监控](https://blog.csdn.net/qq_43640120/article/details/106529603)2.建立数据库表3.创建Javabean整合场景搭建1.环境搭建:1.1启动场景选:1.2配置文件yml基本配置:注解开发开启驼峰式命名规则的扫描使用MapperScan批量扫描所有的Mapper接口配置文件开发Yml文件配置**提示一下IDEA建立ma
2020-06-04 14:53:41
143
原创 SpringBoot2.0x整合Druid数据源以及Druid监控
这儿提供一份SpringBoot2.0x环境下的Druid数据源以及Druid监控配置1.依赖 <!--mybatis启动器--> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>
2020-06-03 17:57:27
211
原创 Request和Response原理与详细运用
Request和Response原理与详细运用request和response有一些细节的东西有点遗忘了,从新回顾学习一便。1.先了解一下Request对象和Response对象的原理图解request对象和response对象由服务器创建供给我们使用。前者获取请求方式,后者设置响应方式。2. request对象继承体系结构:ServletRequest -- 接口 | 继承HttpServletRequest -- 接口 | 实现org.apache.catalina.connec
2020-05-27 18:44:28
983
原创 java反射
java反射仅供学习使用1.什么是java反射?JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。1. 反射机制的功能Java反射机制主要提供了以下功能:• 在运行时判断任意一个对象所属的类。• 在运行时构造任意一个类的对象。• 在运行时判断任意一个类所具有的成员变量和方法。• 在运行时调用任意一个对象的方法。• 生成动态代理。
2020-05-26 18:45:06
116
转载 NIO----Channer,Buffer,selector
Channer,Buffer,selector1. Channel(通道)Channel与传统的InputStream、OutputStream最大区别在于: Channel提供了map()方法,可以直接把"一块数据"映射到内存,将Channel对应的部分或全部数据映射成ByteBuffer.如果说传统的输入输出系统面向流的处理,Channel倾向于面向块的处理。2.BufferBuffer 本质是一个数组,发送到Channel中的所有对象必须放到Buffer中,从Channel读取数据的时
2020-05-24 14:22:26
204
原创 @SpringBootApplication和场景启动器
SpringBoot的核心注解和场景启动器1.@SpringBootApplication核心注解,开启自动配置SpringBoot 启动类 @SpringBootApplication 注解 以及执行流程博文总结的很详细详细参考:2.场景启动器Springboot提供场景启动器非常方便,比如要完成一个web项目的开发,需要引入大量的依赖,每次都需要复制一堆相同的依赖配置,非常容易出错,为此提供了一个场景启动器的概念.比如:Web场景启动器:<dependency>
2020-05-21 15:54:32
111
原创 Maven高级
Maven高级1.基础知识回顾:1.1Maven的核心依赖管理和一键构建(基础知识)1.2Maven仓库类型和仓库关系1.3Maven常见命令:1.4.maven生命周期2.Maven工程导入jar包坐标,必须考虑解决jar包冲突解决jar包冲突的方式一:解决jar包冲突的方式二:解决jar包冲突的方式三【推荐使用】:SSM框架不冲突的依赖包:3.Maven的拆分和聚合思想1.背景:2.工程、模块、项目的关系4.父子工程3种启动方式1.基础知识回顾:1.1Maven的核心依赖管理和一键构建(基础知识)
2020-05-18 18:01:08
165
原创 ssm整合时出现 org.springframework.beans.factory.BeanCreationException :Error creating bean with name ‘XXX
ssm整合时出现 org.springframework.beans.factory.BeanCreationException :Error creating bean with name ‘XXX’ 异常的原因及解决方法注入 bean 失败异常,也就是找不到注入的bean。几种原因:1.bean未注解或者注解错误2.项目整合的时候jar包冲突3.‘XXX’的配置有错误1和3仔细查看,我今天下午在整合时出现了自己导入的依赖jar出现冲突。网上找了很久,最后修改jar包版本,太耗时了。这里提供一
2020-05-17 17:08:37
494
原创 (解决)无法在web.xml或使用此应用程序部署的jar文件中解析绝对uri:[http://java.sun.com/jsp/jstl/core]
(解决)无法在web.xml或使用此应用程序部署的jar文件中解析绝对uri:[http://java.sun.com/jsp/jstl/core]报错原因比较简单,找不到jstl标签库。1.在Tomcat目录下的lib文件夹中加入jstl包和standard.ja可以在菜鸟教程下载这俩个包:https://www.runoob.com/jsp/jsp-jstl.html2.在WEB-INF/lib里加入jstl.jar 和standard.jar即可解决这个问题3.把standard.jar解
2020-05-17 14:06:02
794
原创 Property dataSource threw exception
关于org.springframework.beans.MethodInvocationException: Property ‘dataSource’ threw exceptionPropertyAccessException 1: org.springframework.beans.MethodInvocationException: Property ‘dataSource’ threw exception; nested exception is java.lang.NoClassDefFoun
2020-05-17 12:52:05
1160
原创 Thread.Join()简单分析
Thread.Join()1. 知识了解背景: Java支持多线程,CPU分配给线程的时间片是随机的,有时需要控制线程的执行顺序,如执行完thread1再去执行thread2。引入joinJDK 8 中 join() 一共有三个重载方法,无参、一个参数、两个参数:JDK源码public final void join() throws InterruptedException { join(0);}public final synchronized void join(lon
2020-05-14 17:51:42
195
原创 SpringMVC基础一篇
SpringMVC1.SpringMVC是什么?Spring mvc 是spring一部分子框架,是基于java实现mvc轻量级web框架推荐总结笔记了解springMVC是什么总结笔记Spring基础2.入门基础案例了解MVC2.1. 具体实现过程2.1.1执行流程2.1.2下面是执行流程原理:2.2 实现代码先附上目录结构Index.jsp<%@ page contentType="text/html;charset=UTF-8" language="java" %&
2020-05-12 23:29:43
119
原创 maven与idea版本不匹配解决
1 IDEA Unable to import maven project: See logs for details2maven配置,以及项目"Dependency 'xxxx‘ not found"解决我打开日志发现 errors:1) No implementation for org.apache.maven.model.path.PathTranslator was bound. while locating org.apache.maven.model.path.PathTran
2020-05-09 12:21:19
3373
原创 Mybatis03连接池,事务,动态SQL语句,多表查询的使用
Mybatis03连接池,事务,动态SQL语句,多表查询的使用1. Mybatis中的连接池以及事务控制1.1连接池: 介绍:它可以减少我们获得链接所消耗的时间;Mybatis中的连接池:Mybatis连接池提供了3种方式的配置配置位置:主配置文件SqlMapConfig.Xml中的dataSource标签的Type属性表明方式:1,POOLEDPooled的原理采用...
2020-05-02 20:27:09
191
原创 mybatis02—DRUD操作
**mybatis的DRUD操作**此文章为学习记录//配置DAO和映射MapperDAOpublic interface UserDao { /* 查询所有数据 */ List<User> findAll(); //查询一个User方法 User findUser(Integer userId); //模糊查询 ...
2020-05-02 11:32:52
158
转载 Java对象为啥要实现Serializable接口?
Java对象为啥要实现Serializable接口?Serializable接口概述Serializable是java.io包中定义的、用于实现Java类的序列化操作而提供的一个语义级别的接口。Serializable序列化接口没有任何方法或者字段,只是用于标识可序列化的语义。实现了Serializable接口的类可以被ObjectOutputStream转换为字节流,同时也可以通过Objec...
2020-05-02 11:25:43
140
原创 多线程的创建和不安全问题解决方案
多线程的创建和不安全问题解决方案1.多线程1.1 多线程的优缺点优点: 1. 提升资源利用率 2. 提高用户体验 3.一般线程之间比较独立,互不影响 4.一个线程发生问题,一般不影响其它线程缺点: 1. 降低了其他线程的执行概率 2. 用户会感受到软件的卡顿问题 3. 增加的系统,资源压力 4. 多线程情况下的共享资源问题,线...
2020-04-29 16:15:59
169
原创 IDEA中resources包下mybatis主配置文件config与映射配置文件mapper
在resources包下的mybatis主配置文件config与映射配置文件mapper俩个约束://Config的约束:<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://myba...
2020-04-27 12:44:00
2140
原创 Spring04事务管理-案例转账
Spring04事务管理-案例转账1.事务管理简单回顾事务:一组业务操作,要么全部成功,要么全部不成功事务有四个关键属性(特点):原子性:一系列的动作,要么都成功,要么都失败。一致性:数据和事务状态要保持一致。隔离性:为了防止数据被破坏,每个事务之间都存在隔离性。持久性:一旦事务完成, 无论发生什么系统错误, 它的结果都不应该受到影响。1.1:Mysql事务的操作 : ...
2020-04-23 00:13:49
144
原创 spring03---JdbcTemplate
spring—JdbcTemplate Spring提供的JDBC操作类 依赖连接池DataSource(数据源)实例:1.1创建数据库表T_user1.2导入jar1.3javabean1.3.1使用api(了解)// 1.创建来连接池(dbcp) BasicDataSource dataSource=new BasicDataSource(); dataSou...
2020-04-21 23:22:24
105
原创 Maven基础
Maven项目管理工具1. Maven下载和配置简单介绍:Mean俩大核心: 1.依赖管理:对jar管理的过程 2.项目构建:项目在编码完成后,对项目进行编译、测试、打包、部署通过命令实现以下来个地址记住:我们用的多maven下载地址:http://maven.apache.org/远程中央仓库地址:https://mvnrepository.com/1.1现在本地构建一个第...
2020-04-21 03:23:30
199
原创 Spring 02AOP
Spring Stu AOP1. AOP1.1 AOP介绍:实现原理,术语 面向切面编程—介绍 原理:aop底层将采用代理机制进行实现。接口+实现类:Spring擦爱用jdk的动态代理实现类:spring采用cglib字节码增强 术语:1.Taget: -----目标类:需要被代理的类 例如:userService2. Joinpoint----链接点:所谓链接点是指那...
2020-04-17 15:52:43
86
原创 Spring01入门IOC
学习Springday011. Spring概念Spring框架是一个开放源代码的J2EE应用程序框架,由Rod Johnson发起,是针对bean的生命周期进行管理的轻量级容器(lightweight container)。 Spring解决了开发者在J2EE开发中遇到的许多常见的问题,提供了功能强大IOC、AOP及Web MVC等功能。Spring可以单独应用于构筑应用程序,也可以和Str...
2020-04-12 21:59:30
132
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人