自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(268)
  • 收藏
  • 关注

原创 JWT从入门到上天系列第二章:JWT的结构

上篇,我们介绍了什么是JWT,他就是基于客户端保存,客户端请求的时候携带这个令牌,我们后端记性验证即可。这个避免了我们的Session占用、他还是间接的因为数据量很小,他还是自包含的,因为用查询数据库。

2024-02-29 22:23:09 922 2

原创 JWT从入门到上天系列第一章:JWT的简介和传统认证流程的对比

他是一个JSON形式的加密令牌,有令牌就放行,没有令牌或者令牌信息不正确就不让你通过,这个令牌是一个身份的代表。支持跨系统进行信任验证。JWT简称JSON Web Token,各方之间使用JSON形式传输信息,此信息可以进行验证和信任,因为有数字签名。JWT可以使用秘密(使用HMAC算法)或使用RSA或ECDSA的公钥/私钥对进行签名也就是通过JSON形式作为Web应用中的令牌,用于在各方之间安全地将信息作为JSON对象传输。在数据传输过程中还可以完成数据加密、签名等相关处理。

2024-02-21 22:51:47 681 1

原创 JWT从入门到上天系列第一章:JWT的简介和传统认证流程的对比(补充内容1)

Http协议无状态,不知道哪个用户访问发送的请求,只能通过Cookie进行用户认证。访问的时候最大的问题就是希望用户做认证。这个不是长连接的,发送-响应完毕请求之后就断开了。这个时候就需要会话这套机制来解决这个问题,让服务器知道请求是哪个用户发的。Cookie就是为了个Http协议记录状态。我们在JavaWeb中,为每一个浏览器创建一个会话,也就是一套Cookie-Session。第。浏览器作为二次登录携带。通过Cookie中的SessionId找对应的Session对象。

2024-02-21 22:32:35 215

原创 Docker从入门到上天系列第三篇:Docker的安装

docker官方提供了很简单的安装步骤,适用于所有的平台。当前docker引擎支持主流操作系统。

2024-02-20 23:15:30 206 1

原创 Docker从入门到上天系列第二篇:Docker与传统虚拟机对比

另外在调用宿主机的CPU、磁盘等等这些资源的时候,拿内存举例,虚拟机是利用Hyperisor去虚拟化内存申请,整个调用过程是虚拟内存·>虚拟物理内存·>真正物理内存,但是Docker是利用DockerEngine去调用宿主的的资源,这时候过程是虚拟内存>真正物理内存。就是上边的小箱子,那个就是一个又一个的容器。如果安装的是Mysql,我们就叫Mysql容器,安装的Tomcat就叫Tomcat容器。鲸鱼代表是Docker引擎,引擎才能运行一个又一个的Docker容器实例,或者叫软软件实例。

2024-02-20 21:54:25 374

原创 Docker从入门到上天系列第一篇:Docker开篇介绍

docker是一个容器技术,他是一个容器解决方案,帮助开发人员以及开发团队构建和发布应用。Docker容器可以将我们的应用程序和应用程序所需要的环境进行整体打包,对于应用来讲不存在环境差异。本地能跑,线上肯定也能跑。Docker是一个容器技术,他是一个应用容器技术,里边安装的就是我们的应用。他就是用来保证我们的应用环境高度一致。

2024-02-20 21:13:27 397 1

原创 世界顶级名校计算机专业,都在用哪些书当教材?

清华、北大、MIT、CMU、斯坦福的学霸们在新学期里要学什么?今天我们来盘点一下那些世界名校计算机专业采用的教材。

2024-02-20 19:40:03 1366 1

原创 Linux从入门到上天系列第一篇:Linux之Centos安装

1:window7+3:CentOS系统镜像。

2024-02-19 23:37:03 203 1

原创 k8s从初识到上天系列第二篇:kubernetes的组件和架构

