腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
工具
TVP
腾讯云架构师技术同盟
文章/答案/技术大牛
搜索
搜索
关闭
发布
首页
学习
活动
专区
工具
TVP
腾讯云架构师技术同盟
返回腾讯云官网
涤生的博客
专注各种互联网技术分享,Java、Netty、JVM、中间件等。 欢迎关注。
专栏成员
举报
47
文章
94261
阅读量
14
订阅数
订阅专栏
申请加入专栏
全部文章(47)
jvm(16)
java(10)
编程算法(10)
企业(9)
其他(6)
socket编程(5)
微服务(5)
linux(4)
文件存储(4)
数据库(3)
ide(3)
api(3)
存储(3)
go(2)
node.js(2)
云数据库 SQL Server(2)
sql(2)
eclipse(2)
apache(2)
spring(2)
网站(2)
http(2)
分布式(2)
网络安全(2)
jdk(2)
dubbo(2)
rpc(2)
gcc(2)
微信(2)
负载均衡(1)
tomcat(1)
负载均衡缓存(1)
消息队列 CMQ 版(1)
人工智能(1)
spring boot(1)
zookeeper(1)
tcp/ip(1)
安全(1)
数据分析(1)
https(1)
client(1)
push(1)
server(1)
服务端(1)
连接(1)
搜索文章
搜索
搜索
关闭
用 RSocket 解决响应式服务之间的的通讯-Part 3:基于 RSocket 进行抽象
socket编程
rpc
spring
spring boot
api
如果你看过本系列的前两篇文章,应该已经已经发现 RSocket 提供了一些底层的 API。可以直接使用交互模型中的方法进行操作,而且可以没有任何限制来回发送帧。这些基础的 API 为我们提供了许多自由和控制权,但是它可能会引入额外的问题,尤其是与微服务之间的契约相关的问题。
涤生
2019-11-18
1.2K
0
JVM 内存分析神器 MAT: Shallow Heap Vs Retained Heap 你理解的对吗?
eclipse
ide
Eclipse MAT(内存分析器工具)是分析 JVM 堆 Dump 文件的强大工具。当尝试分析内存相关的问题时,它非常方便。在 Eclipse MAT 内存分析的报告中会显示对象两种类型的 Heap 信息:
涤生
2019-10-30
4.7K
0
JVM 内存分析神器 MAT: Incoming Vs Outgoing References 你真的了解吗?
eclipse
ide
编程算法
了解 Eclipse MAT 中 incoming and outgoing 引用之间的区别。
涤生
2019-10-30
8.9K
0
CMS GC:CMS 废弃了,该怎么办呢?
企业
jdk
java
jvm
api
流行的 CMS( Concurrent Mark Sweep) GC 算法在 JDK 9 中被废弃了。根据 JEP-291 中的说明,为了减轻 GC 代码的维护负担以及加速新功能开发,决定在 JDK9 中废弃CMS GC。
涤生
2019-10-12
3K
0
如何减少长时间的 GC 停顿?
jvm
长时间的 GC 停顿对应用程序是不利的,它会影响服务的 SLA,进而导致糟糕的用户体验,并对核心应用程序的服务造成严重损害。因此,在本文中,我列出了导致长时间 GC 停顿的关键原因以及解决这些问题的可能的解决方案。
涤生
2019-10-08
1.5K
0
用 RSocket 解决响应式服务之间的通讯-Part 2:负载均衡和可恢复性[译]
socket编程
微服务
负载均衡
负载均衡缓存
本文是《用 RSocket 解决响应式服务之间的通讯》微型系列的第二篇文章,它将帮助你熟悉 RSocket——一种可能会彻底改变机器之间通讯的新二进制协议。在以下段落中,我们将讨论在云环境中的负载平衡问题以及介绍可恢复性能力,可恢复性能力有助于解决网络问题,尤其是在 IOT 系统中。
涤生
2019-10-08
931
0
用 RSocket 解决响应式服务之间的的通讯-Part 1[译]
socket编程
api
微服务
http
本文是《用 RSocket 解决响应式服务之间的通讯》微型系列的第一篇文章,它将帮助你熟悉 RSocket——一种可能会彻底改变机器之间通讯的新二进制协议。在以下各段中,我们首先讨论当前分布式系统的问题,然后说明如何使用 RSocket 解决这些问题。本文聚焦于微服务之间的通信与 RSocket 交互模型。
涤生
2019-10-08
1.4K
0
G1 GC:一个神奇的 JVM 参数,减少你的内存消耗
编程算法
java
jvm
现代 Java 应用程序有大量的字符串操作,例如,Web 服务 API 调用(JSON、REST、SOAP 等)、外部数据源调用(SQL、从 DB 返回的数据等)以及文本解析和文本创建等。因此,字符串对象很容易就占据了约至少 30% 的内存。然而,这些 String 对象中的大多数都是重复的,这些字符串的重复浪费了大量内存。因此,优化重复字符串对象浪费的内存是 Java 非常受欢迎的功能之一。在 G1 中,Java 就对此功能做了支持。
涤生
2019-10-08
13.2K
0
服务刚启动就 Old GC,要闹哪样?
企业
jvm
最近有个同学说他的服务刚启动就收到两次 Full GC 告警, 按道理来说刚启动,对象应该不会太多,为啥会触发 Full GC 呢?
涤生
2019-07-22
1.4K
0
简单的 HTTP 调用,为什么时延这么大?
http
https
编程算法
网络安全
apache
最近项目测试遇到个奇怪的现象,在测试环境通过 Apache HttpClient 调用后端的 HTTP 服务,平均耗时居然接近 39.2ms。可能你乍一看觉得这不是很正常吗,有什么好奇怪的?其实不然,我再来说下一些基本信息,该后端的 HTTP 服务并没有什么业务逻辑,只是将一段字符串转成大写然后返回,字符串长度也仅只有 100 字符,另外网络 ping 延时只有 1.9ms 左右。因此,理论上该调用耗时应该在 2-3ms 左右,但为什么平均耗时 39.2ms 呢?
涤生
2019-07-17
1.2K
0
HTTP 与 TCP 的 KeepAlive 是一个东西吗?
apache
socket编程
jdk
tomcat
数据库
KeepAlive 已经不是什么新鲜的概念了,HTTP 协议中有 KeepAlive 的概念,TCP 协议中也有 KeepAlive 的概念。二者的作用是不同的。本文将详细的介绍 HTTP 中的 KeepAlive,介绍 Tomcat 在 Server 端是如何对 KeepAlive 进行处理,以及 JDK 对 HTTP 协议中 KeepAlive 的支持。同时会详细介绍 TCP 中的 KeepAlive 机制以及应用层的心跳。
涤生
2019-07-10
1.6K
0
JVM 源码解读之 CMS 何时会进行 Full GC
gcc
企业
文件存储
jvm
在文章 JVM 源码解读之 CMS GC 触发条件 中分析了 CMS GC 触发的五类情况,并且提到 CMS GC 分为 foreground collector 和 background collector。 不管是 foreground collector 还是 background collector 使用的都是 mark-sweep 算法,分阶段进行标记清理,优点很明显-低延时,但最大的缺点是存在碎片,内存空间利用率低。因此,CMS 为了解决这个问题,在每次进行 foreground collector 之前,判断是否需要进行一次压缩式 GC。
涤生
2019-06-19
1.8K
0
JVM 源码解读之 CMS GC 触发条件
企业
经常有同学会问,为啥我的应用 Old Gen 的使用占比没达到 CMSInitiatingOccupancyFraction 参数配置的阈值,就触发了 CMS GC,表示很莫名奇妙,不知道问题出在哪?
涤生
2019-06-14
2.5K
0
Zookeeper 集群如何高可用部署?
zookeeper
Zookeeper 我想大家都不陌生,在很多场合都听到它的名字。它是 Apache 的一个顶级项目,为分布式应用提供一致性高性能协调服务。可以用来做:配置维护、域名服务、分布式锁等。有很多开源组件,尤其是中间件领域,使用 Zookeeper 作为配置中心或者注册中心。例如,它是 Hadoop 和 HBase 的重要组件,是 Kafka 的管理和协调服务,是 Dubbo 等服务框架的注册中心等。
涤生
2019-05-28
5.4K
4
深入剖析分布式监控 CAT —— 消息文件存储
tcp/ip
数据分析
消息队列 CMQ 版
文件存储
存储
CAT(Central Application Tracking),是基于 Java 开发的分布式实时监控系统。CAT 目前在美团点评的产品定位是应用层的统一监控组件,在中间件(RPC、数据库、缓存、MQ 等)框架中得到广泛应用,为各业务线提供系统的性能指标、健康状况、实时告警等。
涤生
2019-05-17
828
0
讨论在 Linux Control Groups 中运行 Java 应用程序的暂停问题
编程算法
jvm
java
文件存储
node.js
本篇原文来自 LinkedIn 的 Zhenyun Zhuang,原文:Application Pauses When Running JVM Inside Linux Control Groups[1],在容器化的进程中,或多或少会给现有应用程序带来一些问题,这篇文章讲的是 LinkedIn 在使用 cgroups 构建容器化产品过程中,发现资源限制策略对 Java 应用程序性能会产生一些影响,文章深入分析问题根本原因,并给出解决方案。笔者看过后,觉得非常赞,因此翻译后献给大家,希望对大家有帮助。
涤生
2019-05-15
2.3K
0
讨论在 Linux Control Groups 中运行 Java 应用程序的暂停问题
编程算法
jvm
java
文件存储
node.js
本篇原文来 LinkedIn 的 Zhenyun Zhuang,原文:Application Pauses When Running JVM Inside Linux Control Groups[1],在容器化的进程中,或多或少会给现有应用程序带来一些问题,这篇文章讲的是 LinkedIn 在使用 cgroups 构建容器化产品过程中,发现资源限制策略对 Java 应用程序性能会产生一些影响,文章深入分析问题根本原因,并给出解决方案。笔者看过后,觉得非常赞,因此翻译后献给大家,希望对大家有帮助。
涤生
2019-05-15
2.1K
0
一次 Netty 堆外内存泄露问题排查
java
linux
编程算法
ide
最近在做一个基于 websocket 的长连中间件,服务端使用实现了 socket.io 协议(基于websocket协议,提供长轮询降级能力) 的 netty-socketio 框架,该框架为 netty 实现,鉴于本人对 netty 比较熟,并且对比同样实现了 socket.io 协议的其他框架,这个框架的口碑要更好一些,因此选择这个框架作为底层核心。
涤生
2019-05-14
2.4K
0
数据库中间件那些事儿
sql
数据库
云数据库 SQL Server
网络安全
分布式
互联网当下的数据库拆分过程基本遵循的顺序是:垂直拆分、读写分离、分库分表(水平拆分)。每个拆分过程都能解决业务上的一些问题,但同时也面临了一些挑战。
涤生
2019-05-13
1.1K
0
CMS GC 新生代默认是多大?
jvm
猜一猜按照这样的 JVM 参数配置,YoungGen(新生代)是多大呢? 你一定会觉得这还不简单吗,NewRatio 默认为 2,也就是 YoungGen 与 OldGen(老年代)的比例是 1:2,那 YoungGen 大小应该是 2048M/3 = 672M。 真的是这样吗?jmap -heap pid 看看
涤生
2019-05-13
2.6K
0
点击加载更多
社区活动
Python精品学习库
代码在线跑,知识轻松学
立即查看
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
立即体验
技术创作特训营·精选知识专栏
往期视频·干货材料·成员作品 最新动态
立即查看
领券
问题归档
专栏文章
快讯文章归档
关键词归档
开发者手册归档
开发者手册 Section 归档