自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 git lfs管理大文件

git lfs管理大文件

2022-12-14 19:40:39 1771 1

原创 2022 Spring MIT6.824 Lab MapReduce

2022 Spring MIT6.824 Lab MapReduce

2022-10-12 16:27:22 1280

原创 2020 MIT6.s081 Lab networking

2020 MIT6.s081 Lab networking

2022-09-27 15:22:23 1022

原创 2020 MIT6.s081 Lab mmap

2020 MIT6.s081 Lab mmap

2022-09-23 15:20:46 1086 3

原创 2020 MIT6.s081 Lab file system

2020 MIT6.s081 Lab file system

2022-09-18 13:42:49 919

原创 BufferCache与PageCache

BufferCache PageCache

2022-09-15 18:35:08 663

原创 2020 MIT6.s081 Lab Locks

2020 MIT6.s081 Lab Locks

2022-09-07 16:58:14 931 1

原创 2020 MIT6.s081 Lab: Multithreading

2020 MIT6.s081 Lab: Multithreading

2022-08-09 14:15:36 1054 1

原创 2020 MIT6.s081 Lab: Copy-on-Write Fork for xv6

2020 MIT6.s081 Lab: Copy-on-Write Fork for xv6

2022-08-05 14:26:45 541

原创 2020 MIT6.s081 Lab: xv6 lazy page allocation

2020 MIT6.s081 Lab: xv6 lazy page allocation

2022-08-01 14:21:11 931 5

原创 2020 MIT6.s081 Page Fault & Lazy Page Allocation学习笔记

2020 MIT6.s081 Page Fault & Lazy Page Allocation学习笔记

2022-07-26 14:46:07 338

原创 2020 mit6.s081 os Lab: xv6 traps

2020 mit6.s081 os Lab: xv6 traps

2022-07-25 17:38:02 1284 2

原创 2020 MIT6.s081 XV6操作系统调试

2020 MIT6.s081 XV6操作系统调试

2022-07-21 14:34:08 839 1

原创 2020 MIT6.s081 os Lab: page tables

2020 MIT6.s081 os lab page tables

2022-07-21 14:25:46 677 1

原创 2020 MIT6.s081 os Lab: system calls

2020 MIT6.s081 os Lab: system calls

2022-07-21 14:20:10 478

原创 2020 MIT6.s081 os Lab: Xv6 and Unix utilities

Lab: Xv6 and Unix utilities

2022-07-21 14:14:54 497

原创 2020 MIT6.s081 Operating System Engineering XV6 Lab概览

MIT6.s081 Operating System Engineering XV6 Lab概览

2022-07-21 13:56:05 1015

原创 2290. Minimum Obstacle Removal to Reach Corner

文章目录解题代码解题思路英文题目链接中文题目链接You are given a 0-indexed 2D integer array grid of size m x n. Each cell has one of two values:0 represents an empty cell,1 represents an obstacle that may be removed.You can move up, down, left, or right from and to an empty

2022-05-29 17:52:04 276

原创 数据结构与算法:单调栈(monotonic stack)

文章目录背景小窍门LeftBigger例子代码LeftSmaller例子代码RightBigger例子代码RightSmaller例子代码测试LeetCode题目背景我们经常会遇到这种类型的问题:给定一个数组,针对数组中每个元素,找出其左边第一个比它大的数(LeftBigger);给定一个数组,针对数组中每个元素,找出其左边第一个比它小的数(LeftSmaller);给定一个数组,针对数组中每个元素,找出其右边第一个比它大的数(RightBigger);给定一个数组,针对数组中每个元素,找出其

2022-05-29 17:32:47 653 1

原创 # 329. Longest Increasing Path in a Matrix

文章目录329. Longest Increasing Path in a Matrix解题代码解题思路329. Longest Increasing Path in a Matrix英文题目链接中文题目链接Given an m x n integers matrix, return the length of the longest increasing path in matrix.From each cell, you can either move in four directions:

2022-05-19 10:30:09 284

原创 Permutation 和 Combination

文章目录Permutation代码代码核心思路Combination代码代码核心思路总结Permutation 和 Combination是算法中非常常见的两种数据的排列方式,也就是数学中的排列和组合。Permutation: 排列,指从给定个数的元素中取出指定个数的元素进行排序。Combination: 组合,指从给定个数的元素中仅仅取出指定个数的元素,不考虑排序。本文的主要目的在于总结在算法题中,这两种类型题目的做题模板。虽然题目变化可能是多样的,但是万变不离其宗。Permutation以

2022-05-10 21:32:26 1879

原创 Docker buildx 安装

