自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(31)
  • 资源 (1)
  • 收藏
  • 关注

原创 作业02.Mybatis一对一与一对多查询

一对一查询编写实体类查询订单所对应的一对一用户类创建orders类,orders类包含User类对象//用户类public class User { private int id; private String username; private String password; //get set方法}//订单类public class Orders { //订单id private String oid; //用户id pr

2020-09-28 19:42:03 488

原创 13.Redis集群做水平扩展

概述现在的集群架构是三主三从我们在原始集群基础上再增加一主(8007)一从(8008),增加节点后的集群参见下图,增加redis实例#在/usr/local/redis-5.0.2/redis-cluster下创建8007和8008文件夹,并拷贝8001文件夹下的redis.conf文件到8007和8008这两个文件夹下# cd /usr/local/redis-5.0.2/redis-cluster/mkdir 8007 8008cp 8001/redis.conf 8007/cp 8

2020-09-27 15:07:37 366

原创 12.Redis集群原理

槽位定位原理上一节搭建了redis集群,现在要往集群中存储数据,那么集群是如何存储数据的呢?实际上Cluster默认会对key做crc16算法的hash运算得到一个整数,然后拿这个整数值对16384进行取模得到具体的槽位。HASH_SLOT = CRC16(key) mod 16384Redise Cluster(集群)将所有数据划分为16384个slot(槽位),key经过hash运算得到的槽位值,就会将key往对应的槽位里面放。而Redis Cluster的Master节点会对16384个槽位进

2020-09-27 10:57:44 354

原创 11.Redis5.x集群搭建

1.哨兵模式选举时,访问会中断几秒钟,几秒钟对高并发系统影响也很大2. 只Master节点提供写服务

2020-09-27 10:41:31 427

原创 作业01.Mybatis的添加用户

一、搭建环境1.导入架包 <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.4.5</version> </dependency> <dependency> <groupId>mysql&lt

2020-09-25 14:22:11 416

原创 10.Redis哨兵架构

概述sentinel哨兵是特殊的redis服务,不提供读写服务,主要用来监控redis实例节点。如果redis的主节点挂掉,利用哨兵机制,可以从剩下的从节点中选出主节点,弥补了上一节讲的主从复制架构不能自动选举主节点的难处。有了sentinel哨兵之后,客户端第一次不会主动去找redis的主节点,而是去访问哨兵主节点的ip与端口,之后客户端就直接访问redis的主节点。当redis的主节点发生变化,哨兵会第一时间感知到,并且将新的redis 主节点通知给client端。redis的主目录下有sent

2020-09-24 20:27:25 421

原创 09.Redis主从复制

创建conf,data两个文件夹复制一份redis.conf文件到config文件夹cp redis.conf ./config/redis6380.conf修改相关配置如下port 6380pidfile /var/run/redis_6380.pidlogfile "6380.log"dir /usr/local/redis-4.0.2/data/6380#配置主从复制 从本机6379的redis实例复制数据 replicaof 192.168.20.135 6379 #从re.

2020-09-24 19:52:55 407

原创 08.RDB与AOF的比较与混合持久化

RDB与AOF的比较RDB: 内存快照形式, 二进制文件体积小,恢复数据速度快,容易丢失数据。AOF: 存储指令形式, 指令多故而aof文件体积大, 需要一条条执行指令恢复数据故而恢复速度慢,但数据安全性高。命令RDBAOF启动优先级低高文件体积小大恢复速度快满数据完整性容易丢失数据数据完整性高redis启动时如果既有rdb文件又有aof文件则优先选择aof文件恢复数据,因为aof一般来说数据更全一 点。Redis 4.0 混合持久化R

2020-09-22 18:14:07 672

原创 07.Redis的AOF持久化

AOF持久化RDB快照功能可能造成数据丢失,如: 在 50秒内发生了5000次修改,然后服务器宕机了,刚刚执行的5000次修改数据就会丢失。从 1.1 版本开始, Redis 增加了一种完全耐久的持久化方 式: AOF 持久化,将修改的每一条指令记录进文件appendonly.aof中 你可以通过修改配置文件来打开 AOF 功能: # appendonly yes从现在开始, 每当 Redis 执行一个改变数据集的命令时(比如 SET), 这个命令就会被追加到 AOF 文 件的末尾。这样的话,

2020-09-22 17:20:02 377

原创 06.Redis的RDB持久化

RDB快照在默认情况下, Redis 将内存数据库快照保存在名字为 dump.rdb 的二进制文件中。内存数据是经过压缩后形成的二进制文件,打开dump.rdb是看不懂的。RDB持久化是redis默认开启的持久化。在redis.conf配置的默认持久化的策略为//N 秒内数据集至少有 M 个改动。save 900 1 //900秒内发生1次改动save 300 10 //300秒内发生10次改动save 60 10000 //60秒内发生10000次改动改动是能使数据发生变化的操作,如

2020-09-22 17:19:40 382

原创 fastjson简单常用操作

