关闭
当前搜索:

财富坊cff888: bump-the-pointer 和 TLABs 加速内存分配

HotSpot虚拟机使用了两种技术来加快内存分配。他们分别是是”bump-the-pointer“和“TLABs(Thread-Local Allocation Buffers)”。Bump-the-pointer技术跟踪在伊甸园空间创建的最后一个对象。这个对象会被放在伊甸园空间的顶部。如果之后再需要创建对象,只需要检查伊甸园空间是否有足够的剩余空间。如果有足够的空间,对象就会被创建在伊甸园空间,...
阅读(60) 评论(0)

CMS和G1的对比分析

1、CMS收集器  CMS收集器是一种以获取最短回收停顿时间为目标的收集器。基于“标记-清除”算法实现,它的运作过程如下:1)初始标记  2)并发标记 3)重新标记  4)并发清除  初始标记、从新标记这两个步骤仍然需要“stop the world”,初始标记仅仅只是标记一下GC Roots能直接关联到的对象,熟读很快,并发标记阶段就是进行GC Roots Tracing,而重新标记阶段则是为了...
阅读(64) 评论(0)

对G1垃圾回收器的理解

1:了解G1G1的第一篇paper(附录1)发表于2004年,在2012年才在jdk1.7u4中可用。oracle官方计划在jdk9中将G1变成默认的垃圾收集器,以替代CMS。为何oracle要极力推荐G1呢,G1有哪些优点?首先,G1的设计原则就是简单可行的性能调优开发人员仅仅需要声明以下参数即可:-XX:+UseG1GC -Xmx32g -XX:MaxGCPauseMillis=200其中-X...
阅读(45) 评论(0)

java 垃圾回收算法与常见的垃圾回收器

一、垃圾回收算法        在确定了哪些垃圾可以被回收后,垃圾收集器要做的事情就是开始进行垃圾回收,但是这里面涉及到一个问题是:如何高效地进行垃圾回收。由于Java虚拟机规范并没有对如何实现垃圾收集器做出明确的规定,因此各个厂商的虚拟机可以采用不同的方式来实现垃圾收集器,所以在此只讨论几种常见的垃圾收集算法的核心思想。1.Mark-Sweep(标记-清除)算法       这是最基础的垃圾回收...
阅读(40) 评论(3)

各种json工具类对比

fastJson的优势是在json转化为对象的时候比较快,而对象转化为json格式的字符串的时候性能上是没什么优势的,反而是最差的。结论:在做了初始化的情况下GSON的速度都是最快的。在使用GSON或jackJson做Json处理时最好有个全局的解析对象,不要每次调用的时候都去生成那样对性能的影响很大,另外经过测试,这里面没有线程安全问题。fastJson在json转化为对象的应用场景下性能比较突...
阅读(128) 评论(2)

Alibaba fastjson 序列化与反序列化

fastjson在官网的定义号称最小最快 多态的json序列化工具。fastjson采用独创的算法,将parse的速度提升到极致,超过所有json库,包括曾经号称最快的jackson。并且还超越了google的二进制协议protocol buf。JSON这个类是fastjson API的入口,主要的功能都通过这个类提供。下面是这个类的重要几个方法介绍:序列化APIpackage com.aliba...
阅读(161) 评论(2)

Logstash 配置总结

#整个配置文件分为三部分:input,filter,output#参考这里的介绍 https://www.elastic.co/guide/en/logstash/current/configuration-file-structure.htmlinput {  #file可以多次使用,也可以只写一个file而设置它的path属性配置多个文件实现多文件监控  file {    #type是给结果...
阅读(130) 评论(0)

ElasticSearch 入门实例

ELK由Elasticsearch、Logstash和Kibana三部分组件组成; Elasticsearch是个开源分布式搜索引擎,它的特点有:分布式,零配置,自动发现,索引自动分片,索引副本机制,restful风格接口,多数据源,自动搜索负载等。 Logstash是一个完全开源的工具,它可以对你的日志进行收集、分析,并将其存储供以后使用 kibana 是一个开源和免费的工具,它可以为 Logstash 和 ElasticSearch 提供的日志分析友好的 Web 界面,可以帮助您汇总、分析和搜索重要数据...
阅读(120) 评论(1)

线程池原理

占位...
阅读(101) 评论(0)

eclipse使用generator插件问题汇总

问题一: 在Eclipse中使用Mybatis的自动生成对象的工具去生成Java对象时,选中配置文件,右键生成时出现 "Unexpected error while running MyBatis Generator. Exception getting JDBC Driver"...
阅读(118) 评论(1)

Linux查看日志 tail cat sed 等命令

linux命令...
阅读(175) 评论(1)

Zookeeper之Zab协议

