- 博客(54)
- 收藏
- 关注
原创 获取包名下的所有接口
1 进行数据清洗,得到一个合适的路径,去除中文乱码,得到一个包的基本路径。再次进行数据清洗,得到所有.class开头的类的绝对路径加入集合返回。标记注解:用于添加在接口上,添加是可以在包扫描是获取到该接口。-->可以选择拿到标记自定义注解的接口。1 通过拿到基本路径去递归得到文件。1 通过包名获取下面所有的类名集合。2 通过类名集合反射获得类对象。-->也可以不标记拿到全部接口。3 通过类对象拿到所有的接口。需要添加在具体实现上。2 返回一个类名集合。
2023-09-12 20:43:41
578
原创 客户端简单实现断路器
2:通过两个变量保存总请求数和异常请求书-->线程安全。3:给定一个最大异常的阈值-->到达最大开启断路器。1:断路器只有两种状态,开启和关闭,默认不开启。-->当请求数大于0 且 异常请求数大于0。6:给定一个充值方法,可以通过异步线程重置。5:定义两个自增计数器保存请求和异常请求。4:给定一个异常比例阈值-->-->异常/总请求>异常比例。-->到达开启断路器。
2023-09-12 20:16:08
294
原创 RabbitMQ搭建
1 搭建项目环境1.1创建mevan项目1.2修改 pom 文件添加 RabbitMQ 坐标<dependencies> <!-- rabbitmq--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-amqp</artifactId>...
2022-05-21 01:16:05
1186
原创 RabbitMQ的安装
一:Erlang 安装Red hat发行的CentOS 8.2.1系统RabbitMQ 是使用 Erlang 语言编写的,所以需要先配置 Erlang⦁ 修改主机名1:RabbitMQ 是通过主机名进行访问的,必须指定能访问的主机名。vi/etc/sysconfig/network2:# vim /etc/hosts新添加了一行,前面为服务器 ip,空格后面添加计算机主机名⦁ 安装依赖yum -y install make gcc gcc-c++ kerne...
2022-05-20 00:50:08
579
原创 ElasticSearch 中的mapping 映射关系
映射(Mapping) 在 ElasticSearch 中是非常重要的一个概念,相当于数据表的表结构,用来定义一个文档,可以定义所包含的字段(properties)以及字段的类型、使用什么分词器解析,是否有子字段等。Mapping 决定了 index 中的 field 的特征。⦁ mapping自动映射的常用数据类型ElasticSearch 中的数据类型有很多,在这里只介绍常用的数据类型。文本(字符串):text整数:byte、short、integer、lo...
2022-05-17 23:49:36
421
原创 安装ElasticSearch
1:环境要求ElasticSearch 是 java 开发的应用。在 6.8.4 版本中,要求 JDK 至少是 1.8.0_131 版本以上。ElasticSearch 的安装过程非常简单。解压立刻可以使用。2:解压缩安装压缩包tar -zxf elasticsearch-6.8.4.tar.gz安装在local下mv elasticsearch-6.8.4 /usr/local/es3:修改ElasticSearch 应用的所有者因为 ElasticSe...
2022-05-13 00:17:57
3664
原创 GIT版本控制
什么是版本控制⦁ 只要进行团队软件开发,就会涉及源代码的合并共享以及带来的相关问题⦁ 代码如何合并(手工合并几乎不可能)⦁ 历史版本的保存(各个版本间有大量重复,多大变化算一个版本)⦁ 跟踪哪些代码是谁修改(每个代码都写上注释说明作者?故意写成别人呢)⦁ 如何有效解决以上问题呢?这就需要版本控制⦁ 目前计算机开发领域流行的是采用专门的版本管理软件来进行管理,大大提高了效率常用版本管理软件⦁ VSS:Microsoft 提供,Window 平台,小型开发团队所适合的工...
2022-05-11 01:21:16
414
原创 springsession原理及redis缓存处理
1 Redis 中数据通过springsession存储了用户的session数据,如下:"spring:session:expirations:1634214780000" 记录了失效时间是哪个session的,指向下面的key"spring:session:sessions:6317e334-90e9-4f55-a1f5-07492a8c8b2a" 保存了session相关信息(创建时间,session保存的对象信息,最大超时时间:默认1800秒,最后的修改时间)"spring:
2022-05-10 00:40:38
4663
原创 SpringSession单点登录(Single Sign On)
什么是单点登录单点登录(Single Sign On),简称为 SSO,是目前比较流行的企业业务整合的解决方案之一。SSO 的定义是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统,企业间需互相授信。-->微服务客户端-->-------------<--sso服务-->微服务一、 分布式系统 Session 共享方案1 分布式系统中 HttpSession...
2022-05-09 01:24:06
2359
原创 安装Redis集群
搭建一个 Redis 的最小集群,使用伪集群(同IP不同的端口)方式。Redis 中最少的集群三对主从(6个)。如果使用已经使用过的单机版创建集群时,需要删除 dump.rdb 与 apeendonly.aof 文件。举例:6 个 redis 实例的端口分配:7001、7002、7003、7004、7005、7006一:集群步骤:1:先创建 redis 的 6 个实例先在 local 目录下创建一个目录名称为:rediscluster命令:mkdir redis-cluster.
2022-05-06 23:25:07
571
原创 Redis 集群介绍
Redis 集群介绍:Redis3.0 版本之后支持 Cluster。集群要求集群节点中必须要支持主从模式,也就说集群中的主节点(Master)至少要有一个从节点(Slave)每一个蓝色的圈都代表着一个 redis 集群中的主节点。它们任何两个节点之间都是相互连通的。客户端可以与任何一个节点相连接,然后就可以访问集群中的任何一个节点。对其进行存取和其他操作Redis-Cluster 选举:容错Redis 之间通过互相的 ping-pong 判断是否节点可以连接上。如果有一...
2022-05-05 23:37:00
816
原创 基于java操作redis的测试[RedisTemplate对redis的操作]
先打开在redis.conf文件中:1.注释掉#bind 127.0.0.1 -::12.protected-mode yes改为no3.重新启动一下redis1:首先先配置操作redis所需要的依赖<dependencies> <!-- web启动器--> <dependency> <groupId>org.springframework.boot</g...
2022-05-05 00:07:08
2055
原创 Redis 的数据持久化
2.1 RDB 方式(默认的备份方式)对内存中数据库状态进行快照RDB 方式:将 Redis 在内存中的数据库状态保存到磁盘里面,RDB 文件是一个经过压缩的二进制文件,通过该文件可以还原生成 RDB 文件时的数据库状态(默认下,持久化到 dump.rdb 文件,并且在 redis 重启后,自动读取RDB文件中的数据,据悉,通常情况下一千万条字符串类型键,或1GB大小 的快照文件,同步到内存中的时间是 20-30 秒)RDB 的生成方式:1)执行命令手动生成有两个 Redis 命令可以用
2022-05-04 00:12:15
996
原创 SpringBoot整合MyBatis
mevan父子工程修改 pom 文件<!-- Mybatis 启动器 --><dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter</artifactId><version>1.1.1</version></depe.
2022-05-03 00:01:46
94
原创 springBoot-访问静态资源
访问静态资源1.SpringBoot 从 classpath/static 的目录实现WebMvcConfigurer 接口重写addResourceHandlers方法2. ServletContext 根目录下访问静态资源 2.1application.yml配置简书在yml之前使用的配置文件形式是xml或properties文件他们太过繁琐,而且会出现大量重复的代码。而yml文件结合了两者的优势,新增节点配置不再需要标签,在...
2022-05-01 23:49:45
1535
原创 Spring Boot介绍及开发一个helloword的web应用
Spring Boot 介绍SpringBoot是由Pivotal团队在2013年开始研发、2014年4月发布第一个版本的全新开源的轻量级框架。它基于Spring4.0设计,不仅继承了Spring框架原有的优秀特性,而且还通过简化配置来进一步简化了Spring应用的整个搭建和开发过程。另外SpringBoot通过集成大量的框架使得依赖包的版本冲突,以及引用的不稳定性等问题得到了很好的解决。Spring配置复杂,繁琐,所以推出了Spring boot,约定优于配置,...
2022-04-30 23:24:23
567
原创 Redis 数据类型
Redis通常被称为数据结构服务器,因为值(value)可以是字符串(String), 哈希(Map),列表(list), 集合(sets) 有序集合(sorted sets)1 String(字符串)Redis 字符串是字节序列。Redis 字符串是二进制安全的,这意味着他们有一个已知的示例:redis 127.0.0.1:6379> SET name kevin (set key value结构)OKredis 127.0.0.1:637...
2022-04-28 23:17:22
1413
原创 Redis安装(单机)与介绍
一:Redis 简介Remote Dictionary Server(Redis)是一个开源的使用 ANSIC语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value 数据库,并提供多种语言的 API。它通常被称为数据结构服务器,因为值(value)可以是字符串(String), 哈希(Map),列表(list), 集合(sets) 和 有序集合(sorted sets)等类型。NOSQL(非关系型)型数据库二:Redis 的特点优点:...
2022-04-27 22:54:54
945
原创 分布式上传商品案例
ewfdaswdadasd一:首先搭建好一个分布式框架Dubbo 框架搭建一个passport案例_asmall_cat的博客-CSDN博客二:搭建一个上架商品服务三:上传文件通过一个上传下载帮助类来实现:package com.dubbo.commos;import java.io.*;import java.net.SocketException;import org.apache.commons.net.ftp.FTP;import org.apache.co..
2022-04-26 22:46:17
1091
原创 VSFTPD分布式文件管理系统 (very secure FTP daemon)
一、 FTP 服务器FTP 是 File Transfer Protocol(文件传输协议)的英文简称,而中文简称为“文传协议”。用于 Internet 上的控制文件的双向传输。同时,它也是一个应用程序(Application)。基于不同的操作系统有不同的 FTP 应用程序,而所有这些应用程序都遵守同一种协议以传输文件。在 FTP 的使用当中,用户经常遇到两个概念:"下载"(Download)和"上传"(Upload)。"下载"文件就是从远程主机拷贝文件至自己的计算机上;"上传"文件就是将文件从..
2022-04-25 22:48:18
1119
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人