摘要:
前言 记得前段时间我们生产上的一个网关出现了故障。 这个网关逻辑非常简单,就是接收客户端的请求然后解析报文最后发送短信。 但这个请求并不是常见的 HTTP ,而是利用 Netty 自定义的协议。 问题是有天突然发现网关解析报文出错,查看了客户端的发送日志也没发现问题,最后通过日志发现收到了许多不完整 阅读全文
摘要:
iostat查看linux硬盘IO性能 rrqm/s: 每秒进行 merge 的读操作数目。即 delta(rmerge)/s wrqm/s: 每秒进行 merge 的写操作数目。即 delta(wmerge)/s r/s: 每秒完成的读 I/O 设备次数。即 delta(rio)/s w/s: 每 阅读全文
摘要:
下面是Java异常类的组织结构,红色区域的异常类表示是程序需要显示捕捉或者抛出的。 Throwable Throwable是Java异常的顶级类,所有的异常都继承于这个类。 Error,Exception是异常类的两个大分类。 Error Error是非程序异常,即程序不能捕获的异常,一般是编译或者 阅读全文
摘要:
@Transactional注解支持9个属性的设置,这里只讲解其中使用较多的三个属性:readOnly、propagation、isolation。其中propagation属性用来枚举事务的传播行为,isolation用来设置事务隔离级别,readOnly进行读写事务控制。 一、readOnly读 阅读全文
摘要:
基本用法 awk是一个强大的文本分析工具,简单来说awk就是把文件逐行读入,(空格,制表符)为默认分隔符将每行切片,切开的部分再进行各种分析处理 awk命令格式如下 [-F 分隔符]是可选的,因为awk使用空格,制表符作为缺省的字段分隔符,因此如果要浏览字段间有空格,制表符的文本,不必指定这个选项, 阅读全文
摘要:
同步与阻塞 同步和异步是针对应用程序和内核的交互而言的。 同步:执行一个操作之后,进程触发IO操作并等待(阻塞)或者轮询的去查看IO的操作(非阻塞)是否完成,等待结果,然后才继续执行后续的操作。 异步:执行一个操作后,可以去执行其他的操作,然后等待通知再回来执行刚才没执行完的操作。 非阻塞是针对于进 阅读全文
摘要:
手动启动 参数说明: -Xms128m 设置的是JVM堆最小内存为128m -Xmx256m 设置的是JVM堆最大内存为256m 这里个问题是-Xmx指定的内存不包括jvm运行中使用的本地内存,所以如果有NIO等涉及到本地内存的情况时,该java进程占用的总内存会超过-Xmx设定的数值 -Xdebu 阅读全文