Loading

摘要: 对象内存布局 HotSpot虚拟机中,对象在内存中存储的布局可以分为三块区域:对象头(Header)、实例数据(Instance Data)和对齐填充(Padding)。 从上面的这张图里面可以看出,对象在内存中的结构主要包含以下几个部分: Mark Word(标记字段):对象的Mark Word部 阅读全文
posted @ 2020-12-04 18:14 hongdada 阅读(1256) 评论(0) 推荐(1) 编辑
摘要: 安装 自动安装 官方推荐的安装方式,一键完成。不过让我很没有安全感,我倾向于手动安装。 sh -c "$(curl -fsSL https://raw.githubusercontent.com/zdharma/zinit/master/doc/install.sh)" 手动安装 首先 clone 阅读全文
posted @ 2020-11-27 16:08 hongdada 阅读(2026) 评论(0) 推荐(0) 编辑
摘要: 求数组中不相邻的最大值 解决方案,假设opt数组为最优解,比如opt[6]就表示arr数组中下标0到6这段的最优解 即opt[n]=Math.max(opt[n-1],opt[n-2]+arr[n]) 上诉公式表示 不取下标为n的选项和取下标为n的选项两种方案的最大值 边界为 opt[0]=arr. 阅读全文
posted @ 2020-08-25 23:14 hongdada 阅读(355) 评论(0) 推荐(0) 编辑
摘要: 安装最新版Tmux 下载地址:releases Centos下载tmux安装教程 允许鼠标滚动 新的配置项已简化为 set -g mouse on 将他写到 ~/.tmux.conf 中然后执行 tmux source ~/.tmux.conf 注意2.1版本以下的配置项在新版本中已经被废弃 set 阅读全文
posted @ 2020-07-04 23:46 hongdada 阅读(971) 评论(0) 推荐(0) 编辑
摘要: 电脑环境 618买了台联想小新pro13 锐龙版 4800U,将台式机中的win10系统迁移到笔记本。 目前win10是最新的2004版本,wsl为版本1,想要将其升级为wsl2使用,因为vmware 20H1可以和hyper-v兼容使用了,以前因为需要经常使用vmware,所以一直没有升级,这次趁 阅读全文
posted @ 2020-06-27 22:02 hongdada 阅读(4725) 评论(1) 推荐(0) 编辑
摘要: win10安装openssh 查看: Get-WindowsCapability -Online | ? Name -like 'OpenSSH*' # This should return the following output: Name : OpenSSH.Client~~~~0.0.1.0 阅读全文
posted @ 2020-06-04 17:59 hongdada 阅读(1220) 评论(2) 推荐(0) 编辑
摘要: zsh配置文件.zshrc设置: 修改.zshrc文件,添加以下内容: #关于历史纪录的配置 {{{ #历史纪录条目数量 export HISTSIZE=10000 #注销后保存的历史纪录条目数量 export SAVEHIST=10000 #历史纪录文件 export HISTFILE=~/.hi 阅读全文
posted @ 2020-05-30 14:52 hongdada 阅读(354) 评论(0) 推荐(0) 编辑
摘要: top 命令查看CPU、内存等使用情况 [root@server110 ~]# top top - 14:24:55 up 23 days, 20:34, 2 users, load average: 0.38, 0.15, 0.05 Tasks: 103 total, 1 running, 102 阅读全文
posted @ 2020-04-26 14:16 hongdada 阅读(1356) 评论(0) 推荐(1) 编辑
摘要: 前言 因为 Kubernetes 的网络可以使用第三方网络插件,所以给我们提供了多样化的网络解决方案,让我们可以根据自身情况选择自己需要的网络方案。 CNM & CNI 阵营: 容器网络发展到现在,形成了两大阵营,就是 Docker 的 CNM 和 Google、CoreOS、Kuberenetes 阅读全文
posted @ 2020-03-01 20:25 hongdada 阅读(3047) 评论(0) 推荐(1) 编辑
摘要: 事务隔离级别 隔离级别 脏读 不可重复读 幻读 读未提交 可以出现 可以出现 可以出现 读提交 不允许出现 可以出现 可以出现 可重复读 不允许出现 不允许出现 可以出现 序列化 不允许出现 不允许出现 不允许出现 注意点 上述隔离级别都是这么定义的,但是InnoDB和Falcon存储引擎已经通过多 阅读全文
posted @ 2020-01-23 14:14 hongdada 阅读(389) 评论(0) 推荐(0) 编辑
摘要: 模板图 二叉查找树 由于红黑树本质上就是一棵二叉查找树,所以在了解红黑树之前,咱们先来看下二叉查找树。 二叉查找树(Binary Search Tree),也称有序二叉树(ordered binary tree),排序二叉树(sorted binary tree),是指一棵空树或者具有下列性质的二叉 阅读全文
posted @ 2020-01-08 11:27 hongdada 阅读(2348) 评论(0) 推荐(0) 编辑
摘要: Kubernetes方式 top命令查看所有pod,nodes中内存,CPU使用情况 查看pod root @ master ➜ ~ kubectl top pod -n irm-server NAME CPU(cores) MEMORY(bytes) test-ecd-server-56b77d9 阅读全文
posted @ 2019-12-19 11:38 hongdada 阅读(10426) 评论(0) 推荐(0) 编辑
摘要: 简介 读写锁维护着一对锁,一个读锁和一个写锁。通过分离读锁和写锁,使得并发性比一般的排他锁有了较大的提升:在同一时间可以允许多个读线程同时访问,但是在写线程访问时,所有读线程和写线程都会被阻塞。 读写锁的主要特性: 公平性:支持公平性和非公平性。 重入性:支持重入。读写锁最多支持65535个递归写入 阅读全文
posted @ 2019-11-21 17:33 hongdada 阅读(313) 评论(0) 推荐(0) 编辑
摘要: 简介 在没有Lock之前,我们使用synchronized来控制同步,配合Object的wait()、notify()系列方法可以实现等待/通知模式。在Java SE5后,Java提供了Lock接口,相对于Synchronized而言,Lock提供了条件Condition,对线程的等待、唤醒操作更加 阅读全文
posted @ 2019-11-19 13:48 hongdada 阅读(441) 评论(0) 推荐(0) 编辑
摘要: 自定义安装路径安装 scoop安装应用路径 目标目录是D:\Program Files\Scoop,在PowerShell命令控制台中运行: [environment]::setEnvironmentVariable('SCOOP','D:\Scoop','User') $env:SCOOP='D: 阅读全文
posted @ 2019-11-12 18:35 hongdada 阅读(4676) 评论(1) 推荐(1) 编辑
摘要: 最简单的东西,往往包含了最复杂的实现,因为需要为上层的存在提供一个稳定的基础,Object作为java中所有对象的基类,其存在的价值不言而喻,其中wait和notify方法的实现多线程协作提供了保证。 案例 public class WaitTestDemo { public static void 阅读全文
posted @ 2019-10-29 18:45 hongdada 阅读(754) 评论(0) 推荐(0) 编辑
摘要: 什么是AQS aqs全称为AbstractQueuedSynchronizer,它提供了一个FIFO队列,可以看成是一个用来实现同步锁以及其他涉及到同步功能的核心组件,常见的有:ReentrantLock、CountDownLatch等。 AQS是一个抽象类,主要是通过继承的方式来使用,它本身没有实 阅读全文
posted @ 2019-10-18 14:51 hongdada 阅读(888) 评论(0) 推荐(0) 编辑
摘要: 概述 我将它们简单的分类为以下几种资源对象: 类别 名称 资源对象 Pod、ReplicaSet、ReplicationController、Deployment、StatefulSet、DaemonSet、Job、CronJob、HorizontalPodAutoscaling、Node、Name 阅读全文
posted @ 2019-09-27 14:31 hongdada 阅读(959) 评论(0) 推荐(0) 编辑
摘要: helm镜像库配置 helm repo add stable http://mirror.azure.cn/kubernetes/charts helm repo add incubator http://mirror.azure.cn/kubernetes/charts-incubator hel 阅读全文
posted @ 2019-08-28 15:57 hongdada 阅读(2217) 评论(0) 推荐(0) 编辑
摘要: Kubectl 自动补全 yum install -y bash-completion source /usr/share/bash-completion/bash_completion $ source <(kubectl completion bash) # setup autocomplete 阅读全文
posted @ 2019-08-09 16:16 hongdada 阅读(2505) 评论(1) 推荐(0) 编辑
正文内容加载中...
posted @ 2021-07-26 00:22 hongdada 阅读(236) 评论(0) 推荐(0) 编辑
摘要: 查看恢复环境配置信息 reagentc /info 启用恢复环境 reagentc /enable 禁用 reagentc /disable WindowRE位置为空解决方法 如果运行reagentc /info后,Windows RE位置显示为空,这说明恢复环境已丢失,此时当我们运行reagent 阅读全文
posted @ 2021-06-09 15:39 hongdada 阅读(428) 评论(0) 推荐(0) 编辑
摘要: 基本概念 STAB 三色标记法 2.1 基本算法 要找出存活对象,根据可达性分析,从GC Roots开始进行遍历访问,可达的则为存活对象: 最终结果:A/D/E/F/G 可达 我们把遍历对象图过程中遇到的对象,按“是否访问过”这个条件标记成以下三种颜色: 白色:尚未访问过。 黑色:本对象已访问过,而 阅读全文
posted @ 2021-03-25 19:43 hongdada 阅读(2115) 评论(1) 推荐(1) 编辑
摘要: 基本概念 指针碰撞 一般情况下,JVM的对象都放在堆内存中(发生逃逸分析除外)。当类加载检查通过后,Java虚拟机开始为新生对象分配内存。如果Java堆中内存是绝对规整的,所有被使用过的的内存都被放到一边,空闲的内存放到另外一边,中间放着一个指针作为分界点的指示器,所分配内存仅仅是把那个指针向空闲空 阅读全文
posted @ 2021-03-10 21:55 hongdada 阅读(265) 评论(0) 推荐(0) 编辑
摘要: 内置锁(ObjectMonitor) Monitor可以理解为一个同步工具或一种同步机制,通常被描述为一个对象。每一个Java对象就有一把看不见的锁,称为内部锁或者Monitor锁。 通常所说的对象的内置锁,是对象头Mark Word中的重量级锁指针指向的monitor对象,该对象是在HotSpot 阅读全文
posted @ 2021-03-10 17:24 hongdada 阅读(774) 评论(0) 推荐(0) 编辑
摘要: 对象内存布局 HotSpot虚拟机中,对象在内存中存储的布局可以分为三块区域:对象头(Header)、实例数据(Instance Data)和对齐填充(Padding)。 从上面的这张图里面可以看出,对象在内存中的结构主要包含以下几个部分: Mark Word(标记字段):对象的Mark Word部 阅读全文
posted @ 2020-12-04 18:14 hongdada 阅读(1256) 评论(0) 推荐(1) 编辑
摘要: fd命令 简介 fd 是基于 Rust 开发的一个速度超快的命令行搜索工具,fd 旨在成为 Linux / Unix 下 find 命令的替代品。 fd的一些显着特征: 易于使用的语法 - fd * pattern *而不是find -iname * pattern * 。 多彩输出类似于ls命令之 阅读全文
posted @ 2020-12-01 22:36 hongdada 阅读(460) 评论(0) 推荐(0) 编辑
摘要: 安装 自动安装 官方推荐的安装方式,一键完成。不过让我很没有安全感,我倾向于手动安装。 sh -c "$(curl -fsSL https://raw.githubusercontent.com/zdharma/zinit/master/doc/install.sh)" 手动安装 首先 clone 阅读全文
posted @ 2020-11-27 16:08 hongdada 阅读(2026) 评论(0) 推荐(0) 编辑
摘要: 安装插件异常 ❯ source ~/.zshrc /root/.zinit/bin/zinit.zsh:3: command not found: ^M /root/.zinit/bin/zinit.zsh:7: command not found: ^M /root/.zinit/bin/zini 阅读全文
posted @ 2020-11-26 18:31 hongdada 阅读(286) 评论(0) 推荐(0) 编辑
摘要: 安装Nerd Fonts字体 MacOS 方式一: # https://github.com/ryanoasis/nerd-fonts#option-4-homebrew-fonts brew tap caskroom/fonts #字體安裝軟體,只需執行一次以後就可以去下載其他字體 brew ca 阅读全文
posted @ 2020-11-24 18:44 hongdada 阅读(3526) 评论(0) 推荐(0) 编辑
摘要: 泛型擦除概念 Java的泛型是伪泛型,这是因为Java在编译期间,所有的泛型信息都会被擦掉,正确理解泛型概念的首要前提是理解类型擦除。Java的泛型基本上都是在编译器这个层次上实现的,在生成的字节码中是不包含泛型中的类型信息的,使用泛型的时候加上类型参数,在编译器编译的时候会去掉,这个过程成为类型擦 阅读全文
posted @ 2020-11-17 11:18 hongdada 阅读(647) 评论(0) 推荐(1) 编辑
摘要: DefaultSingletonBeanRegistry源码 源码注释: public class DefaultSingletonBeanRegistry extends SimpleAliasRegistry implements SingletonBeanRegistry { // 已经创建的 阅读全文
posted @ 2020-10-16 16:56 hongdada 阅读(302) 评论(0) 推荐(0) 编辑
摘要: 概述 JMH只适合细粒度的方法测试,并不适用于系统之间的链路测试 使用Maven搭建基准测试项目骨架 JMH官方推荐使用Maven来搭建基准测试的骨架,使用也很简单,使用如下命令来生成maven项目: mvn archetype:generate -DinteractiveMode=false -D 阅读全文
posted @ 2020-10-13 17:11 hongdada 阅读(424) 评论(0) 推荐(0) 编辑
摘要: 安装 expect是建立在tcl基础上的一个自动化交互套件, 在一些需要交互输入指令的场景下, 可通过脚本设置自动进行交互通信. 其交互流程是: spawn启动指定进程 -> expect获取指定关键字 -> send想指定进程发送指定指令 -> 执行完成, 退出. 由于expect是基于tcl的, 阅读全文
posted @ 2020-09-22 15:16 hongdada 阅读(446) 评论(0) 推荐(0) 编辑
摘要: autossh版本说明 目前发现同样叫autossh的,有好几个项目 yum,brew中的自动重启ssh会话和隧道 FeeiCN的autossh islenbo的autossh 后面两个的主要是用于记录密码,远程连接 Feeicn版安装使用 安装依赖: Linux yum install expec 阅读全文
posted @ 2020-09-22 13:48 hongdada 阅读(1376) 评论(0) 推荐(0) 编辑