自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 dockerfile 中 #(nop)

(nop)表示该层在 Docker 镜像的构建过程中,没有执行如RUN命令那样的操作,主要用于设置元数据或进行一些不涉及程序运行的操作,例如设置环境变量(ENV)、添加标签(LABEL)、指定工作目录(WORKDIR)等。当你看到#(nop)时,应该明白这是 Docker 为了让你清楚该层主要是进行配置或元数据更新,而不是执行程序或安装软件包。这样可以帮助你更好地理解 Docker 镜像的构建过程,以及 Dockerfile 中的指令如何映射到镜像的不同层中。

2025-01-08 17:07:08 363

原创 操作系统的用户空间与内核空间

文章目录定义操作系统的用户空间是内存空间的一部分,它是与内核空间相对应的概念。在这个区域中,运行着用户应用程序和一些用户级别的库函数。用户空间中的程序运行在较低的特权级别,不能直接访问硬件资源和内核数据结构。它们需要通过系统调用向内核发出请求,由内核来完成对硬件资源的访问和控制。例如,当你在电脑上打开一个文本编辑器应用程序,这个文本编辑器就运行在用户空间。它不能直接和电脑的硬盘控制器或者网卡进行交互来读写文件或者发送网络数据,而是要通过操作系统提供的接口(如Windows中的API或者Linux中

2024-12-31 15:32:17 427

原创 Hypervisor 的两种类型

Hypervisor(也被称为虚拟机监视器,即Virtual Machine Monitor,VMM)是一种创建和运行虚拟机的软件、固件或硬件。它可以在物理主机上划分出多个虚拟的计算环境,使得多个操作系统(Guest Operating System)能够在同一台物理计算机上同时运行,这些操作系统彼此独立,就好像它们在各自独立的物理机器上运行一样。

2024-12-31 15:18:33 913

原创 运行第一个容器

VMware16Pro虚拟机安装教程(超详细)ubuntu16.04安装步骤。

2024-09-13 16:07:55 988 1

原创 文本协议中嵌入二进制数据

在文本协议中嵌入二进制数据时,使用,除非你确定这些字节实际上是以指定的字符集编码的文本。这是因为如果字节不是有效的文本编码,那么使用可能会产生不可预测的结果,包括数据损坏和乱码。当需要在文本协议中嵌入二进制数据时,更好的做法是使用一种编码方案,如Base64,它可以将二进制数据转换为一个仅包含ASCII字符的字符串。这样,你就可以在文本协议中安全地传输这个字符串,然后在接收端使用相应的解码算法将其还原为原始的二进制数据。

2024-05-14 19:09:36 377 1

原创 软考高级系统架构设计师考试经验分享

软考全称计算机技术与软件专业技术资格(水平)考试,是由国家人力资源和社会保障部、工业和信息化部领导下的国家级考试,考试合格者将颁发由人社部和工信部用印的计算机技术与软件专业技术资格(水平)证书。该证书在全国范围内有效,并且与一些国家互认。从2004年1月1日起,全国不再进行计算机技术与软件相应专业和级别的专业技术职务任职资格的评审工作,实施以考代评。因此,该考试既是职业资格考试,又是职称资格考试。考取软考高级资格证书代表具有参与高级职称评定的资格,但是要想享受高级职称待遇, 还需要单位“聘用”。

2024-01-09 15:28:28 2232

原创 Http 请求体和响应体中重要的字段

Content-Type:用于定义数据的 MIME 类型,即告诉服务器或浏览器应该如何解析请求体中的数据。例如,Content-Type 为 text/html 表示请求体中的数据是 HTML 格式的。Accept:用于告诉服务器客户端能够处理哪些媒体类型。Accept 头中的值通常是一个或多个 MIME 类型,并按优先级排序。服务器会根据Accept头中的值来决定响应的内容类型。Accept的顺序用于指示客户端对响应内容类型的偏好。当客户端发送 HTTP 请求时,可以在请求头中包含一个 Accept

2023-12-21 16:39:20 712

原创 Filter 与 Interceptor 的区别、SpringMVC 处理请求的流程、SpringMVC 方法中添加参数、HttpServletRequest 和 HttpServletRespons

Spring MVC 是一个基于 Java 的 MVC(Model-View-Controller)框架,用于构建 Web 应用程序。

2023-12-21 10:51:06 679

原创 2023 下半年系统架构设计师学习进度

每周350分钟第一周(339分钟):11分钟7.100.架构新老教材对比分析:51分钟7.111.1计算机硬件-CPU-校验码:41分钟1.2指令系统-存储系统-cache:50分钟7.121.3磁盘-输入输出技术-总线:40分钟第一章课后习题:准确率 80%7.137.147.152.1操作系统概述-进程管理-同步互斥:76分钟2.2进程调度-死锁-存储管理-固定分页分段:67分钟2.3设备管理-文件管理:14分钟7.16第二周(265分钟):

2023-12-20 16:01:53 1382 1

转载 基准测试工具:JMH(Java Microbenchmark Harness)

为什么要用JMH?何时应该用?

2023-12-19 11:00:02 72

转载 MySql 中 on duplicate key update 用法

MySql 中 on duplicate key update用法。

2023-12-18 14:46:07 59

转载 阿里巴巴 Java 手册中的应用分层

utm_id=0。

2023-12-13 15:51:06 52

原创 DriverManager 管理多个数据库驱动

https://blog.youkuaiyun.com/qq_16504067/article/details/101022518

2023-12-07 09:38:30 110

原创 补充:Java 中包含注解程序的 AST(抽象语法分析树)

在Java中,注解(Annotation)是一种特殊的注释,可以用于为程序元素(如类、方法、成员变量等)提供元数据信息。注解本身并不会改变程序的语义,而是提供了一种方式,使得程序员可以在代码中嵌入额外的信息,这些信息可以在编译时、运行时或代码生成时被处理。在Java的抽象语法树(AST)中,注解通常被表示为一种特殊的节点类型,即。节点可以用于表示源代码中的注解声明和注解实例。等也代表了Java源代码中的相应语法结构。这个AST中的其他节点类型如。它包含了注解的名称(

2023-11-30 09:14:00 762

原创 SpringBoot 中 指定 AspectJ 的织入模式

需要注意的是,AspectJ的默认织入模式可能会因Spring Boot版本的不同而有所变化。因此,在明确指定织入模式时,最好查看所使用Spring Boot版本的文档或参考AspectJ的官方文档以确保正确性。通过上述配置,AspectJ将使用静态织入模式实现AOP。如果要使用动态代理模式,只需将。如果要使用动态代理模式,只需将上述属性的值设置为。

2023-11-29 10:05:05 838

转载 SpringBoot 中 web 项目和非 web 项目

【Spring Boot】创建非web项目。

2023-11-17 10:04:06 236

转载 Maven 工程的依赖高级特性

maven工程的依赖高级特性。

2023-11-15 16:20:41 80

原创 加密算法小结

国密加密算法工具。

2023-11-15 15:52:47 193

转载 Base64

密码学 | Base64 是加密算法吗?

2023-11-15 15:52:36 55

转载 Maven pom.xml 中 scope、repositories、build

设置maven的pom.xml中scope、repositories、build。

2023-11-15 15:47:09 123

转载 Maven 多模块项目搭建

Maven多模块项目搭建。

2023-11-15 15:46:47 51

转载 IDEA 无法搜索或者下载插件

File -> Settings… -> Plugins 可以打开插件市场,搜索想要下载的插件,但是可能由于网络问题而无法成功搜索或者下载插件。此时需要设置代理来解决。点击插件界面里的齿轮图标(在Marketplace、Installed的右边),选择 HTTP Proxy Settings…,勾选 Auto-detect proxy settings 以及 Automatic proxy configuration URL:,然后点击最下方的 Check connection,在弹出框里输

2023-11-14 17:19:32 3160 5

转载 补充:Java 回调(callback)机制

Java回调(callback)机制。

2023-11-10 17:24:08 71

转载 集中式日志系统 ELK 协议栈

通过logstash消费kafka数据到elasticsearch。Filebeat之多行匹配模式理解记忆方式。Kibana 入门实战(1)–简介及安装。Kibana 入门实战(2)–简单使用。集中式日志系统 ELK 协议栈详解。Filebeat 模块与配置。

2023-08-22 11:07:59 77

转载 Java 程序的终止运行 与 ShutdownHook

ShutdownHook 介绍应使用 kill -15 关闭应用程序kill -9 和 kill -15 的区别

2023-07-06 14:46:23 162

原创 (四)Kafka 消费者

不同于传统的消息系统,横向伸缩消费者和消费者群组并不会导致 Kafka 性能下降。除了通过增加消费者数量来横向伸缩单个应用程序,实际上,Kafka 的一个主要设计目标是。在这些应用场景中,我们希望。

2023-07-06 11:21:10 2911

转载 补充:Java判空

代码优雅之道——Java如何判空

2023-06-28 16:28:29 86

转载 补充:Jackson TypeReference 获取泛型类型信息

为什么要使用 TypeReferenceTypeReference 的使用TypeReference 实现原理

2023-06-27 16:51:15 569

转载 补充:Java 线程池拒绝策略

ThreadPoolExecutor 参数 RejectedExecutionHandler 各种策略分析

2023-06-27 16:41:42 118

原创 Redisson 分布式锁

【代码】Redisson 分布式锁。

2023-06-27 16:16:40 133

原创 补充:try-catch-finally 中 return 的执行顺序

【代码】补充:try-catch-finally 中 return 的执行顺序。

2023-06-26 15:44:34 218

原创 (三)Kafka 生产者

假设你是 B2B 供应商,你有一个大客户,它是手持设备 Banana 的制造商。你的日常交易中有 10% 以上的交易与这个客户有关。如果使用默认的哈希分区算法,那么与 Banana 相关的记录就会和其他客户的记录一起被分配给相同的分区,导致这个分区比其他分区大很多。服务器可能会出现存储空间不足、请求处理缓慢等问题。因此,需要给 Banana 分配单独的分区,然后使用哈希分区算法将其他记录分配给其他分区。

2023-06-15 11:12:29 2564

原创 (一)初识 Kafka

数据(消息)的发送者(发布者)不会直接把消息发送给接收者。发布者以某种方式对消息进行分类,接收者(订阅者)通过订阅它们来接收特定类型的消息。发布与订阅系统一般会有一个 broker,也就是发布消息的地方。Kafka 是一款基于发布与订阅模式的消息系统。一般被称为“分布式提交日志”或“分布式流式平台”。文件系统或数据库提交日志旨在保存事务的持久化记录,通过重放这些日志可以重建系统状态。同样,Kafka 的数据是按照一定的顺序持久化保存的,并且可以按需读取。

2023-06-12 11:22:11 1797

原创 (二)安装 Kafka

比如分区数和数据保留策略。还可以将服务器提供的默认配置作为基准,应用于集群内的大部分主题。

2023-06-09 15:59:38 1556

原创 Linux 环境下安装 Java

软连接相当于 Windows 系统中的快捷键,部分软件可能会从 /usr/bin 目录下查找 Java,因此添加该软连接防止其他软件查找不到的情况。

2023-06-09 09:11:11 1000

原创 RabbitMQ,RocketMQ,Kafka,Pulsar 几种消息队列的对比

如果数据量很大,同时不希望有 Kafka 的高延迟,刚好业务场景是金融场景。,像收集日志、监控信息或是前端的埋点这类数据,或是你的应用场景大量使用 了大数据、流计算相关的开源产品,那。可用性:非常高,kafka是分布式的,一个数据多个副本,少数机器宕机,不会丢失数据,不会导致不可用。功能支持:功能较为简单,主要支持简单的MQ功能,在大数据领域的实时计算以及日志采集被大规模使用。这是一款为大数据而生的消息中间件,在数据采集、传输、存储的过程中发挥着举足轻重的作用。极低的发布延迟和端到端延迟。

2023-06-05 15:03:28 1911

原创 SQL:数据按多列去重

【代码】SQL:数据按多列去重。

2023-05-26 16:41:49 1158

原创 4.计算机网络基础

网络编程懒人入门(六):史上最通俗的集线器、交换机、路由器功能原理入门。

2023-05-24 18:35:41 1548

原创 3.操作系统

WindowsiOSUNIX(非开源)Linux(开源)PCB 中存储当前进程所处的状态、需要那些数据、与其它进程的关系。- PCB 是一种数据结构,是进程存在的唯一标识。线性方式:数量少的时候。链接方式:用指针链接的方式不像线性方式需要每次扫描。只需要找到该状态的指针,顺着指针就能把该状态的 PCB 都找出来。索引方式 :PCB 数量多时。指针指向索引表,索引表的表项指示了 PCB 的位置。

2023-05-12 17:09:46 871

原创 2.计算机组成原理

运算器:算术运算、逻辑运算。存储器:存放程序和数据。控制器:指挥程序运行。输入设备:将信息转换成计算机能识别的形式。输出设备:将结果转换成人们熟悉的形式。

2023-05-04 09:57:09 3444 1

空空如也

空空如也

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

TA关注的人

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