- 博客(26)
- 收藏
- 关注
原创 Redis事务、Jedis、SpringBoot整合Redis
学习视频链接,示以尊重:https://space.bilibili.com/95256449/video一、Redis 事务Redis 事务本质:一组命令的集合。一个事务中的所有命令都会被序列化,在事务执行过程的中,会按照顺序执行。(一次性、顺序性、排他性)注意:Redis 单条命令是保证原子性的,但是 Redis 的事务不保证原子性Redis 事务没有隔离级别的概念所有的命令在事务中,并没有直接被执行。只有发起执行命令的时候才会执行Redis 事务执行阶段:开启事务:multi
2020-06-24 17:41:51 450
原创 Redis哨兵模式、缓存穿透缓存击穿和雪崩
学习视频链接,示以尊重:https://space.bilibili.com/95256449/video一、哨兵模式(自动选举主机的模式)1.1 概述主从切换技术的方法是:当主服务器宕机后,需要手动把一台从服务器切换为主服务器,这就需要人工 干预,费事费力,还会造成一段时间内服务不可用。这不是一种推荐的方式,更多时候,我们优先考虑 哨兵模式。Redis从2.8开始正式提供了 Sentinel(哨兵) 架构来解决这个问题。能够后台监控主机是否故障,如果故障了根据投票数自动将从库转换为主库。哨兵
2020-06-24 17:30:26 709
原创 Redis配置文件、持久化、发布订阅、集群搭建
学习视频链接,示以尊重:https://space.bilibili.com/95256449/video一、Redis配置文件Redis的配置文件是 redis.conf 文件。1.1 单位# 1k => 1000 bytes# 1kb => 1024 bytes# 1m => 1000000 bytes# 1mb => 1024*1024 bytes# 1g => 1000000000 bytes# 1gb => 1024*1024*1024 by
2020-06-24 17:28:58 464
原创 Redis五大数据类型和三大特殊类型
RedisRedis 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库、缓存和消息中间件MQ。它支持多种类型的数据结构,如字符串(strings), 散列(hashes), 列表(lists), 集合 (sets), 有序集合(sorted sets) 与范围查询, bitmaps, hyperloglogs 和地理空间 (geospatial) 索引半径查询。 Redis 内置了复制(replication),LUA脚本(Lua scripting), LRU 驱动事件(LRU
2020-06-20 19:14:20 655
原创 Linux安装配置Redis以及Redis基础概念
Redis一、NoSQL大数据时代3V:海量、多样、实时大数据时代3高:高并发、高可拓、高性能用户的个人信息,社交网络,地理位置等用户自己产生的数据,用户日志等等爆发式增长。数据量大,变化快,MySQL等关系型数据库不再适用,这时就需要使用NoSQL。NoSQL = Not Only SQL(不仅仅是 SQL),泛指非关系型数据库。NoSQL 特点:易扩展(数据之间没有固定关系,很好扩展)大数据量,高性能(Redis 一秒写8万次,读11万,是一种细粒度的缓存,性能较高)数据类型多样(
2020-06-20 18:51:15 316
原创 版本控制工具Git的基本概念和简单使用
Git一、版本控制用于管理多人协同开发项目的技术。跨区域多人协作开发并行开发,提高开发效率追踪和记载文件的历史记录追踪软件开发过程统计工作量常见的有Git、SVN、CVS、VSS等。版本控制分为本地版本控制、集中版本控制、分布式版本控制。本地版本控制:适合个人用。集中版本控制:所有的版本数据都保存在服务器上,协同开发者从服务器上同步更新或上传自己的修改,例如SVN。如果服务器损坏,会丢失所有数据。分布式版本控制:所有版本信息仓库全部同步到本地的每个用户,例如Git。二、配
2020-06-18 16:12:54 425
原创 Linux之vim、账号管理、进程管理、压缩解压
一、Vim编辑器Vim是从 vi 发展出来的一个文本编辑器。代码补完、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用。基本上 vi/vim 共分为三种模式,分别是命令模式(Command mode),输入模式(Insert mode)和底线命令模式(Last line mode)。简单概述一下vim编辑文件的过程:新建或者编辑文件:(vim 文件名)按insert进入编辑模式(左下角显示insert)编写内容编写完成后按EXC进入底线命令模式保存并退出:(:wq)1.1
2020-06-17 17:14:49 249
原创 Linux之基本命令、文件属性
LinuxLinux 是一套免费使用和自由传播的类 Unix 操作系统,是一个基于 POSIX(可移植操作系统接口) 和 UNIX 的多用户、多任务、支持多线程和多 CPU 的操作系统。目前市面上较知名的发行版有:Ubuntu、RedHat、CentOS、Debian、Fedora、SuSE、OpenSUSE、Arch Linux、SolusOS 等。(Kali linux:安全渗透测试使用)一、开机关机1.1 开机开机会启动许多程序。它们在Windows叫做"服务"(service),在Lin
2020-06-17 17:07:37 725
原创 数据库系统设计(索引、优化、范式、陷阱等)
一、数据独立性物理数据独立性:物理级别可以更改,而无需更改逻辑级别逻辑数据独立性:逻辑级别可以更改,而不必更改外部级别二、数据库系统设计数据库规划系统定义需求收集和分析数据库设计逻辑数据库设计:识别需要在数据库中表示的重要对象以及这些对象之间的关系创建并检查ER模型物理数据库设计:描述如何在目标DBMS中物理实现逻辑设计(作为表)将ER模型映射成为物理表DBMS选择成本、功能性问题、操作系统问题、系统平台问题…应用设计原型设计数据转换和加载测
2020-06-17 10:16:19 1247
原创 JAVA-IO流高级篇NIO
NIOJava NIO(New IO)是从Java 1.4版本开始引入的 一个新的IO API。NIO与原来的IO有同样的作用和目的,但是使用的方式完全不同,NIO支持面向缓冲区的、基于通道的IO操作。NIO将以更加高效的方式进行文件的读写操作。NIO 与 IO的主要区别:IONIO面向流(Stream Oriented)面向缓冲区(Buffer Oriented)阻塞IO(Blocking IO)非阻塞IO(Non Blocking IO)无选择器(Select
2020-06-16 14:39:23 410
原创 Java线程高级篇JUC
JUC(Java.util.concurrent)volatile当不同线程操作相同共享数据时,这个共享数据是彼此不可见的,所以出现了内存可见性问题。同步锁(synchronized)可以解决该问题,但是效率较差。因此,Java 提供了一种稍弱的同步机制:volatile。volatile 关键字修饰变量,用来确保将变量的更新操作通知到其他线程,保证内存可见性。(注意,volatile修饰的变量无法进行重排序)可以将 volatile 看做一个轻量级的锁,但是又与锁有些不同:对于多线程,不是一
2020-06-15 22:00:10 520 1
原创 SpringMVC之请求响应\文件上传\异常\拦截器
SpringMVC概述SpringMVC是Spring 为展现层提供的基于 MVC 设计理念的优秀的 Web 框架,是目前最主流的 MVC 框架之一。Spring MVC 通过一套 MVC 注解,让 POJO 成为处理请求的控制器,而无须实现任何接口。支持 restful风格的 URL 请求。采用了松散耦合可插拔组件结构,比其他 MVC 框架更具扩展性和灵活性。HelloWorld1、导入jar包或依赖2、配置 web.xml配置 DispatcherServlet ,通过 context
2020-06-13 09:52:22 694
原创 Spring5之IOC\AOP\事务\jdbcTemplete
Spring概述Spring是轻量级的开源JavaEE框架,可以解决企业应用开发的复杂性。Spring有两个核心部分,即IOC和AOP。IOC:控制反转,把创建对象的过程交给Spring进行管理。AOP:面向切面编程,不修改源代码的前提下进行功能增强。Spring框架的特点:方便解耦,简化开发。利用IOC可以降低硬编码程序的耦合度。支持AOP编程。方便程序的测试,Spring支持JUint4,通过注解即可进行测试。方便集成各种优秀框架,例如MyBatis等。降低JavaEE各类API
2020-06-11 20:50:17 319
原创 MyBatis学习之注解、XML、二级缓存
框架框架(Framework)是整个或部分系统的可重用设计,简而言之,框架是软件开发中的一套解决方案,不同的框架解决不同的问题。框架内部封装了很多细节,使得开发者可以使用极简的方式来实现功能,大大提高开发效率。其中,框架要解决的最重要的一个问题是技术整合的问题。Mybatismybatis是持久层框架,它内部封装了jdbc,使开发者只需要关注sql语句本身,而不需要花费精力去处理加载驱动、创建连接、创建 statement等繁杂的过程。 mybatis通过xml或注解的方式将要执行的各种state
2020-06-10 21:06:15 707
原创 JavaWeb三大组件之Filter和Listener
Filter过滤器Filter 过滤器它是 JavaWeb 的三大组件之一。三大组件分别是:Servlet 程序、Listener 监听器、Filter 过滤器Filter 过滤器它是 JavaEE 的规范。也就是接口Filter 过滤器它的作用是:拦截请求,过滤响应。拦截请求常见的应用场景有: 1、权限检查 2、日记操作 3、事务管理 ……等等主要用于对用户请求进行预处理,也可以对HttpServletResponse进行后处理。使用Filter的完整流程:Filter对用户请求进行预处理,
2020-06-08 20:54:18 478
原创 session和cookie内幕详解
cookieCookie 是服务器通知客户端保存键值对的一种技术。 客户端有了 Cookie 后,每次请求都发送给服务器。注意:每个 Cookie 的大小不能超过 4kb。创建cookie//1.创建cookieCookie cookie1 = new Cookie("key1","value1");//2.通知客户端保存cookie(通过响应头set-cookie通知客户端保存cookie)resp.addCookie(cookie1);服务器获取cookieCookie[] coo
2020-06-08 20:51:47 354
原创 Servlet大全
JavaEE三层架构新建Web:配置Tomcat服务器:新建Web工程:src:存放编写的java代码。web:存放web工程的资源文件,比如html页面、css文件、js文件等。WEB-INF:该目录受服务器保护,浏览器无法直接访问该目录。web.xml:整个动态web工程的配置部署描述文件,可以在这里配置很多web工程的组件,比如Servlet、Filter、Listener…lib:第三方jar包。ServletServlet 是 JavaEE 规范之一。规范就是接
2020-06-08 19:41:11 691
原创 JDBC大全、包含Druid连接池
软件架构B/S架构:Browser Server(不需要更新客户端)C/S架构:Client Server(需要时常更新客户端)数据库存取技术JDBC直接访问数据库JDO (Java Data Object )技术第三方O/R工具,如Hibernate, Mybatis等JDBC是java访问数据库的基石,JDO、Hibernate、MyBatis等只是更好的封装了JDBC。JDBC介绍JDBC(Java Database Connectivity)是一个独立于特定数据库管理系
2020-06-07 09:41:30 569
原创 事务、锁、视图、存储过程、变量
事务由一个或一组SQL语句组成一个执行单元,这个执行单元中每个SQL语句都是相互依赖的。整个单元作为一个不可分割的整体,要不全部执行,要不全部不执行。set autocommit=0; start transaction;...commit;rollback;事务四大特性(ACID):原子性(Atomicity):原子性是指事务是一个不可分割的工作单位,事务中的操作要么都发生,要么都不发生。一致性(Consistency):事务前后数据的完整性必须保持一致。隔离性(Isolation
2020-06-05 22:08:06 298
原创 MySQL常用命令、函数、约束
配置文件MySQL本地的文件my.ini中配置了MySQL数据库对应的端口号、存储路径、数据存储路径等信息。(修改后需要重新启动MySQL服务)服务启动与停止方式一:计算机——右击管理——服务;方式二:通过管理员身份运行命令行:启动:net start 服务名停止:net stop 服务名登录与登出登录:mysql -h要登录的主机名 -u用户名 -p,然后输入密码(常用mysql -u root -p)登出:exit或者ctrl+C常用命令常用数据库操作:查看所有数据库
2020-06-05 21:09:58 346
原创 Leetcode(435、445贪心篇)
保证每次操作都是局部最优的,并且最后得到的结果是全局最优的。 ——贪心Leetcode 445题目描述:假设你是一位很棒的家长,想要给你的孩子们一些小饼干。但是,每个孩子最多只能给一块饼干。对每个孩子 i ,都有一个胃口值 gi ,这是能让孩子们满足胃口的饼干的最小尺寸;并且每块饼干 j ,都有一个尺寸 sj 。如果 sj >= gi ,我们可以将这个饼干 j 分配给孩子 i ,这个孩子会得到满足。你的目标是尽可能满足越多数量的孩.
2020-06-01 21:29:55 282
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人