自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

勿忘初心

愿我所遇之人,所历之事,哪怕因为我有一点点变好,我就心满意足了。

  • 博客(1393)
  • 资源 (120)
  • 收藏
  • 关注

原创 Linux 系统问题排查常用命令

其次数值表示应用程序的文件描述符,这是打开该文件时返回的一个整数。FD 列中的文件描述符cwd 值表示应用程序的当前工作目录,这是该应用程序启动的目录,除非它本身对这个目录进行更改,txt 类型的文件是程序代码,如应用程序二进制文件本身或共享库,如上列表中显示的 /sbin/init 程序。按下这个快捷键后,进入了反向搜索状态,这时你输入一个字符,系统会找到最近一个包含这个字符的命令,如果不是你想要的命令,你可以继续输入,系统继续查找最近一个包含你所输入的字符串的命令,直到找到你要的命令。

2024-04-13 11:15:00 1473

原创 Kubernetes 常用命令 持续更新

17、如何查看k8s中kube-proxy的模式是ipvs还是iptables。4、工作负载异常:结束中,解决Terminating状态的Pod删不掉的问题。就到pod对应的机器上,通过docker exec进入。7、查看networkpolicy 信息。1、进入指定namespace pod。11、查询某个node上所有的pod。5、查看cron job运行情况。8、查看contexts候选列表。14、查看系统中的 CRD 资源。2、查看k8s pod详情。10、查询集群中的node。

2023-10-11 14:50:32 940

原创 Elasticsearch 常用命令 持续更新

_reindexcurl --location --request POST 'http://10.138.25.214:9200/_reindex' \--header 'Content-Type: application/json' \--data-raw '{ "source": { "index": "deploy-log" }, "dest": { "index": "deploy-log-2018.12.24" }}'创建indexcurl .

2021-02-05 16:46:33 3499

原创 个人常用命令集锦 持续更新

OS1、 立刻关机halt2、 centos安装yumapt-get install yum3、 查找文件夹find / - name 需要查找文件名称4、 vi里面 查找字符串“/”,后面跟要查找的字符串,再按回车。vi将光标定位在该串下一次出现的地方上。键入n跳到该串的下一个出现处,键入N跳到该串的上一个出现处。要查找一个以search为行首的行,则键入/^search ,要查找一个以search为行尾的行,则键入/search$。5、 解压tar -zxvf archive

2021-02-05 16:45:45 36282 1

原创 jiankunking的个人简介

个人简介本博客主要是个人学习、解决问题的笔记,主要涉及以下这些方面:Winfrom、WebC#、Java、Javascript、GoIIS、TomCatWCF、Spring、MyBatisOracle、Sql Server、MySQLCLR、JVM、性能、设计模式BPM与Activiti编码规范JStorm、...

2016-09-20 21:27:19 3375 10

原创 OpenResty从入门到实战--JIT编译器的死穴:为什么要避免使用 NYI ?

那究竟什么是 NYI 呢?LuaJIT 的运行时环境,除了一个汇编实现的 Lua 解释器外,还有一个可以直接生成机器代码的 JIT 编译器。LuaJIT 中 JIT 编译器的实现还不完善,有一些原语它还无法编译,因为这些原语实现起来比较困难,再加上 LuaJIT 的作者目前处于半退休状态。这些原语包括常见的 pairs() 函数、unpack() 函数、基于 Lua CFunction 实现的 Lua C 模块等。这样一来,当 JIT 编译器在当前代码路径上遇到它不支持的操作时,便会退回到解释器模式。

2025-03-24 22:45:00 996

原创 Apache APISIX 架构浅析

大家从网上肯定看到过关于Apisix性能高的文章,那么到底是如何实现的呢?本文是分析也是自己学习《OpenResty从入门到实战》及Apisix官方文档的一个笔记more。

2025-03-22 03:34:05 995

原创 OpenResty/Lua 编码指南/指南

