![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Linux
苦逼程序猿BOB
我不生产知识,我只是知识的搬运工~
展开
-
记一次容器中Java线程池异常
记一次容器中Java线程池异常分析过程:1、查看日志2、分析代码3、是否是环境问题4、 测试环境复现:今天下午测试报给我一个问题,说测试环境中某个功能经常执行到一半就没结果了。到测试环境查看数据库记录,发现确实如此,该任务执行开始之后没有更新后续的任务状态,而该任务的执行流程并不复杂,只是使用了Java的 ThreadPoolExecutor来执行一个延时任务。分析过程:1、查看日志在测试环境中,应用打印的日志比较奇怪,某些时候线程池执行任务可以正常结束,某些时候线程池的线程日志打印到一半就戛然而止原创 2020-09-10 08:51:39 · 599 阅读 · 0 评论 -
动态链接库、静态链接库
毕业后一直没从事C和C++方向的开发,对此类概念逐渐疏远,最近看一些操作系统和Golang相关知识时,对这个概念想深入研究一番,正好看到一篇比较不错的帖子,截取转载过来,并附加自己的一些理解:原帖地址:C++静态库与动态库详解什么是库库是写好的现有的,成熟的,可以复用的代码。现实中每个程序都要依赖很多基础的底层库,不可能每个人的代码都从零开始,因此库的存在意义非同寻常。本质上来说库是一种可执行代码的二进制形式,可以被操作系统载入内存执行。库有两种:静态库(.a、.lib)和动态库(.so、.dll)转载 2020-08-24 16:30:09 · 517 阅读 · 0 评论 -
Linux Cgroups 深入理解
cgroups 是Linux内核提供的一种可以限制单个进程或者多个进程所使用资源的机制,可以对 cpu,内存等资源实现精细化的控制,目前越来越火的轻量级容器 Docker 就使用了 cgroups 提供的资源限制能力来完成cpu,内存等部分的资源控制。另外,开发者也可以使用 cgroups 提供的精细化控制能力,限制某一个或者某一组进程的资源使用。比如在一个既部署了前端 web 服务,也部署了后端计算模块的八核服务器上,可以使用 cgroups 限制 web server 仅可以使用其中的六个核,把剩下的原创 2020-07-16 10:21:33 · 912 阅读 · 0 评论 -
Linux Bind Mount 和 Mount Propagation
文章目录什么是绑定挂载Shared Subtreespeer grouppropagation type测试bind mount下的挂载传播查看propagation type和peer groupshared、private mountslave mount测试mount namespace下的挂载传播shared subtrees什么是绑定挂载我们知道Linux 每个常规的文件都有inode,inode可以理解为文件的索引节点,其保存了文件的元信息。其实在Linux VFS中,inode stru原创 2020-07-14 08:53:16 · 1874 阅读 · 0 评论 -
Docker 使用 Systemd Socket
以下环境默认为centos7最近切换Docker版本时发现新版本Docker的 Systemd Unit File 和之前的不太一样,通常我们知道,Docker Daemon 启动时,可以通过 --host 参数(简写为 -H)来指定 Daemon Socket 连接的位置,比如 --host=unix:///var/run/docker.sock 表示使用一个 Unix Domain Socket;而 --host=tcp://0.0.0.0:2376 表示 Docker Daemon 监听在 2376原创 2020-06-13 21:26:42 · 1904 阅读 · 0 评论 -
深入理解 Socket, NIO 和 Epoll
之前在内部分享过一次关于NIO相关的知识,感觉通过这次整理,对NIO和Epoll整体上又多了一些认识,虽然没有能力阅读内核源码,但是希望这篇文章可以从整体上帮助各位认识NIO和Epoll。文章目录中断网卡中断软中断阻塞的原理内核接受网络数据的全过程Unix 网络IO分类阻塞I/O非阻塞I/OI/O多路复用信号驱动I/O异步I/O总结IO多路复用selectepoll原理浅析:创建epoll对象维护监视列表接收数据pollable对Socket的理解中断计算机执行程序时,会有优先级的需求。比如,当计算机原创 2020-06-12 16:35:07 · 810 阅读 · 0 评论 -
Docker镜像在OverlayFs下的存储细节
之前一直对Docker镜像存储的细节不太清楚,甚至以为Docker ImageId 就等同于Digest,最近看到几篇博文,结合自己测试环境的实操,进行如下记录:Docker镜像拉取的过程Docker Registry Api可参考 Docker Registry HTTP API V2为什么要拉取两种类型的配置文件?manifest 是针对registry服务端的配置信息Image config 是 针对本地镜像的描述为什么要有Digest:digest是对 manifest文件的原创 2020-06-10 08:38:50 · 1539 阅读 · 0 评论 -
Linux 虚拟内存、Java直接内存和内存映射
文章目录Linux虚拟内存分页和页表内存寻址和分配虚拟内存空间分布malloc和free是如何分配和释放内存?内存分配的原理malloc(brk,sbrk)和mmap分配内存方式的比较Java 中的直接内存三个场景场景一:将一个文件通过网络发送出去传统方式java mmapjava的sendfile场景二:将应用程序中的内存中的数据通过网络发送出去(非磁盘上的)场景三:从网络读数据到Java应用程...原创 2020-04-02 16:21:40 · 2184 阅读 · 10 评论 -
DNS详解以及Bind使用(二)---Bind安装、配置及使用
文章目录Bind概念安装安装明细配置主配置文件格式dig命令Bind概念Bind (berkeley internet name domain ) 由ISC 进行维护,还维护了dhcpdBind是DNS协议的一种实现,是一个DNS Server程序,其守护进程名 为 named安装sudo yum install -y bind安装明细主配置文件:/etc/named.con...原创 2020-01-08 17:55:45 · 2288 阅读 · 0 评论 -
DNS详解以及Bind使用(一)---概述
这是目录相关概念DNS标题为什么DNS服务器可以有多台DNS查询类型DNS解析类型DNS服务器类型:一次完整的查询请求区域和域(zone & domain)资源记录资源记录的定义格式:相关概念DNSDomain name Service: 使用特定的应用层一种协议,默认端口使用 tcp 53 和udp 53端口FQDN:full qualified domain name : 是一...原创 2019-12-17 17:42:32 · 1464 阅读 · 0 评论 -
网络安全及密码学原理初探
一直搞不太清楚HTTPS以及各种加密算法到底是什么意思,特写此博客记录学习心得文章目录Linux 网络安全概述网络通信安全的目标:网络攻击类型:解决方案加密和解密传统加密现代加密加密算法和协议安全服务密码学知识加密算法的工作模式:对称加密:**非对称加密(公钥加密)**:单向加密密钥交换数字证书公钥基础设施PKI:证书的内容如何验证证书OpenSSLSSL会话步骤OpenSSL使用标准命令Lin...原创 2019-08-27 17:25:39 · 561 阅读 · 0 评论