
计算机基础
文章平均质量分 94
Slayer_Zhao
full-stack programmer
展开
-
HTTP/3 原理实战
2015 年 HTTP/2 标准发表后,大多数主流浏览器也于当年年底支持该标准。此后,凭借着多路复用、头部压缩、服务器推送等优势,HTTP/2 得到了越来越多开发者的青睐。不知不觉的 HTTP 已经发展到了第三代,鹅厂也紧跟技术潮流,很多项目也在逐渐使用 HTTP/3。本文基于兴趣部落接入 HTTP/3 的实践,聊一聊 HTTP/3 的原理以及业务接入的方式。1. HTTP/3 原理1.1 HTTP 历史在介绍 HTTP/3 之前,我们先简单看下 HTTP 的历史,了解下 HTTP/3 出现的背转载 2021-01-05 11:43:46 · 376 阅读 · 0 评论 -
浅谈领域驱动设计(DDD)
什么是DDD软件开发不是一蹴而就的事情,我们不可能在不了解产品(或行业领域)的前提下进行软件开发,在开发前,通常需要进行大量的业务知识梳理,而后到达软件设计的层面,最后才是开发。而在业务知识梳理的过程中,我们必然会形成某个领域知识,根据领域知识来一步步驱动软件设计,就是领域驱动设计的基本概念。听起来这和传统意义的软件开发没啥区别,只是换了点新鲜的名词而已,其实不然。软件开发 VS DDD一般软件设计或者说软件开发分两种:瀑布式,敏捷式。前者一般是项目经理经过大量的业务分析后,会基于现有需转载 2020-08-25 10:57:36 · 519 阅读 · 1 评论 -
详解计算机中的“文件系统“
前言不多 BB,直接上「硬菜」。正文文件系统的基本组成文件系统是操作系统中负责管理持久数据的子系统,说简单点,就是负责把用户的文件存到磁盘硬件中,因为即使计算机断电了,磁盘里的数据并不会丢失,所以可以持久化的保存文件。文件系统的基本数据单位是文件,它的目的是对磁盘上的文件进行组织管理,那组织的方式不同,就会形成不同的文件系统。Linux 最经典的一句话是:「一切皆文件」,不仅普通的文件和目录,就连块设备、管道、socket 等,也都是统一交给文件系统管理的。Linux 文件系转载 2020-08-25 10:46:04 · 1683 阅读 · 0 评论 -
【详细解读】计算机操作系统知识点总览
1解释一下什么是操作系统操作系统是运行在计算机上最重要的一种软件,它管理计算机的资源和进程以及所有的硬件和软件。它为计算机硬件和软件提供了一种中间层通常情况下,计算机上会运行着许多应用程序,它们都需要对内存和 CPU 进行交互,操作系统的目的就是为了保证这些访问和交互能够准确无误的进行。2解释一下操作系统的主要目的是什么操作系统是一种软件,它的主要目的有三种 管理计算机资源,这些资源包括 CPU、内存、磁盘驱动器、打印机等。 提供一种图形界面,就像我们前面...转载 2020-05-17 09:03:03 · 2661 阅读 · 0 评论 -
计算机知识梳理——缓存穿透、缓存击穿和缓存雪崩的区别和解决方案
https://blog.youkuaiyun.com/kongtiao5/article/details/82771694一、缓存处理流程前台请求,后台先从缓存中取数据,取到直接返回结果,取不到时从数据库中取,数据库取到更新缓存,并返回结果,数据库也没取到,那直接返回空结果。二、缓存穿透描述:缓存穿透是指缓存和数据库中都没有的...原创 2019-09-23 16:12:02 · 1322 阅读 · 0 评论 -
计算机知识梳理——线程通信方式、进程通信方式
一、进程间的通信方式# 管道( pipe ):管道是一种半双工的通信方式,数据只能单向流动,而且只能在具有亲缘关系的进程间使用。进程的亲缘关系通常是指父子进程关系。# 有名管道 (namedpipe) : 有名管道也是半双工的通信方式,但是它允许无亲缘关系进程间的通信。# 信号量(semophore ) : 信号量是一个计数器,可以用来控制多个进程对共享资源的访问。它常作为一种锁机...原创 2019-09-19 14:15:18 · 303 阅读 · 0 评论 -
计算机知识梳理——什么是AVL树
1、AVL树的定义AVL树又称平衡二叉搜索树,它能保证二叉树高度相对平衡,尽量降低二叉树的高度,提高搜索效率2、AVL树的特点(1)AVL的左右子树高度之差的绝对值不超过1(2)树中的每个左子树和右子树都是AVL树(3)每个节点都有一个平衡因子,任一节点的平衡因子只能是(-1、0、1)。(每个节点的平衡因子等于右子树的高度减去左子 树的高度 )(4)平衡二叉树的高度和结点数量之...原创 2019-09-19 14:07:54 · 3746 阅读 · 0 评论 -
计算机基础知识梳理——HTTP和HTTPS的区别
1、https协议需要到CA申请证书,一般免费证书较少,因而需要一定费用。2、http是超文本传输协议,信息是明文传输,https则是具有安全性的ssl/tls加密传输协议。3、http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。4、http的连接很简单,是无状态的;HTTPS协议是...原创 2019-09-18 16:20:00 · 988 阅读 · 0 评论 -
计算机基础知识梳理——HTTP 1.0 1.1 2.0的区别
http 1.0 无状态、无连接 http 1.1 持久连接 请求管道化 增加缓存处理(新的字段如cache-control) 增加Host字段、支持断点传输等(把文件分成几部分) http 2.0 二进制分帧 多路复用(或连接共享) 头部压缩 服务器推送 https://...原创 2019-09-18 12:50:21 · 435 阅读 · 0 评论 -
计算机基础知识梳理——TCP和UDP的区别
UDP 是无连接的,即发送数据之前不需要建立连接。UDP使用尽最大努力交付,即不保证可靠交付,同时也不使用拥塞控制。UDP 是面向报文的。UDP 没有拥塞控制,很适合多媒体通信的要求。UDP 支持一对一、一对多、多对一和多对多的交互通信。UDP 的首部开销小,只有 8 个字节。TCP 是面向连接的运输层协议。每一条 TCP 连接只能有两个端点(endpoint),每一条 TCP连接只能...原创 2019-09-17 17:04:55 · 202 阅读 · 0 评论 -
计算机基础知识梳理——死锁
相关博客:https://blog.youkuaiyun.com/guaiguaihenguai/article/details/80303835原创 2019-09-16 20:55:49 · 236 阅读 · 0 评论 -
计算机基础知识梳理——进程和线程的区别
进程与线程的区别1.进程是资源分配最小单位,线程是任务调度和执行的最小单位;2.进程有自己独立的地址空间,每启动一个进程,系统都会为其分配地址空间,建立数据表来维护代码段、堆栈段和数据段,线程没有独立的地址空间,它使用相同的地址空间共享数据;3.在操作系统中能同时运行多个进程(程序);而在同一个进程(程序)中有多个线程同时执行(通过CPU调度,在每个时间片中只有一个线程执行)4.C...原创 2019-09-07 14:16:54 · 630 阅读 · 0 评论 -
计算机基础知识梳理——三次握手四次挥手
参考博客:https://blog.youkuaiyun.com/qq_38950316/article/details/81087809三次握手过程理解第一次握手:建立连接时,客户端发送syn包(syn=j)到服务器,并进入SYN_SENT状态,等待服务器确认;SYN:同步序列编号(Synchronize Sequence Numbers)。第二次握手:服务器收到syn包,必须确认客户的SY...原创 2019-09-06 19:07:08 · 530 阅读 · 0 评论