自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 博客文章写多少篇才能开始排名?为什么我的博客文章没有Google排名?

新博客平均需要发布 20-30 篇优质内容(1500+字)才能在 3-6 个月内获得稳定排名。其中,约 58%的流量通常来自表现最好的 3-5 篇文章。谷歌统计显示,包含 3 个以上数据来源、优化图片和结构化数据的文章,排名成功率提高 2.3 倍。你是否知道,?根据 Ahrefs 对 9 亿篇博客的分析,。新站首篇排名文章通常需要才能进入前 10,且。排名前 10 的文章平均字数为,比排名 20-30 的文章长 45%。但单纯堆砌字数没用,,比低排名文章高出 72%。。排名不取决于文章数量,而在于和。

2025-12-11 10:05:33 918

原创 CSS 数学函数:min() max() calc() clamp()的使用

CSS数学函数摘要:CSS提供了四种实用的数学函数:calc()用于执行计算表达式(如宽度计算);min()和max()分别选取最小/最大值作为属性值;clamp()将值限制在最小、首选和最大值之间。这些函数支持不同单位混合运算,可用于响应式设计中的字体大小、网格间隙、边框等场景。使用时需注意运算符空格要求及浏览器兼容性。它们能替代传统媒体查询,实现更灵活的CSS动态计算。

2025-11-28 11:35:18 576

原创 从 WebSocket 到 SSE,实时通信的轻量化趋势

在实时 Web 的世界里,WebSocket 长期以来一直被视为“黄金标准”。每当我们需要构建聊天应用、在线游戏或协同编辑工具时,它强大的全双工通信能力都使其成为不二之选。然而,在许多场景下,我们真的需要如此“重型”的武器吗?在这些场景中,数据流是的:从服务器到客户端。客户端只是一个被动的接收者。如果这时我们依然选择 WebSocket,就好像为了寄一封信而专门建立了一条双向的私人高速公路——功能强大,但过于复杂且成本高昂。。它用一种极其优雅和简单的方式,完美解决了单向数据推送的难题。

2025-11-21 14:44:44 796

原创 Vue + Axios + Node.js(Express)如何实现无感刷新Token?

本文详细介绍了在Vue+Node.js前后端分离架构中实现Token无感刷新的方案。前端使用Axios拦截器自动管理Token,当AccessToken即将过期时,通过RefreshToken静默刷新;后端Node.js配合JWT和Redis实现双Token机制。文章包含完整代码实现,涵盖前端请求拦截、后端接口设计、Redis存储等关键环节,并强调安全注意事项如HttpOnly Cookie、HTTPS协议等。该方案既保证安全性,又提升用户体验,避免频繁重新登录。

2025-11-14 14:34:20 734 1

原创 利用目录分类提升SEO排名!优化策略与实践指南来了

目录分类是网站URL路径中的层级结。它反映了网站内容的组织方式,直接影响到搜索引擎的抓取效率和用户对页面层级的理解。

2025-11-11 17:27:18 683

原创 MySQL执行计划出现 Using filesort 是什么原因?如何进行优化?

当执行计划的 Extra 属性出现 Using filesort 时,大概率我们的 SQL 需要优化了。可能查看 SQL 属于那种情况,针对性地进行优化。

2025-11-10 16:57:45 816

原创 前端面试题最大矩形面积问题

ℎn​,数组的每个元素代表某种高度。小 S 对这些高度感兴趣的是,当我们选取任意 k 个相邻元素时,如何计算它们所能形成的最大矩形面积。这个问题要求我们找到数组中任意连续 k 个元素的最小值乘以 k 的最大值。这类似于经典的”最大矩形面积”问题,可以使用单调栈来高效解决。即,R(k) 的值为这 k 个相邻元素中的最小值乘以 k。现在,小 S 希望你能帮他找出对于任意 k,R(k) 的最大值。这个算法的时间复杂度是 O(n),因为每个元素最多入栈和出栈一次,空间复杂度也是 O(n)用于存储栈。

2025-11-04 17:17:45 138

原创 整理适合IT互联网常用的十大技术博客类网站!

SegmentFault是中国领先的开发者技术社区,为热爱学习的开发者提供了一个高质量的技术交流平台,很多小白和大牛都在这发布自己遇到的技术问题,然后有很多同行都乐于帮忙解答,甚至一个问题有几个解决方案,这是一个值得推荐的技术社区平台。里面模块有很多,比如协作翻译,众包,开源软件库,代码分享,招聘,咨询等等,开IT互联网开发者有效的提供了交流,发现,使用的开源技术平台。红黑联盟是众多大牛聚集的社区,有栏目,热点,学院,有各种各样的技术类文章,聚集了IT互联网各个行业的精华,这是讨论技术不错的社区。

