自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(18)
  • 资源 (7)
  • 收藏
  • 关注

原创 k8s 之 cache缓存机制

Scheduler进行完成调度流程的决策之后,为pod选择了一个node节点,此时还未进行后续的Bind操作,但实际上资源已经分配给该pod, 此时会先更新到本地缓存(),然后再等待apiserver进行数据的广播并且最终被kubelet来进行实际的调度。快照是对Cache某一时刻的复制,随着时间的推移,Cache的状态在持续更新,kube-scheduler在调度一个Pod的时候需要获取Cache的快照。

2022-10-13 11:57:38 2429 1

原创 K8s 之 kube-scheduler 源码学习

调度器通过 kubernetes 的监测(Watch)机制来发现集群中新创建且尚未被调度到 Node 上的 Pod。调度器会将发现的每一个未调度的 Pod 调度到一个合适的 Node 上来运行。调度器会依据下文的调度原则来做出调度选择。过滤打分过滤阶段会将所有满足 Pod 调度需求的 Node 选出来。例如,PodFitsResources 过滤函数会检查候选 Node 的可用资源能否满足 Pod 的资源请求。在过滤之后,得出一个 Node 列表,里面包含了所有可调度节点;

2022-10-13 11:54:41 1264

原创 阻塞队列LinkedBlockingQueue源码分析

涉及到的几个知识点:LinkedBlockingQueue和ArrayBlockingQueue两个阻塞队列的比较 ArrayBlockingQueue是基于循环数组的,实现较为简洁,这里就不详诉了.下面都是对LinkedBlockingQueue进行分析的.LinkedBlockingQueue是基于双向链表的,吞吐量更高. 从尾部插入,从头部读取,先进先出.双向链表: 可以从hea...

2017-10-23 20:00:08 664

原创 JDK源码中的help GC 与 JVM的可达性算法分析

我在研究Jdk源码时,注意到Jdk里面非常多地方会把引用置为null,然后标注help gc.f.next = null很多人很自然的就认为是把next赋值为null了,然后JVM内存空间就释放了, 很多文档和网上的帖子都是这样介绍的, 这是完全错误的.   当然这样理解对平时的Java代码开发也没什么影响,因为平时大家都是在使用Jdk里面的类和方法,不需要自己编写.但是自定义集合类,特别是

2017-10-23 14:52:34 2766 4

原创 Netty源码 Recycler 对象池全面解析

众所周知Netty是一个高性能的NIO通信框架, Netty开发者都是很厉害的, 不仅框架设计很精巧,针对高性能做了很多优化, 很多细节方面都处理的很好. 做中间件用C语言开发当然是速度最快的, 用Java做NIO通信中间件, 需要对java语言有很深的认识, 做到扬长弊短.比如Java的面向对象编程, 提高了开发的效率, 但是面向对象编程的附属品垃圾回收机制, 在高并发场景...

2017-09-30 19:29:58 3786

原创 Istio零信任安全架构设计

istio 零信任 安全架构设计

2023-05-17 19:39:34 697

原创 技术选型思路总结

技术选型方案

2023-05-10 18:03:48 1049

原创 生产问题排查技巧总结

生产问题排查技巧

2023-05-10 17:49:08 742

原创 任务分发技术方案选型

任务分发技术方案选型几种方案对比轮询 polling长轮询 long pollingwebsocketTCP长连接还有一种推拉相结合的方式几种方案对比任务分发或系统交互, 我们很容易可以想到就是两种方式主动推送和被动拉取.push主动推一般需要建立长连接, 也可以通过一个注册中心知道所有的推送地址通过http推送. 优点 : 更加及时, 有任务就可以push. 缺点 : 无法根据对方的消费能力进行判断, 任务量过大可能会把对方压垮.pull被动拉取任务, 一般调用服务的接口或者消费服务

2020-12-14 12:21:38 488

原创 常见责任链模式

责任链设计模式,是一个很经典的设计模式,很多中间件和框架都有它的实践案例.在这里我对自己遇到的几个框架的实现做个简单的总结.1. MyBatis的拦截器2. Spring Mvc的拦截器3. Dubbo的拦截器4. 最经典的Servlet拦截器

2020-07-26 14:03:16 185

原创 思考Netty的领域设计

思考Netty的设计netty领域设计像netty一样的中间件应该考虑什么总结收获最近给小伙伴做一个netty的分享,好久没研究了,又拿出来重新熟悉了一下netty的框架设计。温故还是能知新的。netty领域netty确实很强大,有很多值得我们学习和借鉴的地方,从最早学习这个框架的时候感觉还是从里面的每一个比较细的点去学习,没有由点到面。认识了各种框架,越来越觉得一个好的中间件或框架,应该能专注于解决一个核心领域问题,比如netty要解决的就是java通信问题,屏蔽了底层的通信细节,将复杂的IO线程处