当部署完 Kubernetes,便拥有了一个完整的集群。一组工作机器,称为节点, 会运行容器化应用程序。每个集群至少有一个工作节点。工作节点会 托管Pod ,而 Pod 就是作为应用负载的组件。控制平面管理集群中的工作节点和Pod。说人话版本:集群:cluster,多个几点被组织到一起共同为系统提供服务过程称之为集群。本质上是将承载同一个软件服务节点组织到一起,称之为该软件(服务)的集群,当然集群中的节点身份地位是不一样的。k8s集群也是如此,他也是多个节点组成。

2024-01-27 22:10:37 958 3

原创 k8s从初识到上天系列第一篇:初识kubernetes

Kubernetes 也称为 K8s,是用于自动部署、扩缩和管理容器化应用程序的开源系统。它将组成应用程序的容器组合成逻辑单元,以便于管理和服务发现。Kubernetes源自Google 15 年生产环境的运维经验,同时凝聚了社区的最佳创意和实践。Kubernetes是一个可移植、可扩展的开源平台,用于 管理容器化的工作负载和服务,可促进声明式配置和自动化,所谓管理容器和编排容器,就是对容器进行负载均衡和对容器内的服务做服务发现,让我们的服务能变得配置自动化,这是k8s的一个核心目标。

2024-01-25 00:06:23 1042

原创 深入理解JVM虚拟机第四十篇:图解对象分配过程

😉😉 欢迎加入我们的学习交流群呀!✅✅1:这是给大家的福利!✨✨2:我们免费分享Netty、Dubbo、k8s、Mybatis、Spring、Security、Docker、Grpc、消息中间件、Rpc、SpringCloud等等很多应用和源码级别高质量视频和笔记资料,你想学的我们这里都有!🥭🥭3:QQ群:583783824📚📚 工作VX:拉你进VX群,免费领取!💞💞4:以上内容,进群免费领取呦~ 💞💞💞💞。

2024-01-20 23:27:47 75 1

原创 深入理解JVM虚拟机第三十九篇:JVM中新生代和老年代相关参数设置

前边我们已经说过了,怎么设置堆空间的大小。我们也知道了,堆空间的大小本质上也由新生代和老年代组成。年轻代和老年代的比例怎么构成?如何修改呢?这就是我们本篇文章想要和大家说明白的问题。存储在JVM中的Java对象可以被划分为两类:一类是生命周期较短的瞬时对象,这类对象的创建和消亡都非常迅速。另外一类对象的生命周期却非常长,在某些极端的情况下还能够与JVM的生命周期保持一致(Spring工厂对象)。

2024-01-15 21:34:15 7161 11

原创 k8s实战从入门到上天系列第一篇:K8s微服务实战内容开篇介绍

我们使用开源ruoyi微服务基本使用,基于基本的微服务实践。我们来讲解k8s的实战内容。

2024-01-14 22:35:25 665 10

原创 深入理解JVM虚拟机第三十八篇:JVM中OOM的说明和举例

对象是存储在堆空间中,我们想要展示OutOfMemory我们只需要玩命创建对象即可。

2024-01-14 21:02:59 131 1

原创 深入理解JVM虚拟机第三十七篇:如何设置和查看JVM堆内存的大小

Java。大家可以通过选项”-Xmx”和”-Xms”来进行设置。“-Xms”用于表示堆区的起始内存,等价于-XX:InitialHeapSize-Xmx”则用于表示堆区的最大内存,等价于-XX:MaxHeapSize所谓的等价于,就是设置的时候使用那套参数都一样。后续性能优化的时候咱们细写每个符号啥意思。这个参数后边如果不跟单位的话,那么默认指定的就是字节,后边如果跟着的是KMG的话指定的分别是KB、MB、GB。

2024-01-13 22:29:04 417 8

原创 软考高级系统分析师备考第一篇:系统分析师考试备考攻略和考试介绍