很多开发语言都有自己的编码规范,来告诉开发者这个领域内一些约定俗成的东西,让大家写的代码风格保持一致,并且避免一些常见的陷阱。这对于新手来说是非常友好的,可以让初学者快速准确地上手。比如 Python 的 PEP 80,就是其中的典范,几乎所有的 Python 开发者都阅读过这份 Python 作者执笔的编码规范。**让开发者统一思想,按照规范来写代码,是一件非常重要的事情。

2025-03-18 23:00:00 1574

原创 NGINX 执行阶段与OpenResty的 *_by_lua指令

其中, init_by_lua 只会在 Master 进程被创建时执行,init_worker_by_lua 只会在每个 Worker 进程被创建时执行。其他的 *_by_lua 指令则是由终端请求触发,会被反复执行。执行阶段也是 NGINX 重要的特性,与 OpenResty 的具体实现密切相关。所以在 init_by_lua 阶段,我们可以预先加载 Lua 模块和公共的只读数据,这样可以利用操作系统的 COW(copy on write)特性,来节省一些内存。

2025-03-18 22:00:00 389

原创 南北入口网关选型

南北向网关的选型之旅more。

2025-03-08 07:23:56 994

原创 nginx accesslog 打印自定义header

比如我在请求的header中添加了一个path-match-type,那我现在nginx的accesslog 中打印出来,应该如何配置呢?

2025-03-04 22:15:00 239

原创 《剑来》语句摘录(十四)

第一千三百二十五章 锦上添花◆ 大概这就是所谓的世俗权力,并非都是上位者的颐气指使,或是任何场合只要一开口就从喧闹瞬间变作安静,也未必是出行之时的排场。权力就像是一张无形的蛛网,权力越大,数量越多的蛛丝就能够蔓延更长,蛛网最边缘的那圈蛛丝,能够圈进更多的金钱,女人,座位,和他人的喜怒哀乐,人生际遇的起伏,蛛网中央地带出现的一点小小起伏,便是一层层往外扩展的悲欢离合,逐渐演变成为他们的惊涛骇浪,荣辱...

2025-02-05 20:30:56 283

原创 走出心无力~林音

◆ “心无力”具体有哪些表现?最大的特征就是:累。即使没做什么事,没遇到特别大的坎,也会突然感到心累,极易疲劳。◆ 在高度的商品化和竞争中,人本身也变成了商品。当我们生命的大部分时刻都被商品化,人内心的自主、独立和安宁便被剥夺,取而代之的是彻底的利益至上和对市场价值的疯狂追求。◆ 容易感受到“心无力”的人大多偏理想主义,对人生有自己的追求与向往,在精神层面有自己的执着和坚持。他们总是需要在社会现实...

2025-02-04 20:36:35 1551

原创 etcd实战课--db大小:为什么etcd社区建议db大小不超过8G?

当你未分页批量遍历key-value数据或单key-value数据较大的时候,随着请求QPS增大,etcd OOM、节点出现带宽瓶颈导致丢包的风险会越来越大。问题主要由以下两点原因导致:第一,etcd需要遍历treeIndex获取key列表。若你未分页,一次查询万级key,显然会消耗大量内存并且高延时。第二,获取到key列表、版本号后,etcd需要遍历boltdb,将key-value保存到查询结果数据结构中。

2025-01-23 22:45:00 1759

原创 手把手落地DDD 笔记

事件风暴是一种通过协作的方式捕获行为需求的方法,在这个过程里,业务人员和技术人员一起消化领域知识、形成统一语言、并为领域建模奠定基础。事件风暴分为识别领域事件、识别命令、识别领域名词三个步骤。这一节课讲的是后面两个步骤。“命令"是引发领域事件的操作,可以从领域事件"反推"出来。此外,还可以识别命令的两个附加信息,一个是发出命令的"执行者”,另一个是为了完成命令要查询出的数据。"领域名词"是隐含在命令和领域事件中的名词性概念。这些名词是领域建模的素材, 而对于这些素材的深入分析可以留到领域建模进行。