概述Fastjson 是阿里巴巴开发的一个 Java 库,可以将 Java 对象转换为 JSON 格式,当然它也可以将 JSON 字符串转换为 Java 对象。Fastjson 可以操作任何 Java 对象,即使是一些预先存在的没有源码的对象。对象转String创建JsonUser对象public class JsonUser { private Long id; //序列化时name对应的键改为NAME @JSONField(name = "NAME") priv

2020-09-22 14:46:46 411

原创 05.Redis中Zset集合命令与应用场景

有序集合 zsetZSet常用操作命令说明zadd key score member [[score member]…]往有序集合key中加入带分值元素zrem key member [member …]从有序集合key中删除元素zscore key member返回有序集合key中元素member的分值zincrby key increment member为有序集合key中元素member的分值加上incrementzcard key返回有序集

2020-09-21 20:52:23 469

原创 04.Redis数据类型操作命令与应用场景(下)

test

2020-09-21 20:29:26 435

原创 03.Redis数据类型操作命令与应用场景(上)

Redis通用命令命令说明ping检测redis服务状态,返回PONG表示服务正常dbsize返回当前数据库的key的数目select db切换到第几个数据库;Redis 默认使用 16 个库,从 0 到 15。 redis 默认自动使用 0 号库。flushdb删除当前数据库数据exit或quit客户端退出当前redis连接keys pattern查找所有符合模式 pattern 的 key。* 表示 0-多个字符;?表示单个字符,ex

2020-09-21 19:21:02 413

原创 02.Redis的概述与单线程高效率

什么是NOSQLredis是NoSql数据库。NoSQL(NoSQL = Not Only SQL),意即“不仅仅是SQL”,是一项全新的数据库理念,泛指非关系型的数据库。关系型与非关系型数据库区别关系型数据库:数据结构是表,表与表可以存在关系(一对一,一对多,多对多)数据是存在硬盘上,每次访问时,是将数据从硬盘读取到内存中支持SQL语言非关系型数据库:数据结构可以是文档,key-value结构数据是存在内存中,在满足需要的时候,也可以将数据存在硬盘上不支持SQL语言,没有事务处理

2020-09-21 11:10:10 411 1

原创 01.Redis的安装

#安装gcc1.yum -y install gcc # 把下载好的redis‐5.0.3.tar.gz放在/usr/local文件夹下,并解压2. wget http://download.redis.io/releases/redis‐5.0.3.tar.gz tar xzf redis‐5.0.3.tar.gz cd redis‐5.0.3# 进入到解压好的redis‐5.0.3目录下,进行编译与安装3. cd redis‐5.0.3 make# 进入src目录, 启动redi

2020-09-21 09:16:08 341

原创 04.zookeeper集群搭建

概述zookeeper集群至少需要三台服务器,并且建议使用奇数个服务器。因为zookeeper通过存活节点数数量是否大于总节点数一半来判断服务是否可以。例如三个节点,挂掉了2个表示整个集群挂掉,而用偶数4个,挂掉了2个,剩下的2个节点并没有超过半数,因此也会挂掉。集群最好是在不同的物理机上,本案例因生产环境因素,搭建在一台物理机上,因此也叫伪集群,但差别不是很大,只是ip地址不同。配置语法server.<节点ID>=:<数据同步端口>:<选举端口>节点ID:服务

2020-09-18 21:08:43 527

原创 JavaWeb案例1:注册用户名检测

案例说明实现一个可以异步获取用户名是否被注册的小案例。如:1.编写Html与js:<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Login</title> <script src="/jqueryWeb/js/jquery-3.3.1.js"></script> <sc

2020-09-18 19:18:51 991

原创 03.Java客户端API操作zookeeper

Java客户端API操作zookeeper首先创建项目添加zookeeper依赖<dependency> <groupId>org.apache.zookeeper</groupId> <artifactId>zookeeper</artifactId> <version>3.5.5</version> </dependency>zookeeper服务端端情况: /节

2020-09-17 16:52:50 663

原创 02.zookeeper节点的监听与权限设置

zookeeper节点的监听ls -w path : 监听子节点的的变化(增,删)/ 下有一个/course节点,现在监听这个/course节点增加一个/course的子节点 /course/Java。现在删除这个/course/Java节点,看会不会监听到:可以看到并没有监听到子节点的删除,原因是监听是一次性的,设置对这个节点的监听只能监听一次,想要永久的监听,就要不断的设置监听。get -w path 监听节点数据的变化现在/course节点的数据为:课程对该节点设置监

2020-09-16 22:11:09 1015

原创 01.zookeeper安装与基本操作

zookeeper概述在分布式系统中,每个服务都可看作是一个节点,会产生很多节点的协调问题,如:每天的定时任务由谁哪个节点来执行?RPC调用时的服务发现?如何保证并发请求的幂等…ZooKeeper是用于分布式应用程序的协调服务。它公开了一组简单的API,分布式应用程序可以基于这些API用于同步,节点状态、配置等信息、服务注册等信息。zookeeper用于协调各个节点间的工作。zookeeper安装1.zookeeper由Java编写,需要有Java的运行环境,需要下载JDK2.下载:w

2020-09-16 19:53:01 520

原创 09.Listener

Listener概述JavaWeb的三大组件之一的监听器(Listener)可以用户监听域对象。Javaweb四大域对象:HttpServletContext HtttpSession HttpRequest HttpPageContextListener监听域对象创建和销毁,属性的变化Listener的种类Listener的常用方法以HttpSessionListener为例,这种监听创建与销毁的Listener一般有两个方法。public class MySessionListener

2020-09-16 15:58:49 505

原创 08.Filter

Filter概述过滤器Filter是 JavaWeb三大组件(Servlet Filter Listener)之一,它能够对Web资源进行拦截,做一些处理后再交给下一个过滤器或servlet处理。Filter执行流程Filter的使用使用Filter需要创建一个类,实现javax.servlet.Filter接口,并重写里面所有方法init():服务器启动时,就会创建该Filter,并会执行init方法,进行初始化。destory():服务器关闭,过滤器被销毁时会执行的方法。doFilte

2020-09-16 15:57:49 635

原创 07.EL表达式与JSTL

El表达式

2020-09-16 15:57:08 536

原创 06.Jsp

Jsp概述Jsp(全称JavaServer Pages),是由Sun Microsystems公司主导创建的一种动态网页技术标准。JSP部署于网络服务器上,可以响应客户端发送的请求,并根据请求内容动态地生成HTML、XML或其他格式文档的Web网页,然后返回给请求者。jsp页面可以包含HTML+Css+JS+java 代码Jsp本质Jsp的本质是一个servlet,在它运行的时候,服务器会将他编译成Servlet,可以在tomcat服务器中的Work目录中找到与之对应的servlet。项目的web

2020-09-15 19:39:58 561

原创 05.Session

前言如果说Cookie是保存在浏览器端的键值对数据,那么Session是保存在服务器端的键值对数据,

2020-09-12 19:29:33 523

原创 04.Cookie

前言HTTP协议是无状态协议,无状态就是每次发起的请求都是毫无关系的,没有任何的关联。这使得我们想要在整个会话之间传输数据比较困难。所以就产生了会话技术Session 和 Cookie。什么是会话浏览器和服务器之间发生的一系列请求和响应的过程,通俗一点来说,就是从你开始访问一个网站,到你结束这个网站的访问,中间所有的请求与服务器的交流都可称作是一个会话。Cookie的概述cookie就是保存在浏览器端的键值对数据,它的存活时间有限,不能识别一些特殊符号,所以需要对这个符号进行转码。Cookie的

2020-09-12 09:12:28 528

原创 03.Request

Request对象即HttpServletRequest对象,该对象它继承自ServletRequest接口,专门用来封装HTTP请求消息。由于HTTP请求消息分为请求行、请求消息头和请求消息体三部分,因此,在HttpServletRequest接口中定义了获取请求行、请求头和请求消息体的相关方法.Http请求包含哪些东西Get请求中没有请求体,它请求体中的参数都附带在请求路径上了Request获取请求行请求行主要有两个重要的东西,请求方式和请求路径//获取请求方式。如:post,getre

2020-09-10 21:10:28 242

原创 02.Response

Response介绍HttpServletResponse对象,通过它的方法可以设置HTTP响应消息的内容在Servlet API中,定义了一个HttpServletResponse接口,它继承自ServletResponse接口,专门用来封装HTTP响应消息。由于,因此,在HttpServletResponse接口中定义了向客户端发送响应状态码、响应消息头、响应消息体的方法Response设置响应行setStatus(int status);sendError(int sc);Respon

2020-09-09 17:23:07 418

原创 IDEA常用重要快捷键

Ctrl 类Ctrl + A 全选Ctrl + B 作用在方法和类上,可以进入方法和类。与Ctrl+鼠标左击类似Ctrl + C 拷贝Ctrl + D 复制当前行,并插入到下一行Ctrl + E 显示最近打开的文件记录列表Ctrl + F 在当前文本进行查找Ctrl + G 在当前文件跳转到指定行处Ctrl + H 显示类结构图Ctrl + I 实现方法(当前类需要实现接口)Ctrl + J 插入自定义动态代码模板Ctrl

2020-09-09 09:00:20 848

原创 01.Servlet&ServletContext

什么是Servlet​ Servlet是运行在服务端的java小程序,是sun公司提供的一套规划或接口。用来处理客户端请求,响应给浏览器的动态资源。​ Servlet是JavaWeb三大组件之一(Servlet,Filter,Listener)public interface Servlet { void init(javax.servlet.ServletConfig servletConfig) throws javax.servlet.ServletException; jav

2020-09-08 23:33:23 555

Git-2.28.0与TortoiseGit.rar

版本控制工具git-2.28.0以及git的GUI客户端TortoiseGit-2.10.0.2,欢迎大家下载

2020-09-14

空空如也

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

TA关注的人

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