1、获取职称:以考代评[高级工程师/副教授2、国际意义:中日韩互认3、升职加薪,拓展就业方向4、积分落户【北上广深】

2023-12-28 00:18:19 2720 24

原创 SpringSecurity6从入门到上天系列第九篇:SpringSecurity当中的默认用户的生成、存储、认证过程的源码级别分析

我们已经讲过在SpringSecurity这个依赖一旦被SpringBoot引入之后呢,这个jar包中的核心来会被加载,此时这个web服务当中所有的接口都必须要进行认证才能够被请求!我们进行认证时候需要去填写一个默认的user用户名和密码才能够认证通过,那么这个默认的user和控制台密码是如何生成,并保存在了哪里呢?将这个事呀,我们又得从SpringBoot的自动装配是说起。

2023-12-20 00:44:51 2438 25

原创 深入理解JVM虚拟机第三十六篇:JVM堆空间的细分结构概述

现代垃圾收集器大部分都是基于分带收集理论设计,对空间的细分大致如下:Java7之前对内存逻辑上分为三部分:新生代+老年代+永久代Java8及之后对内存逻辑上分为三部分:新生代+老年代+元空间(MetaSpace)所谓的分代就是将堆空间再次细分程一个区域一个区域的。这个分带垃圾收集算法就是基于分带理论来讲的。上述中的年轻代就是新生区,右侧蓝色部分就是老年代!Java7中我们叫永久代,Java8之后,我们叫元空间。首先我们知道逻辑上分为三部分,其实是不包括这个永久代的。

2023-12-19 21:36:28 468 3

原创 深入理解JVM虚拟机第三十五篇:JVM堆空间关于对象创建和GC的概述

磁盘上存储文件的时候,跟内存中大致还是很相似的,存储的时候并不要求空间连续,只不过如果空间连续会有:存取较快、分配简单的好处。这个涉及到一个虚拟内存的问题:我们物理内存和逻辑上内存可以建立一个映射关系(映射表)这样的话实际上不连续的内存空间在我们逻辑上可以看成是连续的。当然,出栈和GC的发生并不是连锁甚至前后脚的事,他们两个的发生没有必然关联,甚至可能间隔很长时间!当我们有大对象和大内存的区域,频繁的进行回收需要去提升我们的性能,我们希望用户线程执行的越多越快。我们知道,所有的线程都会共享堆空间,

2023-12-19 08:56:18 1010 7

原创 OpenCV4工业缺陷检测的六种方法

当前工业缺陷检测算法目前主要分为两个方向,基于传统视觉的算法和基于深度学习的算法,前者主要依靠对检测目标的特征进行量化,比如颜色,形状,长宽,角度,面积等,好处是可解释性强、对样本数量没有要求、运行速度快,缺点是依赖于固定的光照成像,稍有改动就要改写程序重新部署,而且检测规则和算法跟开发者经验其主导作用。其中工业品的缺陷检测极大的依赖人工完成,特别是传统的3C制造环节,产品缺陷检测依赖于人眼睛来发现与检测,不仅费时费力还面临人员成本与工作时间等因素的制约。

2023-12-18 22:08:00 705 8

原创 深入理解JVM虚拟机第三十四篇:JVM堆空间概述以及堆空间在JVM进程中唯一性

一个JVM实例只存在一个堆内存,堆也是Java内存管理的核心区域。Java堆区在JVM 启动的时候即被创建,JVM启动时堆空间大小也就确定了,堆是JVM管理的最大一块内存空间。PS:我们启动Java程序的时候,JVM是由BootStrap这个引导类加载器启动的。JVM一起动,运行时数据区和其中的空间内容被创建。他们的空间大小也就创建了。然而,堆内存的大小是可以调节的也必须可以调节,堆空间大一些可以降低GC的频率,因为如果堆的空间太小即使有GC的频率够快,一些问题也是解决不了的。

2023-12-18 21:56:31 816 1

原创 深入理解JVM虚拟机第三十三篇:详解JVM学习路线与内容回顾

我们需要了解类加载器,了解到到底是什么内容将我们的class文件加载到我们的内存当中,并且我们还需要对我们的class文件整体结构进行详细的了解,除此之外,字节码指令是如何执行的?JVM当中的执行引擎是什么回事?所以,我们必须去了解JVM的结构和内存的分配和回收,这里边就对应了我们的运行时数据区,内存的分配和各种各样的垃圾回收算法!类加载器的产出内容就是将class文件的内容存储到我们的JVM内存中,这个原料就是class文件。咱们学习JVM的最终目的肯定是在我们的系统应用面临瓶颈的时候,如何去突破瓶颈。

2023-12-18 20:34:06 399 2

原创 深入理解JVM虚拟机第三十二篇:详解JVM当中本地方法栈

本地方法栈是我们运行时数据区最后一块内容了。Java虚拟机栈用于管理Java方法的调用,而本地方法栈用于管理本地方法的调用。本地方法栈,也是线程私有的。允许被实现成固定或者是可动态扩展的内存大小。《在内存溢出方面是相同的)

