9 分布式锁 分布式锁是控制分布式系统间同步访问共享资源的一种方式,其可以保证共享资源在并发场景下的数据一致性。 9.1 分布式锁的工作原理 当有多个线程要访问某一个共享资源(DBMS中的数据或Redis中的数据,或共享文件等)时,为了达到协调多个线程的同步访问,此时就需要使用分布式锁了。 为了达到同步访问的目的,规定,让这些线程在访问共享资源之前先要获取到一个令牌token,只有具有令牌的线程才
8 Lua脚本详解 8.1 Lua简介 Lua是一个由标准C语言开发的、开源的、可扩展的、轻量级的、弱类型的、解释型脚本语言。 8.2 Linux系统的Lua 8.2.1 Lua下载 若要使用Lua则需要先从官网下载其源码并安装。 8.2.2 Lua安装 先将下载好的Lua源码上传到Linux,然后再进行安装。 8.2.2.1 解压 将Lua源码解压到/opt/apps目录。 进入到/opt/a
7 Redis缓存 7.1 Jedis客户端 7.1.1 Jedis简介 Jedis是一个基于java的Redis客户端连接工具,旨在提升性能与易用性。 7.1.2 创建工程 首先创建一个普通的Maven工程01-jedis,然后在POM文件中添加Jedis与Junit依赖。 <properties> <project.build.sourceEncoding>UT
6 Redis分布式系统 Redis分布式系统,官方称为Redis Cluster,Redis集群,其是Redis 3.0开始推出的分布式解决方案。其可以很好地解决不同Redis节点存放不同数据,并将用户请求方便地路由到不同Redis的问题。 6.1 数据分区算法 分布式数据库系统会根据不同的数据分区算法,将数据分散存储到不同的数据库服务器节点上,每个节点管理着整个数据集合中的一个子集。 常见的
5 Redis主从集群 为了避免Redis的单点故障问题,我们可以搭建一个Redis集群,将数据备份到集群中的其它节点上。若一个Redis节点宕机,则由集群中的其它节点顶上。 5.1 主从集群搭建 Redis的主从集群是一个“一主多从”的读写分离集群。集群中的Master节点负责处理客户端的读写请求,而Slave节点仅能处理客户端的读请求。只所以要将集群搭建为读写分离模式,主要原因是,对于数据库集
4 Redis持久化 Redis是一个内存数据库,所以其运行效率非常高。但也存在一个问题:内存中的数据是不持久的,若主机宕机或Redis关机重启,则内存中的数据全部丢失。当然,这是不允许的。Redis具有持久化功能,其会按照设置以快照或操作日志的形式将数据持久化到磁盘。 根据持久化使用技术的不同,Redis的持久化分为两种:RDB与AOF。 4.1 持久化基本原理 Redis持久化也称为钝化,是
3 Redis命令 Redis根据命令所操作对象的不同,可以分为三大类:对Redis进行基础性操作的命令,对Key的操作命令,对Value的操作命令。 3.1 Redis基本命令 首先通过redis-cli命令进入到Redis命令行客户端,然后再运行下面的命令。 3.1.1 心跳命令 ping 键入ping命令,会看到PONG响应,则说明该客户端与Redis的连接是正常的。该命令亦称为心跳命令。
【动力节点】Redis入门到高级教程,全网最新最全redis缓存教程,redis百科大全 2 Redis的安装与配置 这里是要将Redis安装到Linux系统中。 2.1 Redis的安装 2.1.1 克隆并配置主机 修改主机名:/etc/hostname 修改网络配置:/etc/sysconfig/network-scripts/ifcfg-ens33 2.1.2 安装前的准备工作 2.1.
1 Redis概述 1.1 Redis简介 【动力节点】Redis入门到高级教程,全网最新最全redis缓存教程,redis百科大全 Redis,Remote Dictionary Server,远程字典服务,是一个使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、NoSQL开源内存数据库,其提供多种语言的API。 Redis之所以称之为字典服务,是因为Redis是一个key-va
第四章 ActiveMQ 与 SpringBoot 集成 4-1 ActiveMQ 与 SpringBoot 集成集成配置 1、加载 spring boot 的 activeMQ 的依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-s
第三章 ActiveMQ 与 Spring 集成 3-1 ActiveMQ 与 Spring 集成配置 spring-jms <!--spring-jms依赖 --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-jms</artifac
第二章 基于 JMS 的消息传送 2-1 Java 消息队列 JMS 整体设计结构 动力节点ActiveMQ全套视频教程-7小时学会activemq消息中间件 基本要素 生产者 producer 消费者 consumer 消息服务 broker 交互模型 2-2 JMS 两种消息传送模式 点对点( Point-to-Point):专门用于使用队列 Queue 传送消息; 发布/订阅(Pub
第一章 JMS概述 动力节点ActiveMQ全套视频教程-7小时学会activemq消息中间件 1-1 Java 消息服务 JMS 概述 两个系统之间或者分布式系统之间的信息通信,是我们开发中比较常见的场景,比如系统A 要把信息发送给系统 B,这个问题我们应该如何去处理?1999 年,原来的 SUN公司领衔提出了一种面向消息的中间件服务 --JMS 规范(标准);(httpClient、 hes
22. Rocketmq集成SpringBoot 22.1 搭建rocketmq-producer(消息生产者) 22.1.1 创建项目,完整的pom.xml | <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/P
8. RocketMQ快速入门 RocketMQ提供了发送多种发送消息的模式,例如同步消息,异步消息,顺序消息,延迟消息,事务消息等,我们一一学习 8.1 消息发送和监听的流程 我们先搞清楚消息发送和监听的流程,然后我们在开始敲代码 8.1.1 消息生产者 | 1.创建消息生产者producer,并制定生产者组名 2.指定Nameserver地址 3.启动producer 4.创建消息对象,指定主
1. RocketMQ简介 MQ====Message Queue 官网: http://rocketmq.apache.org/ RocketMQ是阿里巴巴2016年MQ中间件,使用Java语言开发,RocketMQ 是一款开源的分布式消息系统,基于高可用分布式集群技术,提供低延时的、高可靠的消息发布与订阅服务。同时,广泛应用于多个领域,包括异步通信解耦、企业解决方案、金融支付、电信、电子商务
12.RabbitMQ消息Confirm模式 12.1 Confirm模式简介 消息的confirm确认机制,是指生产者投递消息后,到达了消息服务器Broker里面的exchange交换机,则会给生产者一个应答,生产者接收到应答,用来确定这条消息是否正常的发送到Broker的exchange中,这也是消息可靠性投递的重要保障; 12.2 具体代码设置 1 配置文件application.y
7. RabbitMQ工作模型 broker 相当于mysql服务器,virtual host相当于数据库(可以有多个数据库) queue相当于表,消息相当于记录。 消息队列有三个核心要素: 消息生产者、消息队列、消息消费者; 生产者(Producer):发送消息的应用;(java程序,也可能是别的语言写的程序) 消费者(Consumer):接收消息的应用;(java程序,也可能是别的语言写
7. RabbitMQ工作模型 broker 相当于mysql服务器,virtual host相当于数据库(可以有多个数据库) queue相当于表,消息相当于记录。 消息队列有三个核心要素: 消息生产者、消息队列、消息消费者; 生产者(Producer):发送消息的应用;(java程序,也可能是别的语言写的程序) 消费者(Consumer):接收消息的应用;(java程序,也可能是别的语言写的
15 SpringSecurity 集成thymeleaf 此项目是在springsecurity-12-database-authorization-method 的基础上进行 复制springsecurity-12-database-authorization-method 并重命名为springsecurity-13-thymeleaf 15.1 添加thymeleaf依赖 <depe
动力节点Springsecurity视频课程 6 密码处理 6.1 为什么要加密? csdn 密码泄露事件 泄露事件经过:https://www.williamlong.info/archives/2933.html 泄露数据分析:https://blog.csdn.net/crazyhacking/article/details/10443849 6.2加密方案 密码加密一般使用散列函数,又称散
1 问题 如何保护我们的程序? 问题: 我们的程序需不需要保护? 如果需要保护,如何保护? 1.1 创建code目录 目的:后面的security工程均在此目录下学习 创建code目录,并使用idea打开 1.2 不使用安全框架的springboot web程序 1.2.1 新建子模块springboot-01-hello 1.2.2 添加依赖和maven插件等 pom.xml 中部分内容
9 了解AOT和GraalVM9.1 提供性能的技术什么是AOT: Ahead-of-Time Compilation :预编译(提前编译)它在 JEP-295 中描述,并在 Java 9 中作为实验性功能添加。 AOT是提升Java程序性能的一种方法,特别是提供JVM的启动时间。在启动虚拟机之前,将Java类编译为本机代码。改进小型和大型Java应用程序的启动时间。JIT (just in
8 文章管理模块创建新的Spring Boot项目,综合运用视频中的知识点,做一个文章管理的后台应用。 新的Spring Boot项目Lession20-BlogAdmin。Maven构建工具,包名称com.bjpowernode.blog JDK19,依赖:Spring WebLombokThymeleafMyBatis FrameworkMySQL Driver依赖还需要Bean Valid
Thymeleaf 是一个表现层的模板引擎, 一般被使用在 Web 环境中,它可以处理 HTML, XML、 JS 等文档,简单来说,它可以将 JSP 作为 Java Web 应用的表现层,有能力展示与处理数据。Thyme leaf 可以让表现层的界面节点与程序逻辑被共享,这样的设计, 可以让界面设计人员、业务人员与技术人员都参与到项目开发中。 这样,同一个模板文件,既可以使用浏览器直接打开,也可
远程访问是开发的常用技术,一个应用能够访问其他应用的功能。Spring Boot提供了多种远程访问的技术。 基于HTTP协议的远程访问是支付最广泛的。Spring Boot3提供了新的HTTP的访问能力,通过接口简化HTTP远程访问,类似Feign功能。Spring包装了底层HTTP客户的访问细节。 SpringBoot中定义接口提供HTTP服务。生成的代理对象实现此接口,代理对象实现HTTP的远
第五章 说说Web服务基于浏览器的B/S结构应用十分流行。Spring Boot非常适合Web应用开发。可以使用嵌入式Tomcat、Jetty、Undertow或Netty创建一个自包含的HTTP服务器。一个Spring Boot的Web应用能够自己独立运行,不依赖需要安装的Tomcat,Jetty等。Spring Boot可以创建两种类型的Web应用 基于Servlet体系的Sprin
第四章 访问数据库Spring Boot框架为SQL数据库提供了广泛的支持,既有用JdbcTemplate直接访问JDBC,同时支持“object relational mapping”技术(如Hibernate,MyBatis)。Spring Data独立的项目提供对多种关系型和非关系型数据库的访问支持。比如 MySQL, Oracle , MongoDB , Redis, R2DBC,Apac
看它! 动力节点SpringBoot教程-spring boot3通俗易懂高薪必备第三章 自动配置启用autoconfigure(自动配置),框架尝试猜测和Bean要使用的Bean,从类路径中查找xxx.jar,创建这个jar中某些需要的Bean。例如我们使用MyBatis访问数据, 从我们项目的类路径中寻找mybatis.jar, 进一步创建SqlSessionFactor
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文视频地址:动力节点SpringBoot教程-spring boot3通俗易懂高薪必备【SpringBoot3从入门到项目实战】前言以实际项目需求入手,结合新特性@HttpExchange声明式客户端、RFC7807、ProblemDetail、预编译AOT等,详解了SpringBoot核心知识点,突出Web应用痛点解决方案。采用知识点配
Copyright © 2005-2023 51CTO.COM 版权所有 京ICP证060544号