01.Alpine编译glibc

概要 本文档采用glibc2.28版本作为示例,模拟内网环境无法访问github等开源社区 为精简docker容器镜像,采用Alpine镜像,需要手动编译glibc源代码 制作编译好的glibc二进制文件 获取glibc二进制文件构建工具 # 内网环境可下载该工具包手动上传到服务器 git pull

面试官:说一说如何优雅的关闭线程池,我:shutdownNow,面试官:粗鲁!

写在开头 面试官:“小伙子,线程池使用过吗,来聊一聊它吧!” 我:“好的,然后巴拉巴拉一顿输出之前看过的build哥线程池十八问...” 面试官满意的点了点头,紧接着问道:“那你知道如何优雅的关闭线程池吗?” 我:“知道知道,直接调用shutdownNow()方法就好了呀!” 面试官脸色一变,微怒道

几个公司wiki知识库调研和感悟

@目录需求背景具体实现经验&吐槽小结 需求背景 公司准备做一个知识库,我这边调研了几个项目,也看了篇别人的经验文章传送门,如下 第一个是我们耳熟能详的confluence,但是好想要收费,先搁置 第二个是mindoc,是一个小型的开源项目,可以docker跑项目,上传文件直接映射到本地,使可以用my

pandas模块

为什么要学习pandas? numpy已经可以帮助我们进行数据的处理了,那么学习pandas的目的是什么呢? numpy能够帮助我们处理的是数值型的数据,当然在数据分析中除了数值型的数据还有好多其他类型的数据(字符串,时间序列),那么pandas就可以帮我们很好的处理除了数值型的其他数据! 什么是p

QGIS开发笔记(三):Windows安装版二次开发环境搭建(下):将QGis融入QtDemo,添加QGis并加载tif遥感图的Demo

前言 使用QGis的目的是进行二次开发,或者说是融入我们的应用(无人车、无人船、无人机),本片描述搭建QGis二次基础开发环境,由于实在是太长了,进行了分篇: 上半部分:主要是安装好后,使用QtCreator可以使用QGIs的apps下的Qt使用对应的编译器编译不带qgis的空工程。 下半部分:在上

智能指针一些实现分析

智能指针一些实现分析 提供值传递但是指针语义的功能。通过指针占用并且对管理对象,在离开作用域时释放该对象。 在使用上还有另外一个很好用的功能,精简了代码复杂度,管理的对象类可以省略以下的函数 默认构造函数 复制构造函数 复制赋值函数 比如有一个类 Fd 用于管理 fd ,并且拥有 fd 的所有权,所

springboot~封装依赖引用包jar还是pom,哪种更规范

将多个第三方包封装成一个项目后,如果你的目的是让其他开发人员可以直接引用这些依赖,一般来说有两种常见的方式: 打成JAR包:将封装好的项目编译打包成JAR文件,其他开发人员可以将这个JAR文件添加到他们的项目中,并在项目的构建工具(比如Maven)中配置该JAR作为依赖。这样做的好处是简单直接,其他

将编译过的C++库迅速部署在Visual Studio新项目中

本文介绍在Visual Studio中,通过属性表,使得一个新建解决方案中的项目可以快速配置已有解决方案的项目中各类已编译好的C++第三方库的方法~

记一次 .NET某企业数字化平台 崩溃分析

一:背景 1. 讲故事 前些天群里有一个朋友说他们软件会偶发崩溃,想分析看看是怎么回事,所幸的是自己会抓dump文件,有了dump就比较好分析了,接下来我们开始吧。 二:WinDbg 分析 1. 程序为什么会崩溃 windbg 还是非常强大的,当你双击打开的时候会自动帮你定位过去展示崩溃时刻的寄存器

计算机网络微课堂-课程概述

​​ ‍ ‍ 课程介绍 本专栏主要是 B 站课程《计算机网络微课堂》的文字版,作者是湖南科技大学的老师。 B 站地址:https://www.bilibili.com/video/BV1c4411d7jb 该课程好评如潮,包含理论课,实验课,考研真题分析课,在 B 站上播放量第一: ​​ ‍ ‍ 部

