自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 数据链路层设备-网卡和网桥

数据链路层的设备有:网卡、网桥、交换机1 网卡网卡(网络接口卡)网卡工作在数据链路层和物理层。其作用是将数据链路层的以太网报文变换成高低电平传输到物理层;将物理层到达的高低电平信号传输到数据链路层,数据链路层再进行以太网报文的组装。2 网桥网桥是连接两个局域网的存储转发设备。在两个局域网之间传送以太网报文。网桥可以将两个网卡进行连接,对帧进行转发,我们使用vmware创建虚拟机时...

2023-09-05 21:12:00 187

原创 linux网络配置

linux网络配置工具有多种,比如ifconfig、ip、nmcli等。他们都可以进行网卡方面的配置,下面会分别介绍0 一致性网络设备命名规则以太网设备以en开头规则1 板载设备eno<板载索引号>,比如eno1规则2 PCIe热插拔口,ens<PCIe热插拔索引号>[f<function号>][d<device号>],比如ens33规...

2023-09-04 23:57:00 208

原创 应用对接gitlab api

公司有个项目需要对接gitlab相关api。1 gitlab登陆gitlab提供给我们oauth2登陆接口。我们可以通过这个接口实现gitlab认证登陆,并返回给我们一个token作为系统登录凭证。官网:https://docs.gitlab.com/ee/integration/oauth_provider.html首先,gitlab上申请一个Application ID,后续应用系统...

2023-09-04 15:11:00 285

原创 npm run xxx底层到底干了啥

首先,我们要了解,npm run xxx是npm CLI的一个。官网:https://docs.npmjs.com/cli/v9/commands/npm-run-script。命令(其全名是run-script,有三个别名run、rum、urn):npm run-script <command> [-- <args>]aliases: run, rum, ur...

2023-08-30 11:18:00 123

原创 kernel源码(二十四)文件系统

1 minix文件系统1.1 磁盘结构minix文件系统磁盘结构如下所示图中,整个磁盘被划分为360个磁盘块(每个磁盘块1Kb)引导块,MBR就在这个磁盘块中。当计算机加电,ROM BIOS将会自动读取该磁盘块到内存并执行其中的代码。分区,一块磁盘,我们可以最多有4个主分区。MBR大小为一个扇区大小,其中446byte存放开机管理程序,64byte存放分区表,每个分区使用16byt...

2023-07-29 08:55:00 140

原创 kernel源码(二十三)Bochs运行linux0.11

1 下载Bochshttps://sourceforge.net/projects/bochs/我下载的版本为Bochs-win64-2.7.exe,双击即可安装2 运行linux0.112.1 不使用配置文件http://oldlinux.org/Linux.old/images/下载如下两个镜像bootimage-0.11-20040305  操作系统引导镜像,包含了操作系统启...

2023-07-26 21:17:00 277

原创 kernel源码(二十二)块设备

操作系统所有设备可分为两类:块设备和字符设备。块设备是一种可以以固定大小的数据块为单位进行寻址和访问的设备,例如硬盘、软盘。字符设备是一种以字符流作为操作对象的设备,不能进行寻址操作,例如打印机、网卡、终端设备。为便于管理,操作系统将这些设备统一的以设备号进行分类。linux0.11内核将设备分成7类主设备号类型说明0无无1块/字符ram,内存设备2...

2023-07-22 08:06:00 58

原创 微机原理

1 CPU组成cpu由运算器和控制器和寄存器组成。运算器用于完成数据的算术和逻辑运算。控制器寄存器用于暂存参加运算的操作数和运算结果。80x86微处理器指的是一系列处理器型号。包括8086,80286,80386,Pentium系列。1.1结构图1.2 8086/8088功能结构由两部分组成,总线接口单元(BIU),执行单元(EU)1.2.1 BIU总线接口单元组成:段...

2023-06-04 10:49:00 35

原创 计算机组成原理

1 计算机的硬件组成1.1 计算机硬件计算机的硬件系统是指组成一个计算机的实实在在的器件。计算机硬件一般由五部分组成:运算器、控制器、存储器、输入设备、输出设备。1.2 计算机结构-冯洛伊曼结构1 计算机是由运算器、控制器、存储器、输入设备、输出设备组成2 采用2进制形式表示表示数据和指令。冯洛伊曼结构的计算机中,指令与数据均以二进制代码的形式同时存于存储器中,两者在存储器中的地位相同...

2023-06-04 10:46:00 334

原创 常用的组合逻辑电路

