`
cfyme
  • 浏览: 276393 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论
文章列表
         昔日携程不足夸,        今朝故障思无涯,       春风得意冰李恋,        返利就用淘粉吧。    
第一类:请求无响应,浏览器始终处于等待状态。 定位方法:kill -3或者jstack先分析线程堆栈,找到当前block的线程。 常见于:外部接口调用无返回或者网络IO阻塞无响应;死锁;死循环;……。   第二类:宕机,进程挂掉。 ...
最近关注了一些缓存框架的特性和实现,包括OSCache、JCS、Ehcache、Memcached等等,公司的两个缓存框架,以及一个标准JSR 107(JCache),发现一些诸多类同的方面。如果你不够熟悉以上,不妨先看看这两篇文章:《OSCache框架源码解析》和《Ehcache详细解读》,再看下面的内容也许会有更多想法。之后再思考,如果要自己去实现一套缓存框架,需要考虑哪些东西?1、为哪些数据做缓存? 模型对象,这在业务逻辑层面最常见。 数据库查询结果集。 页面缓存、页面片段缓存。 运算结果集,尤其对于幂等性服务。 外部接口查询结果。   2、缓存框架的核心:   缓 ...
大型WEB互联网应用都是在市场的锤炼中成长的,以前提到过性能需求的驱动对于架构的影响,一个1M PV和一个100M PV的网站肯定是不一样的。这里仅仅给出几个典型的例子,兴许你对此能有收获。   初期,只有简单的应用服务器 ...
一个网站就像一个人,存在一个从小到大的过程。养一个网站和养一个人一样,不同时期需要不同的方法,不同的方法下有共同的原则。本文结合我自已14年网站人的经历记录一些架构演变中的体会。 1:积累是必不可少的 架构师不是一天练成的。 1999年,我作了一个个人主页,在学校内的虚拟空间,参加了一次主页大赛,几个DREAMWEAVER的页面,几个TABLE作布局,一个DB连接,几行PHP的代码嵌入在HTML中,再用FTP传到服务器上就可以给别人展示一个网站。 2000年,个人主页已经不能满足好奇,在当时的网管中心管起几台机器,作起网线水晶头,用ALL PEOPLE SEEMS TO NEED DA ...
eclipse调优 一般在不对eclipse进行相关设置的时候,使用eclipse总是会觉得启动好慢,用起来好卡,其实只要对eclipse的相关参数进行一些配置,就会有很大的改善。 加快启动速度 1.在eclipse启动的时候,它总是会搜索让其运行的jre,往往就是这个搜索过程让eclipse启动变慢了。(没设置时,等2-3s出现进度条,设置后直接出现进度条) 只要在eclipse.ini中加入-vm的参数就可以了 2.取消所有启动时要激活的插件(在用时激活也一样)和其它的相关的在启动时执行的操作。  

Java GC 日志详解

    博客分类:
  • JVM
YoungGC日志解释如下(图片源地址:这里) :   FullGC(图片源地址:这里): 一目了然,一图胜千言   转载:http://blog.csdn.net/alivetime/article/details/6895537
jstl没有if,else 可用下面的标签实现此功能: <c:choose> <c:when test=""> 如果 </c:when> <c:otherwise>  否则 </c:otherwise> </c:choose>   如下面的代码: <c:choose> <c:when test="${empty obj.target}"> <img src=&q ...
jquery ajax 提交到后台 乱码解决方案:   设置:contentType: "application/x-www-form-urlencoded; charset=utf-8",    function modifyAddress(){ var params_save = $('#addressForm').serialize(); var addressId = $("#j_addressId").val(); $.ajax({ url:'/mall/modifyAddress', type:'POST', ...
这里分享的是一个分布式分析系统的Master内存消耗状况的优化,有些比较特定的优化未必适用于其他系统,但是从这一系列优化过程中,应该能带给其他系统在做设计时提前考虑一点优化点。          下面先描述一下背景,看了背景可以对后续的优化点可以比较清楚一些,注意,部分设计仅适用于大量计算中,会牺牲可维护性来换取性能提升。最后一点优化应该是比较有通用性意义的。 背景:          开放平台每天产生大量的调用日志,希望能够从海量日志中即时的去分析业务指标和系统运行状况。当前实现的是类似MapReduce的设计,不过Master
发现很多人没办法高效地解决问题的关键原因是不熟悉工具,不熟悉工具也还罢了,甚至还不知道怎么去找工具,这个问题就大条了。我想列下我能想到的一个Java程序员会用到的常用工具。一、编码工具1.IDE:Eclipse或者IDEA,熟悉尽可能多的快捷键,《
首先,我们要定义下什么是“锁的粒度”:所谓粒度就是作用范围,锁的粒度就是锁的作用范围。数据库中锁的粒度从高到低依次划分为:数据库、表、页、行。什么是死锁,顺带说一下吧,当多个操作竞争资源,每个操作都无 ...
本文主要讲述如何在 awk 中实现 SQL 的常用操作,当做个简单的 awk 入门分享。虽然文中部分 awk 会有其它更简洁高效的 shell 命令去完成,亦或是其它语言去完成,但这都不在本文的讨论范畴。 注:本文所用到的两个测试文件 user、consumer,分别模拟两张 SQL 表: user 表,字段: id name  addr 1 zhangsan hubei 3 lisi tianjin 4 wangmazi guangzhou 2 wangwu beijing
现象: 6台4核机器load 全部在30以上,cpu使用us在90%, mem使用在90%,swap使用了100K,机器缓慢,前台浏览器页面打开缓慢,超时后白屏。措施: top, shift+h ,shift + p, 找出消耗cpu时间最多的线程ID,dump 堆栈信息,找到该线程,看在做什么,发现有多个线程在执行同一个方法。该方法内有一个循环,从一个node节点向上找其父节点,并不断将该节点数据放入List,猜测该节点的父节点ID肯定与该节点形成死循环了,导致while不能跳出。修改代码限制向上寻找的层级,达到一定数量后,从循环中跳出,重新发布后,问题解决。 总结:1,排查cpu消耗类故 ...
Hashmap是一种非常常用的、应用广泛的数据类型,最近研究到相关的内容,就正好复习一下。网上关于hashmap的文章很多,但到底是自己学习的总结,就发出来跟大家一起分享,一起讨论。 1、hashmap的数据结构 要知道hashmap是什么,首先要搞清楚它的数据结构,在java编程语言中,最基本的结构就是两种,一个是数组,另外一个是模拟指针(引用),所有的数据结构都可以用这两个基本结构来构造的,hashmap也不例外。Hashmap实际上是一个数组和链表的结合体(在数据结构中,一般称之为“链表散列“),请看下图(横排表示数组,纵排表示数组元素【实际上是一个链表】)。  从图中我们可以看到一个h ...
Global site tag (gtag.js) - Google Analytics