- 博客(133)
- 资源 (1)
- 收藏
- 关注
原创 深入学习Redis——笔记
Redis之父:安特雷兹(antirez)Redis能干啥:分布式缓存,可以挡在类似mysql这类数据库的前面,为其分担查询内存存储加持久化(RDB+AOF),内存加快访问速度,持久化防止Redis突然死机时,数据丢失。高可用架构搭配(单机、主从、哨兵、集群)缓存穿透、击穿、雪崩分布式锁队列总体功能概述图:优势:性能极高,Redis能读的速度是110000次/秒,写的速度是81000次/秒。
2023-03-14 21:43:06
363
原创 Zookeeper入门
Zookeeper是一个开源的分布式的,为分布式框架提供协调服务的Apache项目。Zookeeper 从设计模式的角度来开:是一个基于观察者模式设计的分布式服务管理框架,它负责存储和管理大家都关心的数据,然后接受观察者的注册,一旦这些数据的状态发生变化,Zookeeper就通知已经注册的观察者做出相应的反应。
2023-02-09 14:50:05
348
原创 Gradle
常用的项目构建工具有 Ant、Maven、Gradle 三种。Ant 相对于另外两者较为灵活,速度也快,但是编写XML文件来构建指令,比较繁杂。Maven 有一套约定大于配置的项目目录结构,使用了GAV左标进行管理依赖,侧重于包管理Gradle 集成了Ant的脚本的灵活性和Maven的约定大于配置的优点,支持多种远程仓库和插件,侧重于大项目构建。但是学习成本高、资料少、脚本灵活、兼容性差。
2023-02-03 22:31:13
629
原创 java反射机制
假设上述代码为源码,如刚刚的调用的为hello方法,如果下次想调用hi 方法,传统的方法中是写死的,不是动态的,想要调用只能修改源码。而反射则是先通过外部的配置文件,去获取到该类和方法名,再调用他的invoke()方法来执行该方法。反射创建对象则属于动态加载,只有当执行到改代码时才会加载,如果没有该类,并且未执行该代码,则不会报错,只有当执行该代码且没有对应的类时才会报错。传统的New一个对象属于静态加载,即只要代码中有new对象的代码,无论该对象代码是否执行,都会进行加载,如果没有该类就会报错。
2022-10-22 20:19:05
322
原创 理解红黑树
红黑树二叉树以下全是个人理解。。。红黑树可以理解为由234树演变而来,234树是由二叉查找树演变而来,二叉查找树由二叉树演变来,所以想要了解红黑树要了解二叉树和234树二叉树二叉树:即每个子节点只有两个节点的树二叉查找树:也是一个二叉树,只不过二叉查找树的左节点都比其父节点小,右节点都比父节点大。其高度决定了他的效率二叉查找树的效率也与插入顺序有关如:插入顺序为 5、3 、2、4、7、6、8,可以如下所示但是若插入顺序为 2、3、4、5、6、7、8,则是如下所示插入的顺序决定了其深度
2022-09-03 22:58:38
369
原创 mysql高级篇(未完)
mysqlLinux下的安装Linux下的安装去官网下载安装包地址链接将安装包上传到linux并解压使用 ll 查看 /tmp是否有较大的权限,如果没有则给其权限ll /tmpchmod -R 777 /tmp检查是否存在如下依赖包rpm -qa | grep libaiorpm -qa | grep net-tools一般安装了图形化界面都会存在安装mysqlrpm -ivh mysql-community-common-8.0.25-1.el7.x86_
2022-04-12 11:22:19
1539
原创 电商项目随手笔记(项目部署,未完)
项目部署K8s集群K8s集群准备几台Linux环境电脑(这里使用三个虚拟机)确保所有环境都有网络关闭所有防火墙systemctl stop firewalldsystemctl disable firewalld关闭selinuxsed -i 's/enforcing/disabled/' /etc/selinux/configsetenforce 0关闭swapswapoff -ased -ri 's/.*swap.*/#&/' /etc/fstab安
2022-04-07 20:07:42
774
原创 电商项目随手笔记(高级篇)
项目笔记Elastic Search安装与使用整合到Spring BootElastic Search安装与使用Elastic Search的安装与使用整合到Spring Boot新建微服务wlmall-search导入ElasticSearch依赖 <properties> //因为Spring Boot会根据其版本来自动更换elasticsearch的依赖,所以在这指定版本 <elasticsearch.version>7.4
2022-03-21 11:41:31
3191
原创 ElasticSearch
ElasticSearch概念使用Docker安装ElasticSearch和KiBana_catGET、PUT 、POST和DELETE_bulkQueryDSL两种查询方式matchmatch_phrasemulti_matchbooltermaggregations映射映射的创建在原有的映射基础上添加数据迁移ik分词器安装分词器安装Nginx自定义分词概念全文检索的数据库使用Docker安装ElasticSearch和KiBana可以将ElasticSearch理解为 MySql, 将KiB
2022-03-20 20:10:15
598
原创 阿里云OSS的使用
开启OSS功能创建Bucket 创建一个子用户的 AccessKey,在头像中找创建一个用户并相应的分配权限(选择开发编程模式即可)5打开OSS的帮助文档,即可快速入门Endpoint的位置AccessKey的创建点进创建好的AccessKey用户最下面有个AccessKey的创建,通过短信验证即可创建但是这里的AccessKey的密码只会在创建的时候可以查看,所以需要记好该密码...
2022-03-11 15:59:13
1090
原创 Mysql复习笔记(day07 约束)
为什么需要约束数据完整性是指数据的精确性和可靠性。他是防止数据库中存在不符合语义规定的数据和防止因错误信息的输入输出造成无效操作或错误信息而提出的为了保证数据的完整性,SQL规范以约束的方式对表数据进行额外的条件限制。主要从一下四个方面考虑①实体完整性(同一表中不能存在两条完全相同无法区分的纪录)②域完整性(即给字段值加上取值的范围)③引用完整性(如:员工表中的所在部门,要在部门表中能找到该部门)。④用户自定义完整性(即用户自定义的规则,约束)非空约束 NOT NULL即在字段的后面加上该.
2022-03-06 14:43:42
357
原创 Mysql复习笔记(day06 数据类型)
整型(1)TINYINT 1个字节,有符号的取值范围是-128 ~ 127,无符号的取值范围是0 ~ 255.其一般用于枚举数据,比如系统设定取值范围很小且固定的场景(2)SMALLINT 2个字节,有符号的取值范围是-32768 ~ 32767, 无符号的取值范围是0 ~ 65535.其可用于较小范围的统计数据,比如统计工厂的固定资产库存数量等.(3)MEDIUMINT 3个字节,有符号的取值范围是-8388608 ~ 8388607, 无符号的取值范围是0 ~ 16777215.其用于较大整.
2022-03-05 11:12:57
339
原创 gateway跨域问题解决方法
在解决之前在gateway中用了全局配置类跨域package com.sky.wlmall.gateway.config;import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;import org.springframework.web.cors.CorsConfiguration;import org.springframewo
2022-03-04 12:01:05
3927
原创 java笔记
Java面试笔记java概述java概述1. 对java平台的理解 分为三个方面,java的面向对象与其类库、java的跨平台、java的虚拟机和垃圾回收机制。 java的面向对象和类库:java是一门面向对象的语言,允许程序员以优雅的思维方式进行复杂的编程。java的类库很全,如其核心类库,集合容器、线程相关类、JUC并发包、...
2022-03-02 15:07:25
741
原创 Mysql复习笔记(day05 创建管理表)
数据库1.1 创建数据库方法一: CREATE DATABASE 数据库名;(创建数据库)方法二: CREATE DATABASE 数据库名 CHARACTER SET 字符集;(创建数据库并指定字符集)方法三:CREATE DATABASE IF NOT EXISTS 数据库名;(判断数据库是否存在,不存在则创建数据库,存在则没有影响,推荐使用)注:创建数据库后是不能改名的,一些可视化软件改名是将数据库整体复制了一份到另一个数据库,并删除当前的1.2 管理数据库SHOW DATABASES.
2022-03-01 22:32:38
425
原创 分布式组件的基本配置
导入SpringCloudAlibaba的依赖<dependencyManagement> <dependencies> <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-alibaba-dependencies</artifactId> ..
2022-02-28 17:53:39
372
原创 Mysql复习笔记(day04 函数 ,SQL顺序)
基本函数1.1 数值函数ABS(X) 取绝对值 , SIGN(X)取符号(正数返回一,负数返回-1,零返回0)PI() 返回圆周率的值 , CEIL(X)/CEILING(X) 向上取整 , FLOOR(X)向下取整LEAST(e1,e2,e3…)获取最小值 GREATEST(e1,e2,e3…)获取最大值MOD(x,y)取余 ,相当于 x%y RAND() 取1以内的随机数, RAND(X),取固定的"随机数"ROUND(X) 四舍五入 , ROUND(X,Y)四舍五入,保留Y位 ,如果.
2022-02-23 18:22:13
248
原创 SpringCloud Alibaba Nacos OpenFeign 依赖冲突问题
首先 新版的 Spring Cloud Alibaba 中 , 底层没有了 loadbalancer 依赖,所以在 使用OpenFeign时会导致Bean注入出问题,导入以下依赖即可 <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-loadbalancer</art..
2022-02-22 21:21:23
1814
原创 电商项目随手笔记(分布式基础篇)
集群 ,分布式,结点集群是个物理形态只要是一堆机器就可以叫集群,他们是不是一起协作着干活,谁也不知道.集群指的是将几台服务器集中在一起,实现统一业务.分布式是若干独立计算机的集合,这些计算机对于用户来说就像单个相关系统.分布式是指将不同的业务分布在不同的地方节点 : 集群中的一个服务器分布式中的每一个节点,都可以做集群.而集群并不一定就是分布式的.docker安装(Linux,CentOs)官网(https://docs.docker.com/engine/install/cento..
2022-02-19 22:55:29
860
原创 yum 报错
使用yum install -y yum-utils 报了如下错误错误1:Invalid configuration value: failovermethod=priority in /etc/yum.repos.d/CentOS-epel.repo; Configuration: OptionBinding with id “failovermethod” does not existRepository epel is listed more than once in the configurat
2022-02-19 21:45:38
1433
原创 Mysql复习笔记(day02 SQL)
SQL分类SQL语言在功能上主要分为如下3大类DDL(Data Definition Languages 数据定义语言),这些语句定义了不同的数据库,表,视图,索引等数据库对象,还可以用来创建,删除,修改数据库和数据表的结构.主要关键词包括 CREATE,DROP,ALTER,RENAME,TRUNCATEDML(Data Manipulation Language 数据操作语言),用于添加, 删除,更新查询数据库记录,并检查数据库完整性.主要关键词包括:INSERT,DELETE,UPDAT..
2022-02-18 22:17:36
358
原创 修改mysql默认创建数据库和表为utf8格式
因为在mysql8.0及以上默认为utf8,所以不需要设置,该测试以mysql5.6为例修改之前,默认字符集为latinl,如下图:修改前创建数据库和表的默认配置如下.也是latinl在该情况下插入带中文的数据,会报如下错误ERROR 1366 (HY000): Incorrect string value: ‘\xCA\xD4\xCA\xD4’ for column ‘name’ at row 1修改配置如下:找到 my.ini文件 系统默认路径如下:C:\ProgramData\M
2022-02-17 21:20:09
2423
原创 Mysql复习笔记(day01概述)
为什么要用数据库持久化! 把数据保存在可掉电式存储设备中以供之后使用.大多数情况下,特别是企业级应用,数据持久化意味着将内存中的数据保存到硬盘上加以固化.,持久化的实现过程大多通过各种关系数据库来完成.持久化的主要作用是将内存中的数据存储在关系型数据库中(或者磁盘文件,XML文件等).数据库相关概念DB: 数据库(DataBase)它是存储数据的仓库,其本质是一个文件系统,保存了一系列有组织的数据.DBMS: 数据库管理系统(DataBase Management System)是一种操纵和.
2022-02-17 16:59:43
213
原创 JWT的简单使用
依赖 <dependency> <groupId>com.auth0</groupId> <artifactId>java-jwt</artifactId> <version>3.18.2</version> </dependency>使用package com.sky;import com.auth0.jwt
2022-02-13 10:18:42
2429
原创 SpringCloud(Hystrix的使用)
概念服务降级:服务器繁忙,请稍后再试,不让客户端等待,并立即返回一个友好的提示(一般发生在 程序异常,超时,服务熔断触发服务降级,线程池、信号量 打满也会导致服务降级)服务熔断 : 达到最大服务访问后,直接拒绝访问,然后调用服务降级的方法并返回友好提示(如保险丝一样)服务限流 : 秒杀等高并发操作,严禁一窝蜂的过来拥挤,排队进入,一秒钟N个,有序进行...
2022-01-23 20:01:14
807
原创 Redis(集群的配置)
创建目录以及配置文件,命令如下(三个为例)mdkir /myrediscp /opt/redis/redis.conf /myredisvim redis6379.confvim redis6380.confvim redis6381.confvim redis6389.confvim redis6390.confvim redis6391.confconf配置文件的内容如下:(以6379为例)启动所有的redisredis-server redis6379.confredis-
2022-01-17 16:41:07
600
原创 Redis(主从复制)
一 : 一主多从的配置创建一个文件夹,里面存放配置文件(以一主两从为例)mkdir /myrediscp /opt/redis/redis.config /myredis/redis.confvim redis6379.confvim redis6380.confvim redis6381.confvim 里面的 配置大致如下(以redis6379.conf为例)逐个启动对应的redisredis-server redis6379.confredis-server redis6380
2022-01-17 14:20:00
443
原创 SpringCloud(Eureka的配置安装)
配置EurekaServer创建一个SpringBoot项目导入EurekaServer依赖 <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId> <versio
2022-01-13 17:37:01
5558
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人