15 21aspnet

尚未进行身份认证

专注csdn15年,Java JCP会员,公众号:无界编程

等级
TA的排名 10

K8S的横向自动扩容的功能Horizontal Pod Autoscaling

K8S作为一个集群式的管理软件,自动化、智能化是免不了的功能。Google在K8Sv1.1版本中就加入了这个Pod横向自动扩容的功能(HorizontalPodAutoscaling,简称HPA)。HPA与之前的Deployment、Service一样,也属于一种K8S资源对象。HPA的目标是希望通过追踪集群中所有Pod的负载变化情况,来自动化地调整P...

2019-10-29 14:24:01

Java线上程序频繁JVM FGC问题排障与启示

线上Java程序的JVM频繁FGC,现象如图所示:一直持续FGC5次左右,每次耗时1秒多不等。FGC的原因实际上是内存不够用,但是运维反映堆内存是2G,从运维提供的参数看也是。内存实际上一直只用到1G以内。这时候可以自己写一段代码输出堆内存数据,这是最准的:publicclassJVMTest{publicstaticvoidmain(Str...

2019-10-16 17:23:01

Java泛型使用需要小心

这是源自实际开发的一个坑,只是被我简化了。Set<Integer>gs=null;Setgss=newHashSet();gs=gss;gss.add("19");System.out.println(gs);for(inti:g...

2019-10-09 20:31:05

SpringBoot整合Grpc实现跨语言RPC通讯

什么是gRPCgRPC是谷歌开源的基于go语言的一个现代的开源高性能RPC框架,可以在任何环境中运行。它可以有效地连接数据中心内和跨数据中心的服务,并提供可插拔的支持,以实现负载平衡,跟踪,健康检查和身份验证。它还适用于分布式计算的最后一英里,用于将设备,移动应用程序和浏览器连接到后端服务。简单的服务定义:使用ProtocolBuffers定义您的服务,这是一个功能强大的二进制序列化工具...

2019-09-11 09:55:34

度量,跟踪和日志记录

今天,我有幸参加了2017年的分布式追踪峰会,其中有很多来自AWS/X-Ray,OpenZipkin,OpenTracing,Instana,Datadog,Librato等公司的人员,我很遗憾我忘记了这一点。有一次讨论转向了项目范围和定义。跟踪系统是否也应该管理日志记录?什么确实的记录,通过在室内所代表的不同的镜头看?所有各种混凝土系统在哪里适合图片?简而言之,我觉得我们在共享词汇中磕磕...

2019-08-20 19:14:38

适用于软件工程的定律Augustine's laws

奥古斯丁定律(Augustine'slaws)原是诺曼拉尔夫奥古斯丁提出的一系列诙谐的格言,但是实际上用于工程和项目管理,软件开发上也是很有借鉴意义的。他是1975年至1977年担任美国陆军副部长的美国航空航天商人。1984年,他出版了他的定律这本书,和发表在2012年3月“声音与振动”杂志上的一篇关于这个定律的文章。清单法律第一:从母猪的耳朵制作丝绸钱包的最佳方法是从丝绸母猪开...

2019-07-24 11:55:27

不要千言万语,一组漫画让你秒懂最终一致性

直接上图如果你以前看过最终一致性的定义那么你一定会为这幅精彩漫画拍手叫好。你要是不知道什么是最终一致性你可以看看下面的权威定义,当然了网上关于什么是最终一致性的帖子铺天盖地,也许你已经很明白了,即使这样你是不是依然为此图欢呼?最终一致性是分布式理论中的重要,定义如下:最终一致性Eventual consistency最终一致性是分布式计算中使用的一致性模型,用于实...

2019-06-14 18:02:37

分布式系统的现代消息传递

论文《分布式系统的现代消息传递》ModernMessagingforDistributedSytemsLMagnoni通过IOP出版有限公司出版许可物理学学报:会议系列,608卷,第1会议作者电子邮件luca.magnoni@cern.ch作者隶属关系1欧洲核子研究中心,欧洲粒子物理实验室(CERN),瑞士日内瓦引文LMagnoni2...

2019-06-13 15:29:27

经典算法书籍推荐以及算法书排行【算法四库全书】

经典算法书籍推荐以及算法书排行【算法四库全书】作者:无界编程https://linuxstyle.blog.csdn.net/https://blog.csdn.net/21aspnet行文方式:类似《四库全书》截取经典算法书目录和精华篇章版权说明:本文于2019年5月5日首发于CSDN,若有转载请务必保留版权,为了整理编排选择全文内容花费了2019年一个五一的时间。...

2019-05-05 20:14:35

valgrind massif检查长期闲置堆积导致的内存泄露

memcheck内存泄露是线上很严重也是比较常见的故障,内存泄漏问题,一般可以用memcheck工具来检查。http://valgrind.org/docs/manual/mc-manual.htmlMemcheck是一个内存错误检测器。它可以检测C和C ++程序中常见的以下问题。 访问内存不应该,例如超越和不足堆积块,超出堆栈顶部,并在释放后访问内存。 使用未定义的值...

2019-05-02 00:29:09

好理解的Java内存虚假共享(False Sharing)性能损耗以及解决方案

虚假共享(FalseSharing)也有人翻译为伪共享参考https://en.wikipedia.org/wiki/False_sharing在计算机科学中,虚假共享是一种性能降低的使用模式,它可能出现在具有由高速缓存机制管理的最小资源块大小的分布式一致高速缓存的系统中。当系统参与者将定期尝试访问,将永远不会被另一方改变数据,但这些数据共享与数据的高速缓存块被修改,缓存协议可能迫使一...

2019-04-30 19:06:04

你需要知道的高性能并发框架Disruptor原理

Disruptor的小史现在要是不知道Disruptor真的已经很outer了,Disruptor是英国外汇交易公司LMAX开发的一款开源的高性能队列,LMAX Disruptor是一个高性能的线程间消息传递库,它源于LMAX对并发性,性能和非阻塞算法的研究,如今构成了其Exchange基础架构的核心部分。稍后,包括Apache Storm、Camel、Log4j等在内的很多知名项目都集成...

2019-04-30 16:55:10

小而美的Nginx日志分析利器GoAccess

一般会把Nginx的日志导入日志系统进行实时或者准实时的分析,不过不是每个公司都有这样的环境,还有有时候临时就是想分析监控下Nginx,那么GoAccess就很适合你,这块工具小而美,功能很强大。GoAccess是一个开源的实时网络日志分析器和交互式查看器,可以在Linux/Unix系统中的终端或通过浏览器运行。它为需要动态可视化服务器报告的系统管理员提供快速且有价值的HTTP统计信息。...

2019-04-30 11:18:46

Flink在美团的应用与实践听课笔记

本文系《Flink在美团的应用与实践》的听课笔记原始视频视频资源已经在优酷公开:2018.8.11 Flink China Meetup·北京站-Flink在美团的应用与实践作者:刘迪珊@美团1.现状和背景实时平台架构最底层是数据缓存层,可以看到美团测的所有日志类的数据,都是通过统一的日志收集系统收集到Kafka。Kafka作为最大的数据中转层,支撑了美团...

2019-04-29 19:42:31

不同版本浏览器前端标准兼容性对照表以及CORS解决跨域和CSRF安全问题解决方案

CORS也已经成为主流的跨域解决方案,不过CORF也会引发CSRF,本文先分享第三方的一个前端工具箱全面展示那些浏览器版本支持CORS,由于各家浏览器厂商因为各自原因在不同的版本里支持的标准不同,这个工具小而美,可以清晰的比较不同版本浏览器前端技术兼容性对照表。先看图下面这个网站可以很方便的查看不同版本浏览器对CORS的支持力度,IE10,IE11,Chrome,Firefox,Safa...

2019-04-29 17:18:22

Linux内核的红黑树源码实现以及调用

红黑树可以说是程序员经常遇到的一种数据结构,不管是工作还是面试都会涉及,有时候还会让你写一段红黑树代码。本文主要是讲Linux中的红黑树,关于红黑树定义参考wiki:https://en.wikipedia.org/wiki/Red%E2%80%93black_tree其中《算法导论》中的定义最为清晰:红黑树图示:Linux中的红黑树(rbtree)下面...

2019-04-28 19:33:02

Java线上问题排障:Linux内核bug引发JVM死锁导致线程假死

Java本质上还是离不开操作系统,一来Java源码是用C/C++实现的,二来java进程还是需要依附于操作系统和硬件资源,有时候一些问题是操作系统级别导致的,下面的整个事件是源自一则真实的线上案例。过程:JVM死锁导致线程不可用,然后会瞬间起N个线程,当然起再多也是不可用的,因为需要的对象发生死锁,然后耗尽文件句柄导致外部请求也就是TCP连接无法建立产生拒绝服务,看起来就像线程假死...

2019-04-28 15:16:42

Flink 基本原理与生产实践分享【入门必读,概念清晰】

Flink基本原理与生产实践分享【入门必读,概念清晰】https://zh.wikipedia.org/zh-hans/Apache_FlinkApacheFlink是由Apache软件基金会开发的开源流处理框架,其核心是用Java和Scala编写的分布式流数据流引擎。Flink以数据并行和流水线方式执行任意流数据程序,Flink的流水线运行时系统可以执行批处理和流处理程序。此外,Fl...

2019-04-26 10:34:39

一个冷僻的知识点try直接返回finally里的设置null其实无效

先看引用类型的代码:import java.util.HashMap;import java.util.Map;public class trycatchefinally { public static void main(String[] args) { System.out.println(getMap().get("KEY")); } p...

2019-04-26 09:32:37

支撑Java框架的基础技术:泛型,反射,动态代理,cglib

以Spring为例要想看明白他的源码需要彻底理解Java的一些基础技术泛型,反射同时对于一些高级技术例如动态代理,cglib和字节码技术也需要掌握,下面就按章节来一一说清楚这些技术的核心部分,最后手写一个简单的Spring框架。一.静态代码块和非静态代码块以及构造函数的调用顺序静态代码块:https://stackoverflow.com/questions/2420389/s...

2019-04-22 10:29:24

查看更多

CSDN身份
  • 博客专家
勋章 我的勋章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 1024超级勋章
    1024超级勋章
    授予原创文章总数达到1024篇的博主,感谢你对CSDN社区的贡献,CSDN与你一起成长。
  • 勤写标兵Lv2
    勤写标兵Lv2
    授予每个自然周发布4篇到6篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。