-
Front Notes
前端知识点
HTML知识
基本元素属性的定义熟悉,比如 DOCTYPE;
HTML基本结构组成?header 的作用是什么?
<script>、<script async>和<script defer>的区别?
cookie的定义和它的作用;
我们在开发过程中为何要将CSS的<link> 写在 <head>...
2018-10-26 22:41:12 |
Front
-
Guava Sort Group
场景
有时候 SQL 查询会有很多限制。
所以借助 Guava 进行分组排序等功能。
例子
比如查询 Person 的记录列表,要求按照 cardId 进行分组,选出这个分组最小的 createTime 和 最大的 updateTime。
查询得结果,还需要包含当前 Person 的对应所有 remark 列表信息。
这个直接使用 SQL 查询会导致很难实现和维护。
实战
m...
2018-10-25 05:40:20 |
Java
-
vmstat
vmstat
vmstat命令是最常见的Linux/Unix监控工具,可以展现给定时间间隔的服务器的状态值,包括服务器的CPU使用率,内存使用,虚拟内存交换情况,IO读写情况。这个命令是我查看Linux/Unix最喜爱的命令,一个是Linux/Unix都支持,二是相比top,我可以看到整个机器的CPU,内存,IO的使用情况,而不是单单看到各个进程的CPU使用率和内存使用率(使用场景不一样)...
2018-10-10 02:10:29 |
Tool
-
LMbench
LMbench
LMbench, Tools for Performance Analysis.
LMbench
2018-10-10 02:10:29 |
Tool
-
JVM FULL GC 生产问题 III-多线程执行队列的封装实现
情景回顾
我们在上一篇 JVM FULL GC 生产问题笔记 中提出了如何更好的实现一个多线程消费的实现方式。
没有看过的小伙伴建议看一下。
本来以为一切都可以结束的,不过又发生了一点点意外,这里记录一下,避免自己和小伙伴们踩坑。
生产者-消费者
原来的实现无法复用。
java 实现
接口定义
public interface IQueueService<T> {...
2018-10-08 15:36:46 |
Java
-
JVM FULL GC 生产问题 II-如何定位内存泄露?
情景回顾
我们在上一篇 JVM FULL GC 生产问题笔记 中提出了如何更好的实现一个多线程消费的实现方式。
没有看过的小伙伴建议看一下。
本来以为一切都可以结束的,不过又发生了一点点意外,这里记录一下,避免自己和小伙伴们踩坑。
生产-消费者模式
简介
上一节中我们尝试了多种多线程方案,总会有各种各样奇怪的问题。
于是最后决定使用生产-消费者模式去实现。
实现如下:
这里...
2018-10-08 15:36:46 |
Java
-
JVM FULL GC 生产问题笔记
故事的开始
早晨 8 点多,同事给我发了一条消息。
“跑批程序很慢,负载过高,上午帮忙看一下。”
我一边走路,一遍回复好的,整个人都是懵的,一方面是因为没睡饱,另一方面是因为对同事的程序一无所知。
而这,就是今天整个故事的开始。
问题的定位
到了公司,简单了解情况之后,开始登陆机器,查看日志。
一看好家伙,最简单的一个请求 10S+,换做实时链路估计直接炸锅了。
于是想到两种...
2018-10-08 15:36:46 |
Java
-
JVM-Profile-36
引言
研发人员在遇到线上报警或需要优化系统性能时,常常需要分析程序运行行为和性能瓶颈。
Profiling技术是一种在应用运行时收集程序相关信息的动态分析手段,常用的JVM Profiler可以从多个方面对程序进行动态分析,如CPU、Memory、Thread、Classes、GC等,其中CPU Profiling的应用最为广泛。
CPU Profiling经常被用于分析代码的执行热点...
2018-10-08 15:36:46 |
Java