为了讲多路复用,当然还是要跟风,采用鞭尸的思路,先讲讲传统的网络 IO 的弊端,用拉踩的方式捧起多路复用 IO 的优势。 为了方便理解,以下所有代码都是伪代码,知道其表达的意思即可。 Let's go 阻塞 IO 服务端为了处理客户端的连接和请求的数据,写了如下代码。 listenfd = sock ...
分类:
其他好文 时间:
2021-03-30 13:34:02
阅读次数:
0
背景 Read the fucking source code! --By 鲁迅 A picture is worth a thousand words. --By 高尔基 说明: KVM版本:5.9.1 QEMU版本:5.0.0 工具:Source Insight 3.5, Visio 文章同步在 ...
分类:
系统相关 时间:
2021-03-30 13:07:40
阅读次数:
0
一.定义 进程:具有独立功能的程序在某个数据集合上执行一次的过程。 线程:是进程内一个执行实体或执行单元。 比进程更小的能独立运行的基本单位,是操作系统能够进行运算调度的最小单位。 协程:本质上是一种控制抽象,简洁优雅的实现一些控制行为,在协程中,控制行为可从当前执行上下文跳转到程序其他位置,并且可 ...
分类:
编程语言 时间:
2021-03-29 12:29:41
阅读次数:
0
前提环境: Windows 7使用 360系统修复完成; 安装IE11浏览器; 设置DNS为4.2.2.2。 安装: 1. 在微软官网下载并安装OneDrive; 2.打开OneDrive,登录微软账号; 3.选择“个人”或者“工作或学校”,这里我选的“个人” ; 4.输入密码; 5.选择同步文件夹 ...
主从同步 单节点的 MySQL 肯定不适用于高并发的生产环境,为了提高性能,我们至少要做到读写分离,主库可读可写,从库只读。这里最关键的技术点就是主从同步。 我的 MySQL 配置文件如下(8.0.22): [mysqld] server_id = 1 # 机器ID,集群下唯一 pid-file = ...
分类:
数据库 时间:
2021-03-29 11:44:59
阅读次数:
0
一.首先确保宿主机时间没有问题1. 设置时区timedatectl set-timezone Asia/Shanghai 2. 设置时钟同步systemctl enable chronydsystemctl start chronyd 二. 定制Dockerfile添加时区 $ cat Docker ...
分类:
其他好文 时间:
2021-03-26 15:27:04
阅读次数:
0
###1.volatile是Java虚拟机提供的轻量级同步机制 1.1保证可见性(一个线程对主内存中变量的修改,其他线程会马上收到通知) 1.2不保证原子性 1.3禁止指令重排 ###2.JMM(Java Memory Model)(Java内存模型) JMM本身是一种抽象的概念并不真实存在,它描述 ...
分类:
其他好文 时间:
2021-03-18 14:39:46
阅读次数:
0
1、synchronized作用于静态方法和非静态方法的区别 非静态方法:给对象加锁(可以理解为给这个对象的内存上锁,注意 只是这块内存,其他同类对象都会有各自的内存锁),这时候在其他一个以上线程中执行该对象的这个同步方法(注意:是该对象)就会产生互斥静态方法: 相当于在类上加锁(*.class位于 ...
分类:
编程语言 时间:
2021-03-18 14:34:08
阅读次数:
0
看到一篇总结的很好的一篇博文,于是做个小结 redis大多数时候是单线程运行的(同一个时间只占用一个CPU,只有一个指令在运行,即不可能并行读写),但是redis性能还是很好,原因如下: redis使用了 多路I/O复用机制(详看我的另一篇博客多路复用机制),处理客户端请求时,不会阻塞主线程。red ...
分类:
编程语言 时间:
2021-03-18 14:33:32
阅读次数:
0
##背景 昨天要git push一些代码更新到我的doris开发分支时被rejected,显示non-fast-forward冲突。 ##原因 主要还是因为一些在网页端的更新没有及时和本地的代码更新同步的原因。 ##解决办法 解决方法: git fetch origin 分支名称 获取远程分支deb ...
分类:
其他好文 时间:
2021-03-18 14:31:26
阅读次数:
0