1 编码器1.1 编码编码我们可以理解为,根据一定的规则,我们把一个输入A,编码成输出B。比如说ASCII码就是一种编码方式,输入是英文字符,输出是二进制数字。比如字母A的ASCII码为01000001.1.2 集成电路中的编码器编码器的特点:1 输入2^n个,输出n个1.3 普通编码器以4线-2线编码器为例特点:1 四个输入I3、I2、I1、I02 两个输出Y1、Y03...

2023-06-04 07:53:00 1148

原创 k8s集群环境搭建

注:如下文档不是一次性搭建成功的,可能有一些地方ip地址和实际成功的那次地址不一样。首先,我们准备3台虚拟机,配置都是是2核心2.2G内存192.168.3.121 k8s-master192.168.3.133 k8s-node1192.168.3.119 k8s-node2安装之前最好改为固定ip,防止虚拟机启动后ip变化,导致k8s不可用1 修改主机名经过实践...

2023-05-18 22:22:00 19

原创 k8s教程

k8s集群安装见另一篇文章:https://www.cnblogs.com/zhenjingcool/p/17413490.html发现另一专栏讲解k8s,可以做参考:https://blog.csdn.net/qq_38263083/category_11393640.html1 k8s架构图先对一些组件功能做一下简单说明:api server:所有服务访问统一入口control...

2023-05-09 23:43:00 53

原创 docker官方文档解读

官网:https://docs.docker.com/get-started/overview/1 Docker底层原理1.1 docker使用的底层技术首先,需要强调的一点是,目前的容器化技术基于Linux内核的两个重要特性:cgroups 和 Namespace容器技术发展历史:https://blog.csdn.net/Tencent_TEG/article/details/109...

2023-04-18 22:30:00 136

原创 docker安装

1 安装1 添加yum源:yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo2 安装yum install docker-ce3 查看docker版本[root@szj ~]# docker -vDocker version 18.09....

2023-04-17 23:13:00 28

原创 nginx添加ssl模块

背景:之前系统上线的时候不是https部署,现在需要https改造,需要把nginx添加ssl模块既然之前安装的时候没有编译ssl模块,难道需要把nginx卸载重装?其实不需要,看下面步骤1 到之前下载nginx包解压缩后的路径[root@16s9 nginx-1.20.1]# pwd/root/nginx-1.20.1[root@16s9 nginx-1.20.1]#之前ngi...

2023-03-25 23:55:00 133

原创 自制CA证书

参考:https://blog.csdn.net/zheyiw/article/details/889096971 自制CA私钥mkdir my_cacd my_ca/openssl genrsa -des3 -out ca.key 4096执行过程中,会提示你输入密码。随便输入一个就可以。后续步骤会多次设置密码,最好使用同一个密码,避免忘记2 自制CA证书openssl ...

2023-03-25 19:04:00 49

原创 https原理-明文、对称加密、非对称加密、CA

为了保证数据传输过程中的数据安全,目前都使用https协议。https全称:HyperText Transfer Protocol over Secure Socket Layer。其实https不是一个新的东西,我们可以理解为https=http+SSL/TLS。SSL(Secure Socket Layer):安全套接字层协议TLS(Transport Layer Security):传...

2023-03-25 17:05:00 43

原创 PKIX path building failed,SunCertPathBuilderException: unable to find valid certification path to re...

背景:有一个项目,需要调用gitlab的api,开发阶段在windows上进行。开发完成部署到linux中时,当请求gitlab接口的时候报如下错误:2023.03.22 10:30:39.522 ERROR [http-nio-8089-exec-2] org.apache.juli.logging.DirectJDKLog 181 log - Servlet.service() for ...

2023-03-22 17:50:00 150

原创 mybatis官方文档解读

官网:https://mybatis.org/mybatis-3/zh/getting-started.htmlmybatis是一个jar包,我们引入这个jar包到我们的项目中后,可以通过它方便的操作数据库。要是用mybatis,我们只要把mybatis-x.x.x.jar置于我们的CLASSPATH下即可。1 简单示例我们创建一个普通的maven项目,其结构如下所示pom.xml...

2023-02-28 23:28:00 43

原创 springmvc异常处理