2020-07-26 14:02:10 136

原创 幂等接口

幂等带着以下3个问题来讨论幂等什么是幂等什么时候需要幂等怎么实现幂等1. 什么是幂等google Idempotence 得到以下结果 :Idempotence is the property of certain operations in mathematics and computer science whereby they can be applied multipl...

2019-01-06 15:47:11 555

原创 高效开发习惯

工作中,自己慢慢养成的习惯,先记录下来提供出去的服务接口, 需要特别重视入参的空指针问题. 空指针往往是概率最高的bug. 先问下自己, 这几个入参能否为空: 如果参数不能为空,就需要进行校验,直接抛出参数非法异常.如果入参可以为空, 就要写出兼容空参数的代码,让null参数也能继续走下去。如果改了某些公共的代码,或者是核心的、调用面很广的代码,测试肯定是都要测一遍的, 但这时候很难覆盖测试所有可能情况

2017-10-01 11:06:44 278

原创 几个框架的责任链设计模式简析

责任链设计模式,是一个很经典的设计模式,很多中间件和框架都有它的实践案例. 在这里我对自己遇到的几个框架的实现做个简单的总结.MyBatis的拦截器Spring Mvc的拦截器Dubbo的拦截器最经典的Servlet拦截器

2017-09-30 19:38:32 801

转载 ThreadLocal与WeakReference

为什么ThreadLocalMap中需要使用WeakReference作为key类型? 那么首先需要理解WeakReference的意义。WeakReference是Java语言规范中为了区别直接的对象引用(程序中通过构造函数声明出来的对象引用)而定义的另外一种引用关系。WeakReference标志性的特点是:reference实例不会影响到被应用对象的GC回收行为(即只要对象被除WeakReference对象之外所有的对象解除引用后,该对象便可以被GC回收),只不过在被对象回收之后,refere

2017-09-19 10:28:38 2840 3

原创 nginx 安装问题

The page you are looking for is temporarily unavailable. Please try again later.Something has triggered an error on your website. This is the default error page for nginx that is distributed with Fedora. It is located /usr/share/nginx/html/50x.htmlYou s

2016-09-30 17:18:02 17808 6

原创 Spring源码分析 为什么xml定义的bean优先于注解定义的bean ?

spring中xml和注解定义的bean哪个优先级高, 为什么, 下面一起分析下源码吧

2016-08-21 17:51:56 5882

原创 err max number of clients reached 解决办法

最近在开发的在线考试系统平台,开发中用到redis缓存系统,由于第一次用遇到了不少问题。而且网上的资料都不是很正规统一,查看资料和问题都是很零散。一个月以前,开发中redis出现了“err max number of clients reached”,项目启动失败。当时我重启了项目,修改了redis的最大连接数为无限制,以为问题很简单。现在一个月以后,问题又出现了,项目组的开发人员项目都启

2015-05-15 22:52:25 22547 2

java实现的五子棋

java实现的五子棋小游戏,代码简单明了,都是我自己学习java写的大作业,程序已经编译运行通过。

2013-03-18

java贪吃蛇小游戏

我自己写的一个贪吃蛇小游戏,代码浅显易懂,容易上手和理解。已经编译运行通过。

2013-03-18

JDBC连接SQL server数据库详细全过程

详细介绍了,使用JDBC连接SQLserver数据库的全过程,各种配置各种步骤都非常详细。 仔细看一遍,很容易上手入门。 网上JDBC的教程很多,但是都很杂,很容易出错,这个里面讲解非常好。

2013-01-11

数据库面试题目(很全面哦)

很全面的数据库面试题汇总。 相信自己看一遍,会对数据库方面的面试有很大的帮助。

2013-01-11

JAVA面试常见题目和答案(很全面哦)

全面系统的覆盖了JAVA的一些重点和常见的题目。 有全面的讲解。 仔细看一遍,肯定对面试会有很大的帮助。

2013-01-11

回溯法(C语言课程资源)

理解回溯法的深度优先搜索策略 掌握用回溯法解题的算法框架 (1)递归回溯最优子结构性质 (2)迭代回溯贪心选择性质 (3)子集树算法框架 (4)排列树算法框架

2012-03-19

java编写的快排算法

java程序编写的快排算法quicksort算法

2011-11-23

空空如也

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

TA关注的人

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