2025-01-22 23:30:00 1552

原创 DDD实战课 笔记

领域的核心思想就是将问题域逐级细分,来降低业务理解和系统实现的复杂度。通过领域细分,逐步缩小微服务需要解决的问题域,构建合适的领域模型,而领域模型映射成系统就是微服务了。通用语言定义上下文含义,限界上下文则定义领域边界,以确保每个上下文含义在它特定的边界内都具有唯一的含义,领域模型则存在于这个边界之内。在事件风暴过程中,通过团队交流达成共识的,能够简单、清晰、准确描述业务涵义和规则的语言就是通用语言。下面我带你看一张图,这张图描述了从事件风暴建立通用语言到领域对象设计和代码落地的完整过程。

2025-01-22 22:45:00 1106

原创 左耳朵耗子--高效学习:面对枯燥和量大的知识

首先,我们要知道,为什么会有枯燥的知识?一般来说,枯燥的东西通常是你不感兴趣的东西,而你不感兴趣的东西,可能是你并不知道有什么用的东西。这样的知识通常是比较底层或是抽象度比较高的知识,比如:线性代数,或者一些操作系统内部的原理……越理论的东西就越让人觉得枯燥。我还记得,当初上大学学习《计算机网络》时,直接学习那个七层协议,以及那些报文,让我感觉枯燥得不行。那个时候,完全不知道这些东西有什么用,因为我连网络是什么都没有见过。

2025-01-20 08:49:03 826 1

原创 左耳朵耗子--Java底层知识

程序员练级攻略作者:左耳朵耗子more。

2025-01-20 08:26:49 665

原创 深入浅出 Java 虚拟机---21 动手实践:不为人熟知的字节码指令

本课时我们主要分享一个实践案例:不为人熟知的字节码指令。下面将通过介绍Java语言中的一些常见特性,来看一下字节码的应用,由于Java特性非常多,这里我们仅介绍一些经常遇到的特性。javap是手中的利器,复杂的概念都可以在这里现出原形,并且能让你对此产生深刻的印象。本课时代码比较多,相关代码示例都可以在仓库中找到,建议实际操作一下。

2025-01-18 07:01:42 695

原创 Tuning the Go HTTP Client Settings

记录一次GoHTTPClientTIME_WAIT的优化more。

2025-01-18 07:00:16 306

原创 如何优化Elasticsearch大文档查询?

记录一次业务复杂场景下DSL优化的过程more。

2025-01-15 22:45:00 647

原创 2023雷军年度演讲全文

大家好,欢迎参加今晚的演讲。这是我第4次的年度演讲活动。两个月前,我参加了武汉大学今年的毕业典礼。今年是武大建校130周年,现场有17000多人,特别壮观。作为校友,被母校邀请,在毕业典礼上致辞,对我来说,这是至高无上的荣誉。站在讲台上,我面对全校师生时,激动万分,当年记忆全部涌现出来。

2025-01-15 08:30:00 663

原创 又一次不接受Elasticsearch官方建议导致的事故

记录一下一次Elasticsearch集群事故分析、排查、处理more。

2025-01-08 22:00:00 344

原创 2024年终总结

又是一年more。

2025-01-03 15:46:49 261

原创 内网IP段介绍与汇总

IPV4内网段IP地址段地址范围地址数量用途描述0.0.0.0/80.0.0.0–0.255.255.25516777216SoftwareCurrent network (only valid as source address).10.0.0.0/810.0.0.0–10.255.255.25516777216Private networkUsed for local communications within a private network.

2024-12-21 13:06:55 892

原创 《天之下》语句摘录(三)

第二百九十二章 佛前长明(下)◆ 只需斩除觉空,便能控制河南一带,其余可传檄而定。”他心中早有计划,这事早在去年明不详来见他,献上以魔灭魔之策时便定下,只要让俗僧相信觉空的死不会影响他们的地位,就能安抚俗僧之心,再慢慢将四院八堂牢牢巩固在正僧手上,缓步驱除俗僧。想要灭魔,就得先伪装成魔的同伴。第二百九十六章 歧路各别(下)◆ 一个好谎话要九实一虚,当一个谎话被戳破,就要设计另一个更绵密更大的谎话,...