2023-12-17 20:23:11 666 29

原创 深入理解JVM虚拟机第三十一篇:详解JVM当中本地方法接口

本地方法接口对应了图中的这个位置。我们讲解完毕之后本地方法接口之后,我们在回去讲运行时数据区中的本地方法栈。简单地讲,一个Native Met就是一个Java调用非Java代码的接口。一个Native Method是这样一个Java方法:该方法的实现由非Java语言实现,比如C。这个特征并非Java所特有,很多其它的编程语言都有这一机制,比如在C++中你可以用extern “c"告知C++编译器去调用一个C的函数。

2023-12-17 19:59:37 802

原创 SpringSecurity6从入门到上天系列第八篇:SpringSecurity当中的默认登录页面是如何产生的?

😉😉欢迎加入我们的学习交流群呀!✅✅1:这是孙哥suns给大家的福利!✨✨2:我们免费分享Netty、Dubbo、k8s、Mybatis、Spring等等很多应用和源码级别的高质量视频和笔记资料,你想学的我们这里都有!🥭🥭3:QQ群:583783824📚📚 工作微信:拉你进微信群,免费领取!🍎🍎4:本文章内容出自上述:Spring应用课程!💞💞💞💞5:以上内容,进群免费领取呦~ 💞💞💞💞。

2023-12-15 00:17:37 1403 14

原创 深入理解JVM虚拟机第三十篇:详解JVM当中栈帧的一些附加信息以及虚拟机栈的5个面试题

这个得具体问题具体分析。//线程安全的//线程不安全的。//把变量丢出去,有可能不安全。return s;}).start();method2(s);method1();

2023-12-14 21:17:23 404 3

原创 深入理解JVM虚拟机第二十九篇:详解JVM当中方法返回值地址

到现在我们已经分享过局部变量表、操作数栈、动态链接。接下来我们来分享方法返回值地址。我们知道局部变量表和操作数栈是最重要的两个部分。剩下的就没有那个重要了。方法返回值地址、动态链接和一些附加信息被称为帧数据区。

2023-12-13 23:55:15 938 6

原创 2023年度盘点:智能汽车、自动驾驶、车联网必读书单

2023年,智能驾驶和新能源汽车行业仍然有着肉眼可见的新进展。自动驾驶技术继续尝试从辅助驾驶向自动驾驶的过渡,更重要的是相关技术成本的下降。根据《全球电动汽车展望2023》等行业报告,预计2023年平均成本将降至100美元/千瓦时以下;电机的效率、功率密度和可靠性也得到了提升,平均成本降至20美元/千瓦以下。自动驾驶技术逐步成熟,新能源汽车市场规模不断扩大,预计2023年全球销量将达到1400万辆,同比增长29.3%,其中中国市场将达到850万辆,同比增长26.3%。

2023-12-12 13:13:39 2394 10

原创 2023年度盘点:AIGC、AGI、GhatGPT、人工智能大模型必读书单

2023年是人工智能大语言模型大爆发的一年,一些概念和英文缩写也在这一年里集中出现,很容易混淆,甚至把人搞懵。Large Language Model,即大语言模型,旨在理解和生成人类语言。LLM的特点是规模庞大,包含成百、上千亿的参数,可以捕捉语言的复杂模式,包括句法、语义和一些上下文信息,从而生成连贯的、有意义的文本。ChatGPT、GPT-4、BERT、文心一言等都是典型的大型语言模型。