IceRPC之深入理解调度管道->快乐的RPC

作者引言 很高兴啊,我们来到了IceRPC之深入理解调度管道->快乐的RPC,为上篇的续篇,深入理解常见的调度类型, 基础引导,有点小压力,打好基础,才能让自已不在迷茫,快乐的畅游世界。 传入请求 了解如何处理传入的请求 接收传入的请求 调度器的调度方法接受传入的请求。该传入请求是由连接,在收到来自

IceRPC之调度管道->快乐的RPC

作者引言 很高兴啊,我们来到了IceRPC之调度管道->快乐的RPC, 基础引导,有点小压力,打好基础,才能让自已不在迷茫,快乐的畅游世界。 调度管道 Dispatch pipeline 了解如何接受请求并返回响应。 定义 接受/完成请求,并返回响应的过程称为调度。 调度通常由服务器连接创建: 服务

QGIS开发笔记(二):Windows安装版二次开发环境搭建(上):安装OSGeo4W运行依赖其Qt的基础环境Demo

前言 使用QGis的目的是进行二次开发,或者说是融入我们的应用(无人车、无人船、无人机),本片描述搭建QGis二次基础开发环境,由于实在是太长了,进行了分篇: 上半部分:主要是安装好后,使用QtCreator可以使用QGIs的apps下的Qt使用对应的编译器编译不带qgis的空工程。 下半部分:在上

mysql-8.4.0解压版安装记录

MySQL 8.4.0解压版安装记录 这几天,安装最新版mysql 8.4的时候,遇到了不少问题,网上的教程大多数都是旧版本的,也安装不成功。 参考了大量教程后,经过自己的摸索终于装好了,这里记录一下。 我下载的是8.4.0 LTS MySQL :: Download MySQL Community

一句话速通银行家算法

一句话速通银行家算法: try 分配资源, if safe() then continue; else 归还资源 并且 sleep(当前任务). 好,本文结束。 hh其实并没有,接下来我将解释这句话以及银行家算法究竟是个啥。 ps: 银行家算法是try assign(), 而还有个锁的api是try

程序设计思路-球连球组成的群

编码设计有很多思路,都是在简化映射实际问题时遇到的问题。 之前和别人交流,得到一句“把它放在同一个地方好维护”,相同的功能只出现在一个地方。就会出现代码的聚合设计,也就是一种通用的功能索引,或者说面向对象的思想。 首先程序可以被观察成,计算、存储、缓存、链接,这是代码打交道的四个方面。由它组成了一个

Kubernetes:kubelet 源码分析之探针

0. 前言 kubernetes 提供三种探针,配置探针(Liveness),就绪探针(Readiness)和启动(Startup)探针判断容器健康状态。其中,存活探针确定什么时候重启容器,就绪探针确定容器何时准备好接受流量请求,启动探针判断应用容器何时启动。 本文通过分析 kubelet 源码了解

(1)semantic-kernel入门课程

(1)semantic-kernel入门课程 获取OpenAI在线API 由于在国内的限制,我们并没有办法直接访问OpenAI,所以下面的教程我们会推荐使用https://api.token-ai.cn,然后您需要在这个网站中注册一个账号,并且创建一个令牌(最好是设置无限额度和无过期时间),创建好的

『手撕Vue-CLI』添加帮助和版本号

前言 经过上一篇『手撕Vue-CLI』编码规范检查之后,手撕 Vue-CLI 已经进阶到了代码规范检查这一步,已经将基本的工程搭建好了,然后代码规范约束也已经加入了,并且将 nue-cli 指令绑定到了全局当中,可以在任何地方使用了。 正文 接下来这篇文章呢,就要来实现一下大多数的命令行工具都会有的

『手撕Vue-CLI』编码规范检查

前言 这篇为什么是编码规范检查呢?因为这是一个很重要的环节,一个好的编码规范可以让代码更加清晰易读,在官方的 VUE-CLI 也是有着很好的编码规范的,所以我也要加入这个环节。 其实不管在哪个项目中,编码规范都是很重要的,像我们平日里的项目开发当中,我们也会使用 ESLint 来进行代码规范检查。