2024-12-08 08:20:28 778

原创 《剑来》语句摘录(十三)

第一千二百九十章 寓言人间最好的文字,不管篇幅长短,不管是文采斐然,还是朴实无华,归根结底,皆是一篇寓言。可以总结历史,能够预言未来。第一千二百九十二章 两官相逢于山巅自觉此心无一事,小鱼跳出绿萍中’知道自己是棋子,就能离开棋盘了?知道自己是池鱼,便能上岸了?第一千二百九十三章 于混沌一片中世间多少故作轻松、强颜欢笑的插科打诨里边,是人心烂泥潭里边将要溺死之人的冒头喘口气。却也有些人心泥泞里边,能...

2024-12-07 18:45:55 555

原创 服务发布策略:包括蓝绿部署、A/B测试以及金丝雀发布

蓝绿部署需要对服务的新版本进行冗余部署,一般新版本的实例规格和数量与旧版本保持一致,相当于该服务有两套完全相同的部署环境,只不过此时只有旧版本在对外提供服务,新版本作为热备。验证新版本符合预期后,逐步调整流量权重比例,使得流量慢慢从老版本迁移至新版本,期间可以根据设置的流量比例,对新版本服务进行扩容,同时对老版本服务进行缩容,使得底层资源得到最大化利用。蓝绿部署通过使用额外的实例资源来解决服务发布期间的不可用问题,当服务新版本出现故障时,也可以快速将流量切回旧版本。

2024-12-03 22:15:00 615

原创 ElasticSearch为什么不能在query阶段直接返回_id,从而避免fetch?

整理自Github的一个issue,也正好解答了我的疑惑more。

2024-11-27 08:31:14 551

原创 [译]Elasticsearch Sequence ID实现思路及用途

more。

2024-11-23 07:55:53 1373

原创 动手实践:让面试官刮目相看的堆外内存排查

深入浅出 Java 虚拟机作者: 李国本课时我们主要讲解让面试官刮目相看的堆外内存排查。第 02 课时讲了 JVM 的内存布局,同时也在第 08 课时中看到了由于 Metaspace 设置过小而引起的问题,接着,第 10 课时讲了一下元空间和直接内存引起的内存溢出实例。Metaspace 属于堆外内存,但由于它是单独管理的,所以排查起来没什么难度。使用堆外内存可以调用一些功能完备的库函数,而且减轻了 GC 的压力。这些代码,有可能是你了解的人写的,也有可能隐藏在第三方的 jar 包里。

2024-11-12 23:00:00 985

原创 java GC Roots 有哪些

GC Roots 是一组必须活跃的引用。用通俗的话来说,就是程序接下来通过直接引用或者间接引用,能够访问到的潜在被使用的对象。

2024-11-09 14:24:47 444

原创 工具进阶:如何利用 MAT 找到问题发生的根本原因

有很多工具能够帮助我们来分析这份内存快照。在前面已多次提到 VisualVm 这个工具,它同样可以加载和分析这份 dump 数据,虽然比较“寒碜”。专业的事情要有专业的工具来做,今天要介绍的是一款专业的开源分析工具,即 MAT。MAT 工具是基于 Eclipse 平台开发的,本身是一个 Java 程序,所以如果你的堆快照比较大的话,则需要一台内存比较大的分析机器,并给 MAT 本身加大初始内存,这个可以修改安装目录中的 MemoryAnalyzer.ini 文件。

2024-11-09 11:09:26 1208

原创 左耳听风--079 程序员练级攻略(2018):Java底层知识