2023-12-12 13:07:40 2573 1

原创 以企业架构为中心的SABOE数字化转型五环法

企业架构是企业数字化转型的底层方法论,作者首先提炼出了数字化企业的架构框架DEAF,然后据此向前后延伸,总结出SABOE数字化转型五环法,涵盖企业数字化转型从顶层设计到落地实施、从建设到运营、从效果评估到迭代改进各个方面,为企业提供端到端的方法论指导。在架构方面,SABOE五环法提出了DEAF数字化企业架构框架,融合和升级了等传统企业架构方法,具有数据化、智能化、敏捷化、生态化和体验化等五个特点,更加适应数字经济时代的需要。这些问题是多年发展中遗留下来的问题,可谓沉疴痼疾,阻碍了企业数字化转型的步伐。

2023-12-12 12:59:34 2427 1

原创 深入理解JVM虚拟机第二十八篇:详解JVM当中方法重写的本质和虚方法表

第一步:当我们去调用一个对象的方法的时候,首先会将这个对象压入操作数栈,经过invokeVurtual字节码指令去尝试调用方法。此时,当前被调用方法的对象位于操作数栈的栈顶,然后这个对象的方法类型被记作Type第二步:如果在类型 Type中找到与常量中的描述符合、简单名称都相符的方法,则进行访问权限校验,如果通过也就是有权限,则返回这个方法的直接引用,查找过程结束。如果不通过,则返回java.lang.IllegalAccessError 异常,这是一个非法访问的异常。

2023-12-11 22:30:56 971 8

原创 无敌是多么的寂寞!一本书讲透Java多线程!吊打多线程从原理到实践!

互联网的每一个角落,无论是大型电商平台的秒杀活动,社交平台的实时消息推送,还是在线视频平台的流量洪峰,背后都离不开多线程技术的支持。在数字化转型的过程中,高并发、高性能是衡量系统性能的核心指标,越来越多的公司对从业人员的多线程编程能力提出了更高的要求。

2023-12-07 21:44:05 4152 10

原创 JavaScript从入门到精通系列第三十八篇:详解JavaScript中DOM的查询

孙哥suns583783824。

2023-12-05 23:38:57 1074 23

原创 详解原生Spring当中的事务

保证业务操作完整性的数据库操作,就是数据库中的操作要么一起成功要么 一起失败,而且不能产生响应的影响,事务这个概念是数据库的范畴,我们通过Java代码只是完成对这种机制的调用。

2023-12-04 23:03:59 2232 72

原创 深入理解JVM虚拟机第二十七篇:详解JVM当中InvokeDynamic字节码指令,Java是动态类型语言么?

2:我们免费分享Netty、Dubbo、k8s、Mybatis、Spring...应用和源码级别的视频资料583783824。

2023-12-04 22:11:08 1123 4

原创 详解Spring对Mybatis等持久化框架的整合

583783824。

2023-12-03 18:20:37 1525 13

原创 详解SpringAop开发过程中的坑

编程人员在常规过程中不常遇到的问题,但是一旦遇到这个问题,就一定会出错。

2023-12-03 00:55:19 500 11

原创 详解Spring中基于注解的Aop编程以及Spring对于JDK和CGLIB代理方式的切换

孙哥suns583783824。

2023-12-03 00:52:25 886

原创 详解Spring工厂是如何获取Aop中的代理对象的

孙哥suns2:我们免费分享Netty、Dubbo、k8s、Mybatis、Spring...应用和源码级别的视频资料583783824。

2023-12-03 00:41:32 531

原创 详解Spring中BeanPostProcessor在Spring工厂和Aop发挥的作用

孙哥suns我们免费分享Netty、Dubbo、k8s、Mybatis、Spring...应用和源码级别的视频资料583783824。

2023-12-03 00:35:26 1092

空空如也

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

TA关注的人

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