2025-10-30 18:15:52 379

转载 safari浏览器怎么清除缓存和cookie_safari浏览器清除缓存和Cookie方法

Safari 浏览器的缓存与 Cookie 清理需根据设备(Mac/iOS)和场景(快速优化 / 深度隐私)选择对应方法:日常维护优先 “选择性清理”,公共设备首选 “全盘清除”,隐私敏感场景可 “禁用 Cookie”。记住三大原则:精准清理优于全盘删除、定期维护胜于事后补救、权限检查排除操作障碍,就能让 Safari 浏览器始终保持流畅与安全。无论是办公还是娱乐,掌握这些技巧都能显著提升苹果设备的浏览体验。

2025-10-28 15:29:24 799

原创 前端开发为什么要禁止使用 == 操作符?

如果你翻阅过 Google、Airbnb 或其他任何一家顶级科技公司的前端代码规范,几乎总能看到一条规定:禁止使用==。==(宽松相等)和===(严格相等)不都用来判断相等吗?为什么非要对一个双等号赶尽杀绝?然而,在成千上万行代码、数百人协作的大型项目中,这个看似微小的选择,恰恰是保证代码质量、可维护性和团队协作效率的基石。

2025-09-11 16:01:58 569

转载 WSL2 中安装 cuDNN 的详细教程

摘要:本文详细介绍了在WSL2环境下安装cuDNN深度学习加速库的完整流程。cuDNN作为NVIDIA专为GPU优化的神经网络加速库,需与CUDA版本严格匹配。教程提供了两种安装方案:APT自动安装和手动下载部署,包括环境准备、文件配置及验证方法。重点强调了版本兼容性检查(如CUDA12.9需对应cuDNN≥9.10.2),并针对常见问题给出解决方案,如环境变量设置和权限处理。通过本指南,用户可快速在WSL2中启用GPU加速的深度学习训练/推理功能。

2025-08-21 16:45:47 481

原创 如何在React中服务器操作提交表单后(不)重置表单?

在 React 中使用服务器操作提交表单时,你可能会遇到这样一个问题:如何在服务器操作执行后(不)重置表单。这取决于你在 React 之上使用的框架,表单可能会自动重置,也可能需要你手动重置。在 React 中,表单的默认行为是在提交操作后自动重置。无论表单提交是否成功,都会发生这种情况。当你在 React 之上使用 Next.js(因为你需要一个框架来使用服务器操作),这种默认行为并不会改变。在本教程中,我将展示如何在服务器操作执行后保持表单状态不变。但这种情况仅适用于服务器操作失败时。

2024-11-20 11:43:55 1336 2

原创 37. Java二叉树视图

除了可以直接使用递归处理的二叉树问题,二叉树中还有一些典型的算法问题,需要和其他的数据结构配合解决,例如使用堆、栈以及队列数据结构配合查找的过程,可以避免使用递归算法。

2024-11-06 15:31:06 247

原创 36. Java二叉树深度

二叉树算法题也是面试中常见的一类题目,相对于链表,二叉树每个节点存在两个指针,结构更为复杂。但是相对于节点中有多个指针的多叉树,双节点的操作相对简洁,所以比较适合在面试中的白板编程。二叉树有一些经典问题,例如判断一颗二叉树是否属于平衡二叉树,将一颗二叉树展开为单链表,求解二叉树的深度,二叉树的前序、中序、后序遍历等。这些题目存在基本的算法模板,本章将探讨求解二叉树深度题目。

2024-11-04 17:24:16 228

原创 Node.js 23 发布了!不再支持 32 位 windows 系统

关于 Node.js 项目版本号的一些提醒:像今天发布的 Node.js 23 这样奇数版本非常适合在您的特定环境中进行早期功能测试。偶数版本如当前的 Node.js 22,一旦成为 LTS,将重点关注稳定性和安全性,并支持 30 个月。我们预计将在 v23.x 中测试此功能,找出潜在的回归问题并相应地进行调整,然后再将这一取消标志的更改回溯到 v22.x。此外,Node.js 22 将在 10 月 29 日当周被提升为长期支持 (LTS) 版本,进入长期维护阶段,以确保稳定和安全的更新。

2024-10-22 15:22:25 864

原创 35. Java 链表成环