Java 的字节码相当于汇编,学习其中的细节很有意思,为此我精心挑选了 3 篇文章,供你学习。比如, 我们不需要在代码中埋点做统计或监控,可以使用这种技术把我们的监控代码直接以字节码的方式注入到别人的代码中,从而实现对实际程序运行情况进行统计和监控。我推荐阅读一下 JVM 的规格说明书,我认为,它是系统了解 JVM 规范的最佳文档,可以让你对于搞不清楚或是诡异的问题恍然大悟。JVM 解剖公园,这是一个系列的文章,每篇文章都不长,但是都很精彩,带你一点一点地把 JVM 中的一些技术解开。

2024-11-09 09:20:28 699

原创 一次线程池使用错误导致的问题

记录一次服务线程数量异常问题的排查过程more。

2024-11-03 06:15:01 1030

原创 Logstash 迁移索引元数据(设置和映射)

【代码】【无标题】

2024-10-29 22:30:00 564

原创 Spring Bean 生命周期

2024-10-24 23:00:00 193

原创 Spring boot 配置文件的加载顺序

【代码】Spring boot 配置文件的加载顺序。

2024-10-24 13:29:25 451

原创 容器实战高手课----10 Swap:容器可以使用Swap空间吗?

这一讲,我们主要讨论的问题是在容器中是否可以使用Swap?这个问题没有看起来那么简单。当然了,只要在宿主机节点上打开Swap空间,在容器中就是可以用到Swap的。但出现的问题是在同一个宿主机上,对于不需要使用swap的容器, 它的Memory Cgroups的限制也失去了作用。针对这个问题,我们学习了Linux中的swappiness这个参数。

2024-10-17 21:45:00 748

原创 容器实战高手课---09 Page Cache:为什么我的容器内存使用量总是在临界点

这一讲我想让你知道,每个容器的Memory Cgroup在统计每个控制组的内存使用时包含了两部分,RSS和Page Cache。RSS是每个进程实际占用的物理内存,它包括了进程的代码段内存,进程运行时需要的堆和栈的内存,这部分内存是进程运行所必须的。Page Cache是进程在运行中读写磁盘文件后,作为Cache而继续保留在内存中的,它的目的是为了提高磁盘文件的读写性能。

2024-10-16 22:15:00 831

zookeeper开源客户端Curator

Curator是Netflix公司开源的一套ZooKeeper客户端框架,Curator解决了很多ZooKeeper客户端非常底层的细节开发工作,包括连接重连、反复注册Watcher和NodeExistsException异常等,实现了Fluent风格的API接口,目前已经成为Apache的顶级项目,是全世界范围内使用最广泛的ZooKeeper客户端之一。

2017-03-25

zookeeper开源客户端ZkClient使用

ZkClient是Github上一个开源的ZooKeeper客户端。ZkClient在ZooKeeper原生 API接口之上进行了包装,是一个更加易用的ZooKeeper客户端。同时,ZkClient在内部实现了诸如Session超时重连、Watcher反复注册等功能。

2017-03-25

zookeeper客户端api使用

zookeeper客户端api使用

2017-03-25

idea build 无war包

idea build 无war包

2017-03-15

阿里巴巴Java开发手册(正式版)

阿里巴巴Java开发手册(正式版)

2017-02-09

Spring2.5-中文参考手册

Spring2.5-中文参考手册

2016-12-24

java jdk 动态代理 演示demo

java jdk 动态代理 演示demo

2016-10-30

深入理解Java虚拟机——JVM高级特性与最佳实践(第2版)

深入理解Java虚拟机——JVM高级特性与最佳实践(第2版)

2016-10-09

韩顺平 mysql读写分离实现

韩顺平 mysql读写分离实现 本人未测试,仅仅是分享备份

2016-10-07

Java 反射详解(包含私有方法属性的调用)

Java 反射详解(包含私有方法属性的调用)

2016-09-16

Java 反射详解

Java 反射详解

2016-09-16

Activiti 学习笔记14:工作流定义的角色组

Activiti 学习笔记14:工作流定义的角色组

2016-09-14

Activiti 学习笔记13:分配组任务

