随遇而安

随遇而安 关注TA

额,假装这里有签名...

随遇而安

随遇而安

关注TA

额,假装这里有签名...

  • 加入社区3,279天
  • 写了837,964字

首页(共有165文章)

最新发布 最多点击 最多讨论

  • JVM堆内存使用率持续上升的一种排查思路

    原文出处:木杉的博客最近新版本发布后,在运行一段时间后程序突然无响应了,观察监控,发现JVM堆内存占用在某个时间点突然飙升,最终导致应用无响应:重启Tomcat后,应用恢复正常,并且后续时间没有发生内存上涨问题。分析这个JVM内存曲线,他是直线上升的,以前遇到过类似的场景,会导致这种直线(匀速)上升的,一般是一个死循环导致的,如果是普通请求资源泄露的话,上升曲线不会这么平稳,会和请求量有一定的关系......

     917    0    2018-06-04 14:38

  • RocketMQ 源码学习 2 : Namesrv

    原文出处:谢晞鸣1.Namesrv简介Namesrv可以理解为一个注册中心,整个Namesrv的代码非常简单,主要包含两块功能:管理一些KV的配置管理一些Topic、Broker的注册信息2.Namesrv启动过程启动过程主要涉及NamesrvStartup/NamesrvController两个类,NamesrvStartup负责解析命令行的一些参数到各种Config对象中(NamesrvCon......

     1,053    0    2018-06-04 14:38

  • RocketMQ 源码学习 3 :Remoting 模块

    原文出处:谢晞鸣rocketmq-remoting模块是RocketMQ中负责网络通信的模块,被其他所有需要网络通信的模块依赖。它是基于Netty实现的,避免了网络编程很多tricky的问题。首先来看下RocketMQNettyServer的Reactor线程模型,一个Reactor主线程负责监听TCP连接请求,建立好连接后丢给Reactor线程池,它负责将建立好连接的socket注册到selec......

     1,163    0    2018-06-04 14:38

  • 使用logsave将命令输出保存起来

    原文出处:暗无天日如果想要把命令的输出保存到文件中,你会怎么做?一个常用的方法就是使用IO重定向吧ls>/tmp/ls.txt2>&1如果需要在将命令输出保存到文件中的同时还需要将内容也输出到屏幕中的话,那么我们可以使用 tee 命令ls|tee/tmp/ls.txt不过,我今天发现还有一个 logsave 的命令,也可以做到将命令输出保存到文件......

     7,604    0    2018-05-31 11:26

  • MySQL的变量分类总结

    原文出处:潇湘隐者在MySQL中,my.cnf是参数文件(OptionFiles),类似于ORACLE数据库中的spfile、pfile参数文件,照理说,参数文件my.cnf中的都是系统参数(这种称呼比较符合思维习惯),但是官方又称呼其为系统变量(systemvariables),那么到底这个叫系统参数或系统变量(systemvariables)呢?这个曾经是一个让我很纠结的问题,因为MySQL中......

     1,524    0    2018-05-31 11:23

  • numfmt : 让数字变得更容易理解

    原文出处:暗无天日像 ls, df, du 这类命令都带有一个选项可以将数字直接转换成人类容易阅读的形式来展现。比如,直接执行 df 时,容量显示的是多少个块,而当用 df-h 时,容量会根据块的数量转换成G/M/K的形式[lujun9972@T520~]$df文件系统1K-块已用可用已用%挂载点dev19002800......

     1,485    0    2018-05-21 17:19

  • 记一次内存溢出的分析经历 — thrift带给我的痛

    原文出处:Janti说在前面的话朋友,你经历过部署好的服务突然内存溢出吗?你经历过没有看过Java虚拟机,来解决内存溢出的痛苦吗?你经历过一个BUG,百思不得其解,头发一根一根脱落的烦恼吗?我知道,你有过!但是我还是要来说说我的故事………………背景:有一个项目做一个系统,分客户端和服务端,客户端用c++写的,用来收集信息然后传给服务端(客户端的数量还是比较多的,正常的有几千个),服务端用Java写......

     1,139    0    2018-05-21 17:10

  • 每一个shard都需要有个家

    原文出处:iceman1952这是一篇译文,原文(Everysharddeservesahome)于2016-11-11发布在elastic官方博客。译文稍有更改阅读提示文章包含很多gif动图,你可以使用“2345看图王”查看/暂停/回放gif动图的每一帧所有图片都可以在新标签页中查看大图“索引”有时作动词,有时作名词。例如“当索引第一个文档到新的索引中时…”,第一个索引是动词,第二个索引是名词术......

     1,125    0    2018-05-14 14:25

  • Spring 中获取 request 的几种方法,及其线程安全性分析

    原文出处:编程迷思前言本文将介绍在SpringMVC开发的web系统中,获取request对象的几种方法,并讨论其线程安全性。概述在使用SpringMVC开发Web系统时,经常需要在处理请求时使用request对象,比如获取客户端ip地址、请求的url、header中的属性(如cookie、授权信息)、body中的数据等。由于在SpringMVC中,处理请求的Controller、Service等......

     1,035    0    2018-04-16 11:27

  • 使用 Java 注解自动化处理对应关系实现注释代码化

    原文出处:琴水玉概述假设我们要从一个ES索引(相当于一张DB表)查询数据,ES表有order_no,order_type,state等字段,而应用对象则有属性orderNo,orderType,state等。这样,就会面临“将应用对象的属性与ES字段对应起来”的问题。固然可以通过注释来说明,不过这样显得比较生硬。因为注释并不起实际作用,代码里还得写一套映射关系,就会存在注释与代码不一致的情况。那么......

     1,046    0    2018-04-16 11:24

  • 使用 losetup 帮你创建虚拟磁盘

    原文出处:暗无天日linux一切都是文件的特性可以使你把一个文件当成虚拟磁盘来用。步骤如下:1.使用dd创建虚拟磁盘文件。例如,使用下面可以创建一个200M的磁盘ddif=/dev/zeroof=~/HDD.imgbs=1Mcount=2002.使用fdisk对其进行分区[lujun9972@X61~]$fdiskHDD.img欢迎使用fdisk(util-linux2.32)。更改将停留在内存中......

     7,387    0    2018-04-16 11:21

  • 消息队列技术点梳理(思维导图版)

    作者:neoremind出处:http://neoremind.com/2018/03/消息队列技术点梳理/消息队列作为服务/应用之间的通信中间件,可以起到业务耦合、广播消息、保证最终一致性以及错峰流控(克服短板瓶颈)等作用。本文不打算详细深入讲解消息队列,而是体系化的梳理消息队列可能涉及的技术点,起到提纲挈领的作用,构造一个宏观的概念,使用思维导图梳理。 再介绍之前,先简短比较下RPC......

     1,105    0    2018-04-13 16:19

  • 从 Spring Cloud 看一个微服务框架的「五脏六腑」

    原文出处:酷家乐前端团队SpringCloud是一个基于SpringBoot实现的微服务框架,它包含了实现微服务架构所需的各种组件。注:SpringBoot简单理解就是简化Spring项目的搭建、配置、组合的框架。因为与构建微服务本身没有直接关系,所以本文不对SpringBoot进行展开。另外本文有一些例子涉及到Spring和SpringBoot,建议先了解一下Spring和SpringBoot再......

     948    0    2018-04-11 17:59

  • MySQL ERROR 1050 (42S01): Table xxx already exists

    原文出处:潇湘隐者今天遇到一个关于MySQL求助的问题,修改表结构时遇到“ERROR1050(42S01):tablexxxalreadyexits”mysql>ALTERTABLEDAY_BOOK_REPORTADDUNIT_PRICE_PCSDOUBLE(12,2)DEFAULTNULL;ERROR1050(42S01):TABLE'INVGSP/#SQL-IB379'ALREADYEX......

     1,402    0    2018-04-11 17:57

  • 跨平台长连接组件设计及可插拔改造(转载)

    原文出处:宫城背景我们在提出开发跨平台组件之前,iOS和Android客户端分别使用一套长连接组件,需要双倍的人力开发和维护;在产品需求调整上,为了在实现细节上保持一致性也具有一定的难度;Web端与客户端长连接的形式不同,前者使用WebSocket,后者使用Socket,无形中也增加了后端的维护成本。为了解决这些问题,我们基于WebSocket协议开发了一套跨平台的长连接组件。架构介绍组件自上而下......

     1,416    0    2018-04-09 19:06