上个章节介绍了单链表反转,单链表还存在一些经典的问题,例如找到链表的倒数第 K 个节点,或者在原始链表上进行快速排序,或者是判断一个单链表是否成环,这些问题看似没有共同性,但是都可以使用快慢指针(Fast-Slow Point)方法解决。

2024-10-22 15:18:55 219

原创 34. Java 反转链表

相对于各种复杂的二叉树(例如平衡二叉树、完美二叉树),单链表的数据结构简单,只涉及到一个值和指针的操作,所以面试中经常会出现需要手写单链表的算法题。反转链表应该是单链表中考察频率最高的题目,题目看起来比较简单,但是因为涉及的指针操作较多,要实现一遍 bug free 也不太容易。

2024-10-22 15:15:43 308

原创 33. java快速排序

排序算法是数据结构中最基础的算法,快速排序则是面试中最常见的排序算法。无论是校招面试还是社招面试,快速排序算法的出现频率远高于其他算法,而且经常会要求候选人白板手写实现算法。快速排序算法的核心是分治处理,重点是分析时间复杂度。

2024-09-29 16:31:44 407 1

原创 32. Java栈和队列

栈和队列相关的题目是校招中出现频率一般,但是是属于相对基础的题型。我们要关注两类问题,栈和队列的添加和删除操作,以及栈和队列之间的区别和联系。

2024-09-27 11:13:25 204

原创 31. RabbitMQ顺序消费

上个小节中我们介绍了 RabbitMQ 中如何防止消息丢失,即保证消息发送的 At Least Once 性质,除此之外,如何防止消息被重复消费,即保证消息消费的 Exactly Once 性质,也是业务逻辑中需要考虑的问题。

2024-09-23 17:45:08 626 1

原创 30. RabbitMQ消息丢失

RabbitMQ经常被用于服务模块之间的解耦以及高并发削峰场景,之前的章节讨论了不同服务模式的特点,但是在生产环境中,因为机器以及网络设备的不可靠,保证消息的可靠是待解决的问题。在特定场景下消息可能存在丢失风险,本文将介绍如何预防这类的风险。

2024-09-20 14:33:37 568 1

原创 29. RabbitMQ队列模型

因为生产环境存在不同的消息分发要求,例如对于注册流程,同一条注册消息需要发送到短信模块和邮箱模块,而对于请求削峰场景,同一条消息只需要发送到业务服务后端即可。我们可以通过配置 RabbitMQ 工作模式来决定发送单个队列还是多个队列,以及配置特定的路由规则。

2024-09-20 14:31:48 566 1

原创 28. 消息队列使用场景

除了计算机网络、操作系统等基础知识的考察,各种流行的中间件也深受面试官的青睐。之前的章节已经对缓存中间件的代表 Redis 的面试题进行了分析,本章节将介绍常用的消息中间件,即 RabbitMQ 的基础定义以及使用原因。

2024-09-14 13:48:30 707 1

原创 27. Redis并发问题

对于一个在线运行的系统,如果需要修改数据库已有数据,需要先读取旧数据,再写入新数据。因为读数据和写数据不是原子操作,所以在高并发的场景下,关注的数据可能会修改失败,需要使用锁控制。

2024-09-14 13:45:28 301

原创 26. Redis缓存过期

Redis 相对于传统的关系型数据库(例如 MySQL )而言,还具有设置过期时间的特性,在项目实战中,我们经常关心的三元组是。这里的过期时间(expire_time)是的具体执行方式,涉及到 Redis 的缓存过期策略。

2024-09-11 10:30:04 260

原创 25. Redis持久化

Redis 的设计核心是提供快速的查询和存储能力,所以所有的数据都被存储在内存中。相对于硬盘,内存中的数据是半持久化存储,当遇到不可抗阻力,例如断电或者硬件损坏导致的服务器宕机时,内存中的数据会完全丢失。为了防止 Redis 中的数据丢失,需要将数据持久化存储到硬盘。

2024-09-11 10:27:44 211

原创 24. Redis缓存问题

在小型项目中(例如大部分 toB 业务),Redis 被作为缓存,我们无需过多关注缓存的性能,但是对于高并发的场景(例如 toC 的在线电商业务),在商品秒杀或者库存抢购的时候,Redis 也可能存在诸多潜在的问题,例如缓存穿透、缓存雪崩。

2024-09-05 14:46:24 271

原创 23. Redis数据结构(二)