1DispatcherServlet的handlerExceptionResolvers在DispatcherServlet初始化过程中,执行如下初始化方法 protected void initStrategies(ApplicationContext context) { initMultipartResolver(context); initL...

2023-02-20 17:44:00 23

原创 mysql explain

explain这个命令来查看SQL语句的执行计划, 查看该SQL语句有没有使用上了索引, 有没有做全表扫描等执行explain后,显示的信息有如下几列id:表示查询中执行select子句或操作表的顺序select_type:查询类型table:正在访问的表partition:匹配的分区type:访问类型possible_keys:可能的索引key:实际使用的索引ref:索引哪...

2022-12-07 20:59:00 12

原创 mysql数据库导入导出

1 源数据库导出数据这一步将导出结构和数据到一个.sql文件中2 导入到空数据库中将上一步导出的.sql文件传到要服务器某路径下,比如/data/sqldata/devself.sql然后在mysql命令行执行如下命令进行导入mysql> tee output.logLogging to file 'output.log'mysql>use genedockdb;...

2022-12-07 20:39:00 14

原创 MVCC多版本并发控制

1 什么是MVCCMVCC,即多版本并发控制。维持一个数据的多个版本,使得读写操作没有冲突。MVCC是为了解决读-写冲突,做到即使有读-写冲突时,也能做到不加锁,非阻塞并发读。在并发读写数据库时,可做到在读操作时不用阻塞写操作,写操作也不用阻塞读操作,提高了数据库并发读写的性能。通过MVCC使得InnoDB事务隔离级别默认达到可重复读(通过MVCC可以在不影响性能的情况下实现可重复读,所以...

2022-12-07 07:57:00 21

原创 select for update

select ..for update用于锁定特定行。默认情况下,执行select*from t_szj where id=1 for update和不加update效果一样,原因是:因为默认情况下InnoDB是自动提交的。所以,执行了select..for update后隐式执行了commit。被锁定的行已经解锁,所以在其他事务中执行更新该行的操作能够成功。如果想要看一下for updat...

2022-12-07 07:42:00 23

原创 事务的ACID特性

参考:https://baijiahao.baidu.com/s?id=1625607423998953705&wfr=spider&for=pcmysql逻辑架构图第一层:处理客户端连接,授权认证等第二层:服务器层,负责查询语句的解析、优化、缓存。第三层:存储引擎,负责数据的存储和提取,事务由存储引擎实现的。ACID(Atomicity原子性,Consisten...

2022-12-07 07:33:00 31

原创 mysql主从同步配置步骤详解

1 介绍主从同步使得数据可以从一个服务器复制到其他服务器上,在复制数据时,一个服务器充当主服务器(master),其余的服务器充当从服务器(slave)。因为复制是异步进行的,所以从服务器不需要一直连接着主服务器,从服务器甚至可以通过拨号断断续续地连接主服务器。通过配置文件,可以指定复制所有的数据库,某个数据库,甚至是某个数据库上的某个表。使用主从同步的好处:提高数据库的性能,在主服务器...

2022-12-06 21:23:00 34

原创 mysql授权管理

1简介权限系统的作用是授予来自某个主机的某个用户可以查询、更新、删除等数据库操作的权限。通过createuser、grant、revoke语句授权权限信息保存在名叫mysql的数据库中,并在数据库启动后加载到内存。认证信息包括用户名@主机名2权限的分级全局:作用于整个mysql实例数据库级:作用于特定数据库数据库对象级:作用于表、视图3查看默认root权限mysql&...

2022-12-04 12:19:00 27

原创 mysql yum安装

首先,mysql分为两种:MariaDB和MySQL.MariaDB遵循GPL,开源。MySQL被Oracle收购,有毕源的可能。这里我们安装的是MySQL其次,安装MySQL的社区版,企业版和社区版区别是,企业版稳定,可以得到官方的技术支持。社区版是企业版的测试版本,出了问题官方不提供支持。1下载rpm包wget http://dev.mysql.com/get/mysql80-co...

2022-12-04 11:52:00 13

原创 ES6之Promise

Promise是ES6的新特性,Promise被定义为一个构造函数Promise//输出ƒ Promise() { [native code] }我们创建一个Promise对象,观察它有哪些属性和方法可以看到:Promise对象有两个属性:状态和结果原型对象上有then()、catch()、finally()等方法构造函数里面有resolve()、reject()等方法...

2022-12-02 14:33:00 20

原创 javascript中的对象

1 创建对象在js中创建对象非常的简单var obj={}这样,我们就创建了一个对象2 对象的继承在ES6之前,javascript对象的继承是通过原型(prototype)来实现的。在ES6之后的继承方式类似于java2.1 方式1 通过prototype创建对象举例var student = { name: 'no_name', height: 1.2,...

2022-12-02 09:46:00 9

原创 javascript函数用法速记

参考:https://www.liaoxuefeng.com/wiki/1022910821149312/1023021087191360在js里,函数是一等公民。函数可以分配给变量函数可以作为参数传递给其他函数函数可以从其他函数返回1 定义函数方式1function abs(x) { if (x >= 0) { return x; } ...

2022-12-01 07:04:00 12

原创 钉钉H5微应用开发指南

我们在这一片文章https://www.cnblogs.com/zhenjingcool/p/16896198.html中对钉钉开放平台进行了简略介绍,钉钉开放平台为我们提供了5种开放能力,即应用开发、工作台开放、群开放、连接平台、智能硬件接入。这里我们详细介绍这5部分中的其中之一:应用开发。而且是应用开发中的H5微应用。1 总概在使用钉钉开放平台的能力开发应用前,请注意:调用钉钉服...

2022-11-16 16:32:00 601

原创 钉钉开放平台解读

官网:https://open.dingtalk.com/document/我们在官网上可以看到钉钉为我们提供的开放能力共有如下5部分应用开发,主要指的是H5微应用和小程序的开发工作台开放,主要指的是对原生工作台进行定制化的开发,使自己的工作台看起来与众不同群开放,指的是机器人、场景群的创建连接平台,指的是连接器的开发智能硬件接入,比如智能门禁、摄像头的接入等等待补充...

2022-11-16 15:54:00 60

原创 钉钉小程序开发指南

钉钉开放平台:https://open.dingtalk.com/钉钉开放文档:https://open.dingtalk.com/document/对于微应用,请参考:https://www.cnblogs.com/zhenjingcool/p/16896396.html1 创建应用首先,我们需要有创建应用的权限,登陆钉钉开放平台,右上角,点击“我的后台”然后点击“应用开发-企业内...

2022-11-15 16:06:00 222

原创 webpack教程

参考:https://blog.csdn.net/qq_43682422/article/details/124054740官网:https://webpack.js.org/1 简介在webpack官网有个图片,形象的展示了webpack的作用webpack是一个模块化打包工具,其主要作用是对我们的项目进行文件归类、处理各个js之间的依赖、合并等操作,减少输出文件数量和大小,这样可以...

2022-11-06 11:28:00 17

原创 vue-element-admin框架学习笔记

0 背景vue-element-admin是一个已高度完成的系统原型,它基于vue框架和elementUI组件库。它使用最新的前端技术栈,内置i18n国际化解决方案、动态路由、权限验证。它可以帮助我们快速搭建企业级中后台系统原型。源码地址:https://github.com/PanJiaChen/vue-element-admin。而且在源码页面的markdown文档中给出了系统预览链接...

2022-10-27 21:21:00 24

原创 vue官方文档解读及拓展

参考:https://cn.vuejs.org/guide/introduction.htmlhttps://blog.csdn.net/weixin_42371679/article/details/112408800vue是一个js库,它基于标准html、css和js,并提供了一套声明式的、组件化的编程模型,可高效的开发用户界面。简单应用举例我们只需引入vue.min.js就可以使...

2022-10-26 06:55:00 70

原创 深入理解linux内核第三版(三)中断和异常

中断:也叫异步中断,是由外设产生的。异常:也叫同步中断,是由CPU产生的,是指令执行过程中产生的。中断信号的作用:中断信号提供了一种特殊的方式,使处理器转而去运行正常控制流之外的代码。0 硬中断和软中断硬件中断面对CPU,软中断对内核,信号对某个进程中断。硬件中断是由外设引起的,软中断是执行中断指令产生的硬中断的中断号是由中断控制器提供的;软中断是的中断号是由int指令直接给出的比如...

2022-10-06 09:24:00 22

原创 浏览器原理

参考:https://web.dev/howbrowserswork/http://taligarsiel.com/Projects/howbrowserswork1.htmhttps://www.cnblogs.com/zhuanzhuruyi/p/6496276.html1 浏览器的作用浏览器的主要作用是呈现web资源,而这些web资源是通过请求一个服务器获得。web资源可以是ht...

2022-10-01 00:22:00 13

原创 git使用教程

1 git基础1.1 初始化git仓库git仓库也就是在git管理下的代码的版本库和一些git配置存放的地方,比如.git文件夹初始化git仓库有两种方式:1、将尚未进行版本控制的本地目录转换为git仓库;2、从其他服务器克隆一个已存在的git仓库。1.1.1 在已存在的目录中初始化仓库进入一个目录执行$ git init该命令将在当前路径下创建一个名为 .git 的子目录,这...

2022-09-21 22:20:00 88

空空如也

空空如也

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

TA关注的人

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