1. Redis是什么
这个问题的结果影响了我们怎么用Redis。如果你认为Redis是一个key value store, 那可能会用它来代替MySQL;如果认为它是一个可以持久化的cache, 可能只是它保存一些频繁访问的临时数据。Redis是REmote DIctionary Server的缩写,在Redis在官方网站的的副标题是A persistent key-value database
转载
2024-06-18 21:38:21
16阅读
这是前几天百度2面的时候,面试官问我的一个问题。说实话当时有点紧张,其实也没去细想,本身react我就学了2个多星期,虽然看过redux这些源码,不过这个问题好像我从来没想过。 那其实react官网本身就是用自身管理state的例子的,所以当时我就回答说:没有人规定一定要用redux,如果应用简单,自身管理完全ok,re
转载
2023-07-10 23:03:46
102阅读
很多人多年从事域名投资,行业特性是门槛低,回报高,因为具有这样的优势,所以深受人们的关注和喜爱。那很多人问我域名是什么?域名到底是干嘛用的呢?
转载
2023-07-31 10:48:54
113阅读
下图是我们常用的分布式架构,在上我们使用了两台LVS,并使用了keepalived做主备切换,之后是nginx集群,nginx下又有多台t...
原创
2022-03-17 11:06:24
179阅读
为什么要使用 Redis + JWT
随着互联网的发展,用户的认证和授权变得越来越重要。在传统的 Web 应用中,通常使用 Cookie 和 Session 来实现用户的认证和授权。然而,随着移动应用和单页应用的兴起,Cookie 和 Session 的方式逐渐显露出一些问题,例如跨域、性能和扩展性等方面的挑战。为了解决这些问题,并且提供更灵活和安全的认证和授权方式,我们可以结合 Redis 和
原创
2023-08-19 13:36:46
187阅读
为什么使用JWT还要使用Redis?
在现代应用程序中,身份验证和授权是一个非常重要的问题。JSON Web Token(JWT)是一种用于身份验证和授权的开放标准。它通过使用数字签名来验证信息的真实性,并使用Base64编码将信息转换为令牌。JWT的一个重要特点是令牌自包含,也就是说它包含了所有必要的信息,使得服务器不需要在数据库中存储用户的身份信息。
然而,JWT仅仅是一个令牌,它并不能解
原创
2023-12-17 04:47:43
198阅读
# 使用 Redis 保存 Session ID 的优势
在现代 web 应用中,用户登录后,服务端通常会为每位用户分配一个 Session ID,这个 ID 用于标识用户的会话状态。传统上,Session ID 可能会存储在内存、数据库或文件系统中。然而,使用 Redis 来保存 Session ID 近几年逐渐成为一种更受欢迎的选择。本文将探讨为什么使用 Redis 来存储 Session
原创
2024-10-24 04:00:49
60阅读
# Redis使用hash槽的原因和代码示例
## 引言
在Redis中,hash槽是一种将键映射到节点的数据结构,用于实现分布式存储和提高性能。本文将介绍为什么Redis要使用hash槽,并通过代码示例来说明其使用方法和优势。
## 什么是hash槽
Redis是一种内存型的键值存储系统,它使用hash槽来将键映射到节点。每个节点包含多个hash槽,每个hash槽可以存储一个或多个键值对。通
原创
2023-10-31 07:03:55
66阅读
原因:用缓存,主要有两个用途:高性能、高并发。高性能非实时变化的数据-查询mysql耗时需要300ms,存到缓存redis,每次查询仅仅1ms,性能瞬间提升百倍。高并发mysql 单机支撑到2K QPS就容易报警了,如果系统中高峰时期1s请求1万,仅单机mysql是支撑不了的,但是使用缓存的话,单机支撑的并发量轻松1s几万~十几万。原因是缓存位于内存,内存对高并发的良好支持。常见的缓存问题:1、缓
转载
2023-07-09 13:53:44
84阅读
1.线程池为什么要使用线程池:反复创建线程开销大;过多的线程会占用太多内存。 解决以上两个问题的思路:用少量的线程——避免内存占用过多;让这部分线程都保持工作,且可以反复执行任务——避免生命周期的损耗。线程池的好处:加快响应速度;合理利用CPU和内存;统一管理。线程池适合应用的场合:服务器接收到大量请求时,使用线程池技术是非常合适的,它可以大大减少线程的创建和销毁次数,提高服务器的工作效率。 在开
转载
2023-08-11 16:53:21
130阅读
逻辑地址指的是程序自身看到的内存地址空间,它是一个抽象的地址,逻辑地址需要映射到物理内存中才能完成对内存的操作,为什么程序要需要操作虚拟的逻辑地址,而不是直接去操作物理地址,以及直接对内存条进行操作呢?内存中,每个内存单元的大小为一个字节,即8个bit,它们都有对应的物理地址,从小到大排列举个例子,MOVE REGISTER1 5,这个指令的意思是,将寄存器一号的数据移动到地址为5的内存单元中,这
转载
2024-04-02 07:05:42
29阅读
参考视频教程: SpringBoot2.0不容错过的新特性WebFlux响应式编程.0不容错过的新特性WebFlux响应式编程 (http://www.notescloud.top/goods/detail/1291)缓冲和削峰:上游数据时有突发流量,下游可能扛不住,或者下游没有足够多的机器来保证冗余,kafka在中间可以起到一个缓冲的作用,
转载
2021-09-30 23:28:17
915阅读
1. 虚拟化基础概念01. 什么是虚拟化?虚拟化,是指通过虚拟化技术将一台计算机虚拟为多台逻辑计算机。在一台计算机上同时运行多个逻辑计算机,每个逻辑计算机可运行不同的操作系统,并且应用程序都可以在相互独立的空间内运行而互不影响,从而显著提高计算机的工作效率虚拟化使用软件的方法重新定义划分IT资源,可以实现IT资源的动态分配、灵活调度、跨域共享,提高IT资源利用率,使IT资源能够真正成为社会基础设施
转载
2023-08-03 19:46:41
158阅读
shiro是用来进行登录验证,权限校验的安全框架 1.参考视频:传送门 2.准备条件:eclipse编译器 3.redis数据库,MYSQL数据库 4.md文件打开工具:传送门 5.参考demo:传送门(见本人资源),先在数据库里创建数据,条填充表,注册页面可以注册用户。Shiro笔记整理 一、基本概念 Shiro是一个权限管理框架,包括用户身份认证和授权两部分 二、基本实现逻辑 其基本的逻辑构图
转载
2023-10-26 12:12:41
53阅读
1.为何使用虚拟化(1)什么是虚拟化? 虚拟化,是指通过虚拟化技术将一台计算机虚拟为多台逻辑计算机。在一台计算机上同时运行多个逻辑计算机,每个逻辑计算机可运行不同的操作系统,并且应用程序都可以在相互独立的空间内运行而互不影响,从而显著提高计算机的工作效率虚拟化使用软件的方法重新定义划分IT资源,可以实现IT资源的动态分配、灵活调度、跨域共享,提高IT资源利用率,使IT资源能够真正成为社会基础设施
转载
2023-10-01 18:18:39
19阅读
深度学习是十年来企业应用程序开发的革命性突破之一。今天,大多数组织和企业都必须转换应用程序以利用深度学习的功能。在本文中,我们将讨论如何利用JVM(Java虚拟机)的功能来构建深度学习应用程序。深度学习企业更喜欢JVM企业中使用的主要JVM语言是Java,Scala,Groovy和Kotlin。Java是世界上使用最广泛的编程语言。世界上几乎所有大型企业都以某种方式使用Java。企业使用诸如Jav
转载
2023-10-22 22:34:28
54阅读
日常生活中,两个实体之间进行连接的部分称为接口。如电脑和 U 盘连接的标准 USB 接口。接口可以确保不同实体之间的顺利连接。如不同的电脑厂家和 U 盘厂家只要按照相同的 USB 接口进行生产,那么所有的电脑和 U 盘就可以顺利的连接起来。(1)Java 编程领域中,接口可以为不同类顺利交互提供标准。例如:老师让学生张三和李四一起完成,java 程序来模拟营业员和计算器的行为。张三和李四进行工作分
转载
2024-03-11 09:34:18
20阅读
首先,我们来明确,为什么要用克隆?克隆的对象可能包含一些已经修改过的属性,为new出来的对象的属性都还是初始化时候的值!所以当需要一个新的对象来保存当前对象的状态的时候,就靠克隆方法了!克隆又分为深克隆和浅克隆浅克隆:当对象被复制的时候,只复制他本身和其中包含的值类型的成员变量,而引用类型的成员对象并没有实现真正意义上的复制,只是引用值传递!深克隆:除了对象本身被复制外,对象所包含的所有成员变量也
转载
2023-09-27 06:36:20
110阅读
第七部分 几个常用计算机工具软件的使用实验7.1压缩软件的使用为什么要压缩?在电脑的日常使用过程中,偶尔会出现“文件太大,存储空间不足”的情况,遇到这样情况,应当如何解决?文件压缩,就是把一个大的文件变小的过程。使用压缩的理由有很多,如:我们经常用软盘或者U盘在两台电脑之间传递文件。文件太大怎么办?我们可以使用压缩软件将文件压缩,使文件变小。此外,当硬盘中的资料越来越多,以及越来越乱的时候,我们就
转载
2024-01-15 09:09:12
52阅读
前言注解也是引入自JDK 1.5,自引入后它就成为了Java平台中非常重要的一部分。开发过程中,我们也时常在应用代码中会看到诸如@Override,@Deprecated这样的注解。 那么,为什么要引入注解,还是以前的答案: 不管是什么,只要是新入的东西,基本都有三个目的:1.使得开发维护更便捷,减少程序员的开发工作量。 2.提高程序运行效率。 3.更加安全 很多人抱怨软件行业技术迭代快速,自己
转载
2023-10-08 01:08:37
103阅读