上一章节介绍了 SDS 数据结构,即 Redis 最基础的 Key-Value 存储实现,本章节继续介绍 Redis 底层的高级数据结构。Redis 的五种基本结构中还有一个叫做 zset 的数据结构,zset 保证了每个值的唯一性,这方面性质同传统的 set 集合,也可以对每个值赋予 score,按照 score 进行排序。这种高级性质依赖于底层的跳跃表数据结构实现。

2024-09-04 14:30:13 251

原创 22. Redis数据结构(一)

简单来说,Redis(Remote Dictionary Server)也是一个数据库,不过和传统数据库不同点在于 Redis 的数据存储在内存中,所以读写速度远超传统数据库(例如 MySQL ),同时因为Key—Value的数据存储形式非常零活,所以Redis被广泛应用在缓存方向,并且能适配各种实战的应用场景。Redis 提供了多种语言的 API ,比如常见的 Java、C++、Python 等,基本是后端开发中最常用的缓存中间件。

2024-08-30 14:21:35 257

原创 21.页面置换算法

操作系统的核心管理逻辑可以简化为进程管理、内存管理、文件管理。之前的小节已经介绍了进程的基本概念,每个进程都有独立的地址空间,这些地址空间被分为大小相同的块,定义为页(Page)。然而物理机的内存硬件空间是有限的,举例来说,我们装配最常见的 4G 内存条,但是很多进程例如单机游戏,运行时都需要占用几个 G 的内存空间,所以就需要用到虚拟内存。

2024-08-29 10:14:11 162

原创 20.常用命令

Linux 是基于 Unix 系统开发的开源操作系统内核,目前常见的发行版本 Ubuntu、RedHat、CentOS 等,互联网服务器一般都部署的是 Linux 系统。因为使用场景不同,Windows 系统更适合个人日常办公,相对于 Windows 系统的复杂图形化界面而言,Linux 一般只在远程服务器上部署纯命令行界面,所以熟悉 Linux 系统的常用命令比较重要。

2024-08-23 10:51:19 136

原创 19. fork

之前的小节中介绍了操作系统的进程,操作系统中有个创建进程的重要方法就是 fork 函数,当需要执行和本进程相关的独立任务时,一般需要创建一个有血缘关系的子进程。

2024-08-23 10:48:20 124

原创 18. 死锁

操作系统中的很多资源都是多个进程或者多个线程之间共享的,例如同一个文件,可能同时会被多个程序读写。或者是一个内存变量,存在同时被多个线程修改的可能。如果资源能够不能以合理的顺序访问就可能产生冲突,这种竞争资源的现象可能造成阻塞,引发死锁。死锁(DeadLock)可以发生在多个进程之间或者是多个线程之间,本文以线程作为观察对象。那么死锁的定义就是多个线程竞争同一个资源造成的僵局,如果没有外力推动,这种僵局会一直持续下去,线程的状态都无法继续推进。

2024-08-16 15:28:31 121

原创 Linux中以单容器部署Nginx+ASP.NET Core

强烈推荐在生产环境中使用反向代理服务器转发请求到Kestrel Http服务器,本文将会实践将Nginx --->ASP.NET Core 部署架构容器化的过程。

2024-08-14 11:09:42 1610

原创 17.进程间通信

上一小结谈到了操作系统中进程和线程的区别,其中进程之间、线程之间的通信方式不同,进程通信(Inter-Process Communication,简称 IPC)是指不同进程之间交换信息。操作系统中时刻都在进行 IPC,例如微信读取本地的文件,就是微信程序和文件系统进程交互的过程。

2024-08-14 10:47:33 127

原创 16. 进程和线程

从宏观的角度来看,操作系统就是我们日常使用的 Windows、MacOS、Linux 这类的系统,但是这种直观的用户交互界面只是操作系统的一小部分功能,操作系统如何决定系统的资源调度、如何处理内存的分配以及如何管理网络和文件系统,这些都是隐藏在用户界面之下的内容。从课程设计的角度来看,操作系统(Operating System)是计算机专业的核心专业课程,所以可以用来衡量候选人的计算机基本功。对于后端程序员,如果是使用 Java 语言,Java 中的多线程会涉及到进程和线程的关系,这是操作系统中的概念。

2024-08-13 14:31:38 122

原创 30. 自定义类 Hibernate 框架的基本过程

不要一味地迷信,要善于质疑,善于打破。这应该是我们在学习框架时应该保持的心态。Hibernate 是所有 JDBC 框架中封装最高的、使用起来最便利的框架之一。对于初学者而言,要么在感叹它的神奇,要么敬畏它的存在。但是,作为一个真正的开发者,应该有破有立的想法。本节课程试图通过一个简易的 JDBC 框架的实现流程描述,让大家更清晰地了解 Hibernate 框架的设计过程。