Activiti 学习笔记13:分配组任务

2016-09-13

Activiti 学习笔记12:分配个人任务

Activiti 学习笔记12:个人任务

2016-09-11

Activiti 学习笔记11 接收活动(receiveTask,即等待活动)

Activiti 学习笔记11:接收活动(receiveTask,即等待活动)

2016-09-11

Activiti 学习笔记十:开始活动节点(判断流程是否结束及查询历史)

Activiti 学习笔记十:开始活动节点(判断流程是否结束及查询历史)

2016-09-11

Activiti 学习笔记九:并行网关(parallelGateWay)

Activiti 学习笔记九:并行网关(parallelGateWay)

2016-09-11

Activiti 学习笔记八:排他网关(ExclusiveGateWay)

Activiti 学习笔记八:排他网关(ExclusiveGateWay)

2016-09-08

Activiti 学习笔记七:连线(SequenceFlow)

Activiti 学习笔记七:连线(SequenceFlow)

2016-09-08

Activiti 学习笔记六:流程执行历史记录

Activiti 学习笔记六:流程执行历史记录

2016-09-06

企业数字化转型成熟度模型IOMM.zip

企业数字化转型成熟度模型IOMM

2021-11-25

Java volatile与AQS锁内存可见性

从JUC中的AQS引入,讲解Java volatile与AQS锁内存可见性

2018-09-11

ELK使用教程

ELK使用教程

2018-07-22

Java并发编程的艺术

Java并发编程的艺术 Java并发编程的艺术 Java并发编程的艺术

2018-04-25

java cpu 内存占用高 问题 模拟并排查

java cpu 内存占用高 问题 模拟并排查 https://blog.youkuaiyun.com/jiankunking/article/details/79749836 https://blog.youkuaiyun.com/jiankunking/article/details/79749483

2018-03-29

jad java 反编译工具

jad java 反编译 工具 jad java 反编译 工具 jad java 反编译 工具

2018-02-23

图解HTTP+彩色版

图解HTTP+彩色版 图解HTTP+彩色版 图解HTTP+彩色版 图解HTTP+彩色版

2018-02-15

理解 channels - Kavya Joshi

理解 channels ppt - Kavya Joshi 理解 channels ppt- Kavya Joshi 理解 channels ppt- Kavya Joshi

2018-01-18

golang work steal调度算法

golang work steal调度算法 文档 golang work steal调度算法 文档

2018-01-14

Go 1.9 sync Map 分析图

Go 1.9 sync Map 分析图 Go 1.9 sync Map 分析图 Go 1.9 sync Map 分析图

2017-12-15

Paxos图解(xmid图解)

Paxos图解(xmid图解)

2017-06-12

从PAXOS到ZOOKEEPER分布式一致性原理与实践

PAXOS到ZOOKEEPER分布式一致性原理与实践

2017-06-12

Spring boot restful api demo

Spring boot restful api demo

2017-05-29

java并发编程实战pdf及源码

java并发编程实战pdf及源码

2017-05-24

jstorm集成kafka插件demo

jstorm集成kafka插件demo

2017-04-29

storm集成kafka插demo.zip

storm集成kafka插件demo

2017-04-29

Storm 上手 demo 例子 演示

Storm demo 例子 案例

2017-04-19

Logstash ruby 插件 demo

Logstash ruby 插件 demo

2017-04-05

zookeeper常见应用场景简单实现及ppt

1、master选举:mastersel 2、数据的发布和订阅:subscribe 3、负载均衡:balance 4、分布式锁:lock 5、分布式队列:queue 6、命名服务:nameservice 演示代码下载(代码来自极客学院演示demo):

2017-03-26

zookeeper应用场景实现demo及ppt资料

1、master选举:mastersel 2、数据的发布和订阅:subscribe 3、负载均衡:balance 4、分布式锁:lock 5、分布式队列:queue 6、命名服务:nameservice 资料来自极客学院

2017-03-25

空空如也

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

TA关注的人

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