文章目录简介开启实验室特性安装docker buildx安装模拟器Build多平台image问题及解决方法问题一问题二参考链接简介Docker buildx是docker的一个插件,它包含如下作用:支持[Moby BuildKit](https://github.com/moby/buildkit) 的所有特性;可以跨CPU架构编译镜像;可以在跨多节点同时编译镜像。本文主要介绍其在Linux上的安装过程。备注:在Windows和macOs上,Docker Desktop已经包含了Docke

2022-04-25 15:41:10 16052 2

原创 《软技能:代码之外的生存指南》读书笔记

《软技能:代码之外的生存指南》读书笔记这本书不仅仅适合程序员看,任何专业任何职业的人都能看,因为里边仅涉及少量专业知识。书本简介该书一共分为7大章,分别为职业、自我营销、学习、生产力、理财、健身、精神。每章之下进行进一步的细分,共分为71小章,涵盖职业发展、人际交往、就业选择、理财、健身、提升影响力、爱情、提升生产力等各个方面。书籍分类职场鸡汤自我成长收获本书中涵盖内容较多,这里我将自己感触较深的地方进行介绍。自我营销如果你一直默默无闻,你的成就不为人知的话,即使你是团队中最聪

2022-04-16 19:29:16 2472

原创 Linux逻辑卷、物理卷、卷组常用命令

文章目录物理卷卷组逻辑卷创建顺序物理卷物理卷可以对应位磁盘的分区。与物理卷相关的命令为:$ fdisk -l$ pvchange $ pvck $ pvcreate $ pvdisplay $ pvmove $ pvremove $ pvresize $ pvs $ pvscan卷组一个卷组可以包含多个物理卷,卷组相当于是对多个物理卷概念的进一步封装。与卷则相关的命令为:(注:输入vg之后,按下tab键即可)[root@node4 ~]

2022-04-10 17:01:06 2778

原创 卷组扩容、逻辑卷扩容

背景当前磁盘可用空间为200G左右,但是实际可用的只有100G。[root@node4 ~]# fdisk -lDisk /dev/sda: 214.7 GB, 214748364800 bytes, 419430400 sectorsUnits = sectors of 1 * 512 = 512 bytesSector size (logical/physical): 512 bytes / 512 bytesI/O size (minimum/optimal): 512 bytes /

2022-04-10 16:58:17 1514

原创 磁盘空间管理

文章目录解决方法一解决方法二恢复增大容量磁盘空间不够了,于是查看当前机器上一共磁盘空间是多少。输入相关的命令发现,当前磁盘一共是108G的大小。$ fdisk -lDisk /dev/sda: 107.4 GB, 107374182400 bytes, 209715200 sectors输入df -h,将所有挂载的磁盘空间相加,发现只有70G左右的空间。因此,还有40G的空间未使用。查看系统磁盘的分区和使用情况。发现/dev/sda5的下的40G空间还未被使用。[root@k8s-ma

2022-04-10 16:52:22 1007

原创 Linux的长连接设置

Linux长连接设置文章目录Linux长连接设置背景解决方法应用层Bash超时设置openssh-servers 和 openssh-clientsvsftpdTCP 层链路层背景你可能有以下疑问:有时候,会遇到ssh连接到一台远程服务器,但是在一定时间时候之后,会自动断开连接,那么,如何为SSH、vsftpd(Very Secure FTP Daemon)、shell 等延长auto-session超时时间呢?针对ssh、ftp、shell和network,有哪些可以配置的session ti

2022-03-29 10:54:52 3826

原创 slf4j log4j 和 reload4j

以下内容引用自官网slf4j-log4j12-1.7.36.jarBinding/provider for log4j version 1.2, a widely used logging framework. Given that log4j 1.x has been declared EOL in 2015 and again in 2022, as of SLF4J 1.7.35, the slf4j-log4j module automatically redirects to the slf

2022-03-22 23:31:56 6562 4

原创 Bridging legacy APIs 桥接遗留API

Bridging legacy APIs 桥接遗留APIslf4j官网参考资料问题在写项目的时候,可能会遇到这种情况:项目依赖很多包,有的包基于logging api,有的包基于slf4j接口,即大家用的日志包各不相同,这种情况下,该怎么办?解决方法slf4j提供了桥接模块(bridge modules),该模块可以将对log4j、JCL(Jakarta Commons Logging,也是一种日志接口)、java.util.logging的接口调用,重定向至slf4j接口。如下图所示:Th

2022-03-22 23:20:57 186

原创 Maven包依赖scope

Maven包依赖scopecompile,默认范围,表示在编译、测试、运行阶段都需要这个依赖;provided,在编译和测试时需要,在运行时不需要这个包,(一般是指编译时容器已经提供了这个包);runtime,在编译阶段不需要这个包,但是在测试和运行时需要这个依赖;test,只在测试时需要这个包;system,在编译和测试时需要,与本地环境关联,可移植性比较差;查看包的scope借助如下两个命令可看到包的scope范围。mvn dependency:list # 所有依赖包以列表形式存在

2022-03-22 22:52:36 148

原创 Slf4j、log4j、logback介绍

Slf4j、log4j、logback介绍简介下图来源于slf4j官网,从图中来看,可以得到如下信息:slf4j是接口;log4j、logback、java.util.logging、slf4j-simple、slf4j-nop是slf4j接口的一种的实现;从图片的第三行观察可以发现(通过图表的颜色进行区分):logback、slf4j-simple、slf4j-nop直接原生实现了slf4j的接口;log4j、java.util.logging没有直接实现slf4j接口,所以需要的适配类

2022-03-22 22:49:33 2515

原创 Maven Dependency mediation(依赖仲裁原理)

Maven依赖仲裁原理Dependency mediation - this determines what version of a dependency will be used when multiple versions of an artifact are encountered. Currently, Maven 2.0 only supports using the “nearest definition” which means that it will use the version

2022-03-22 22:36:41 221

原创 C++ 条件变量使用与解释

第九章 使用C++开发一个半同步半异步线程池对条件变量的理解一直比较差,这里找到了一个比较好的解释。注:以下内容摘抄至《深入应用C++代码》第9章。Take函数void Task(std::list<T>& list) { std::unique_lock<std::mutex> locker(m_mutex); m_notEmpty.wait(locker, [this]{return m_needStop || NotEmpty();}) if (m_ne

2022-02-17 21:42:39 299

原创 【学习笔记】第8章 Linux共享库的组织

第8章 Linux共享库的组织注:以下内容摘录自《程序员的自我修养》SO-NAME: libname.so.x.y.z 其中x表示主版本号,y表示次版本号,z表示发布版本号。不同的主版本号可能导致程序不兼容,相同的主版本号,不同的次版本号之间兼容。主版本号表示库的重大升级此版本号表示库的增量升级,即保存已有的接口符号不变,再增加一些新的接口符号。在主版本号相同的情况下,高的次版本号的库向后兼容低的次版本号的库。发布版本号表示库的一些错误的修正、性能的改进等。ldconfig 当系统

2022-01-09 16:55:42 369

原创 BookKeeper开启关闭AutoRecovery原理

BookKeeper开启关闭AutoRecovery原理相关命令注:以下命令对整个集群有效(在集群中任意一台节点执行即可)。# 停止autorecovery$ bin/bookkeeper shell autorecovery -disable# 开启autorecovery$ bin/bookkeeper shell autorecovery -enable原理本质就是客户端向zk 集群中是否存在 /ledgers/underreplication/disable 节点,如果存在

2021-12-27 15:50:41 620

原创 BookKeeper AutoRecovery

BookKeeper AutoRecovery背景版本:BookKeeper版本为4.12.0(Pulsar 2.7.0的内置版本)Recovery主要针对的场景是:当集群中有部分bookie节点因异常原因宕机,此时我们恢复该节点上存储的数据。BookKeeper提供了两种数据恢复方式,一种是手动恢复(Manual recovery),一种是自动恢复(AutoRecovery)。Manual Recovery如果集群中未开启AutoRecovery的功能,则用户可用手动恢复。手动恢复

2021-11-24 17:42:23 1359

原创 df -h 卡住

df -h 卡住背景输入df -h,进程卡住不返回;输入strace df -h,发现进程在访问一个目录时不动了stat(xxx)解决方法查看挂载目录$ nfsstat -m/var/log from xx.xx.xx.xx:/app/logFlagsxxxxx卸载挂载目录$ umount -lf xx.xx.xx.xx:/app/log验证是否成功$ nfsstat -m$ df -h # 成功执行原因可能时nfs服务器或者客户端有问题,导致n

2021-11-23 18:30:28 761

原创 《代码整洁之道》Clean Code第三章读书笔记

第三章 函数自顶向下阅读代码如果单纯使用switch语句,每次增加新case时,需要在原来代码的基础上增加新的case。这违反了单一权责原则(因为有很多修改它的理由),以及开放闭合原则(每当添加新类型时,就必须修改原来的函数)。解决方法是将switch语句埋藏到抽象工厂底下(由下面的代码片段一变成再下面的代码片段二)。public Money calculatePay(Employee e) throws InvalidEmployeeType { switch (e.type)

2021-11-20 18:00:47 302

原创 Pulsar: Please check your java.security.login.auth.config (=null) for section header: PulsarBroker

背景pulsar集群版本为2.7.0pulsar配置了基于kerberos的安全认证在conf/broker.conf文件里配置了saslJaasBrokerSectionName=MQBroker在jaas文件中部分配置如下:MQBroker { com.sun.security.auth.module.Krb5LoginModule required useKeyTab=true storeKey=true useTicketCache=false keyTa

2021-11-08 21:42:07 1335

原创 Pulsar: No such ledger exists on Metadata Server

背景本地的一个Pulsar集群(版本为2.7.0);为topic设置了retention为半个小时;一个flink-pulsar-source的connnector,一个pulsar的producer;问题当producer断掉后,过了一段时间,broker报错如下:06:13:39.598 [bookkeeper-ml-workers-OrderedExecutor-7-0] ERROR org.apache.bookkeeper.mledger.impl.ManagedLedgerI

2021-11-04 21:26:04 1290

空空如也

空空如也

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

TA关注的人

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