ZAB:ZooKeeper的Atomic Broadcast协议,能够保证发给各副本的消息顺序相同。 Zookeeper使用了一种称为Zab(ZookeeperAtomic Broadcast)的协议作为其一致性复制的核心,其特点为高吞吐量、低延迟、健壮、简单,但不过分要求其扩展性。...
阅读(135) 评论(0)

Java代码实现负载均衡五种算法

前言:       负载均衡是为了解决并发情况下,多个请求访问,把请求通过提前约定好的规则转发给各个server。其中有好几个种经典的算法。在用java代码编写这几种算法之前,先来了解一下负载均衡这个概念。1.概念    负载,从字面意思可以分析,是指后端server可以承受的压力。这个一方面是服务器的性能,另一方面就是代码的质量了。    均衡,就是说把服务部署在多态server,如何调度这些资...
阅读(404) 评论(1)

activemq 关于死信队列的配置应用

需求场景:       由于测试环境应用复杂的原因,造成了jms死信队列一直挤压很多数据,从而导致存储爆满,进而造成了各个客户端不能正常发送消息。针对这些死信队列,一般都没有利用价值的。        为了避免某队列的死信队列的挤压,而使整个jms不可用,我们选择了通过ActiveMQ的配置,直接丢弃掉死信队列的消息。缺省死信队列(Dead Letter Queue)叫做ActiveMQ.DLQ所...
阅读(429) 评论(1)

maven 检查jar依赖冲突和版本冲突 以及解决

问题描述:          项目中用到dubbo实现分布式远程调用服务,整合dubbo的时候,遇到一个Spring的错误,NoSuchMethodError的问题。由于导入了不同版本的jar包造成的。就是说,当我发布了一版2.0jar的时候里面有个我新写的方法 adduser,但是1.0里面没有,pom没有及时更新jar,这样就会有NoSuchMethodError。我们怎么知道是否是jar包冲...
阅读(247) 评论(0)

Java并发实战:CountDownLatch实现多线程抽题

1.定义CountDownLatch这个类能够使一个线程等待其他线程完成各自的工作后再执行。CountDownLatch是通过一个计数器来实现的,计数器的初始值为线程的数量。每当一个线程完成了自己的任务后,计数器的值就会减1。当计数器值到达0时,它表示所有的线程已经完成了任务,然后在闭锁上等待的线程就可以恢复执行任务。2.区别CyclicBarrierCountDownLatch和CyclicBa...
阅读(167) 评论(1)

Java并发实战:Callable+FutureTask实现多线程判分汇总

需求分析:      总结自己项目中用到多线程的地方,之前一级考试系统,在考生交卷的过程中,需要做很多事情,导致交卷过程很慢。当然不能让考生一直等待交卷这个过程,于是使用了Callable+FutureTask来优化交卷的速度。下面有优化的伪代码,仅供参考。介绍callable和futuretask:1.callableCallable位于java.util.concurrent包下,它也是一个接...
阅读(202) 评论(0)

使用jstack命令分析线程状态

系统调优,看到CPU一直满的,一定是代码不符合规范了。怎样去定位代码问题,如何查看占用CPU较高的线程呢?1.top命令     在linux环境下,可以通过top命令查看各个进程的cpu使用情况,默认按cpu使用率排序。 这样可以查看到进程的PID,我们通过PID进一步查看每个进程 。2.通过top -Hp PID       可以查看该进程下各个线程的cpu使用情况。可以看出哪个PID的线程占...
阅读(255) 评论(1)

Dubbo 服务调用原理浅析

dubbo概念dubbo原理dubbo应用场景    Dubbo概念:       Dubbo是一个分布式服务框架,致力于提供高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方案。简单的说,dubbo就是个服务框架,如果没有分布式的需求,其实是不需要用的,只有在分布式的时候,才有dubbo这样的分布式服务框架的需求。Dubbo缺省协议采用单一长连接和NIO异步通讯,适合于小数据量大并发的...
阅读(573) 评论(2)

Activemq实现Mysql与SolrCloud同步策略

应用场景:            商品数量很多,搜索功能为了保证用户体验,就使用了solrcloud,可是后面添加的商品可以入库,如何导入到solr库当中呢。我们用到了mq实现。再插入商品之后,发送一个商品id到队列上面去,是生产者。solr服务负责消费,监听商品添加消息,接收消息后,将对应的商品信息同步到索引库。 代码: 1.生产者 编码 @Autowired pr...
阅读(668) 评论(1)
194条 共10页1 2 3 4 5 ... 下一页 尾页
    个人资料
    • 访问:304538次
    • 积分:15804
    • 等级:
    • 排名:第816名
    • 原创:194篇
    • 转载:0篇
    • 译文:0篇
    • 评论:5389条
    博客专栏