2024-08-13 14:27:30 772

原创 29. Hibernate 面试官必须出的面试题

本节课先和大家聊聊面试过程中需要注意的事项,再和大家一起讲解 Hibernate 中常见的面试题。

2024-08-13 14:24:21 739

原创 28. Hibernate 中的常见坑

框架方便了开发者的工作,但是运行速度并没有原生的快。原生开发是直接告诉 JVM 要做什么,框架则是曲线救国,JVM 需要绕些圈子才明白开发者的意图。显然,框架是要以更多性能消耗、运行速度作为代价的。本节课,和大家聊一聊使用 Hibernate 中可能遇到的坑。避开这些坑,真正享受 Hibernate 带给开发者的福利。

2024-08-12 17:02:49 1090

原创 27. Hibernate 自动进行数据封装

Hibernate 可以构建各种复杂的 SQL 语句,但其本质都是反射机制结合映射关系完成的。框架也仅是一款程序产品,人为编写的产物。要相信,只要你愿意,你完全可以实现自己的 JDBC 框架。本节课和大家继续聊聊 Hibernate 是如何自动封装数据的。

2024-08-12 17:00:39 699

html5 canvas龙卷风动画特效

html5 canvas龙卷风动画特效为网页增添了动感和视觉上的吸引力。它不仅可以提升用户体验,还能突出页面设计和内容呈现。无论是展示产品特色、讲述故事情节,还是展示数据可视化,龙卷风动画特效都能起到画龙点睛的效果。在未来的Web开发中,html5 canvas龙卷风动画特效有着广阔的应用前景,值得我们深入学习和探索。

2024-07-12

前端开发实现纯CSS3制作红色下拉导航菜单代码

纯CSS3制作红色下拉导航菜单代码是一款纯css3 transition属性制作红色的导航菜单,鼠标悬停展开下拉菜单,支持三级下拉菜单代码。

2024-04-15

原生JS层叠图片轮播展示代码

原生JS层叠图片轮播展示代码,原生JS层叠图片轮播展示代码是一款适合展示的旋转木马图片代码。

2024-04-15

H5全屏手风琴幻灯片切换特效

H5全屏手风琴幻灯片切换特效是一款全屏的手风琴菜单滑动图片切换特效。

2024-04-15

samsui-master伪数据生成库

samsui-master伪数据生成库, 软件作用:为测试软件在大数据量下的性能而给数据库导入大量的数据。

2024-04-15

iTour chat translation - 网页视频自动翻译插件

简介:iTour chat translation是一款可以自动翻译并自动生成字幕的网页插件,iTour视频翻译插件。 iTour网页视频翻译插件简介: iTour chat translation视频翻译插件是一款可以一边播放视频一边翻译出字幕,完全实时翻译的插件。在网页界面打开Chrome插件(iTour视频翻译)就可以了。翻译非常快和并且准确性非常高。支持数十种语言,还可以录制视频。

2024-01-08

vue分页插件-vue.js分页插件下载

基于vue2.0分页插件,vue.js分页插件下载源码 一、vue分页插件浏览器适配: 1.支持Chrome所有版本 2.支持Firefox所有版本 3.支持Safari所有版本 4.支持IE11及以上版本 二、vue分页插件使用教程 import pageination from 'vue_pageination'; Vue.use(pageination); total:总页数 size:每页显示条目个数不传默认10 page:设置默认页码,默认1 changge:页码切换方法触发,比如:传入pageFn方法接收page页码 query() { if (this.param.page == 1) { this.pageFn(1); } else { this.param.page = 1; } } 重置: reset(){ this.pageFn(1); }//重置 isUrl:是否修改url地址 需要在mounte pageFn(val){ this.page = val; } 搜索执行

2024-01-08

Ae/Pr插件Dehancer Pro v2.1.0电影质感胶片效果工具

Ae/Pr插件Dehancer Pro v2.1.0电影质感胶片效果工具 包括的工具: 1. 输入相机配置文件 2. Cineon电影日志支持 3. 63个带有打印选项的胶片配置文件 4. 柯达2383打印胶片 5. CMY色头 6. 胶片颗粒 7. Bloom 8. 光晕 9. Gate Weave 10. Film Breath 11. 去边 12. 装饰图案 13. 假色 14. LUT生成器

2024-01-08

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

TA关注的人

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