摘要: 来源:http://t.cn/EiP42VF 在JAVA程序中,性能问题的大部分原因并不在于JAVA语言,而是程序本身。养成良好的编码习惯非常重要,能够显著地提升程序性能。 1. 尽量在合适的场合使用单例 使用单例可以减轻加载的负担,缩短加载的时间,提高加载的效率,但并不是所有地方都适用于单例,简单 阅读全文
posted @ 2019-06-08 23:39 venblenJan° 阅读(569) 评论(0) 推荐(0) 编辑
摘要: 支付系统 概述 支付系统是连接消费者、商家(或平台)和金融机构的桥梁,管理支付数据,调用第三方支付平台接口,记录支付信息(对应订单号,支付金额等),金额对账等功能,根据不同公司对于支付业务的定位不同大概有几个阶段:第一阶段:支付作为一个(封闭)的、独立的应用系统,为各系统提供支付功能支持。一般来说, 阅读全文
posted @ 2019-06-08 23:37 venblenJan° 阅读(14071) 评论(2) 推荐(3) 编辑
摘要: 一、前言 在分析jdk1.8后的HashMap源码时,发现网上好多分析都是基于之前的jdk,而Java8的HashMap对之前做了较大的优化,其中最重要的一个优化就是桶中的元素不再唯一按照链表组合,也可以使用红黑树进行存储,总之,目标只有一个,那就是在安全和功能性完备的情况下让其速度更快,提升性能。 阅读全文
posted @ 2019-06-08 23:17 venblenJan° 阅读(1238) 评论(0) 推荐(0) 编辑
摘要: 选择机制中的概念 serverId(服务器ID 既 myid) 比如有三台服务器,编号分别是1,2,3。 编号越大在选择算法中的权重越大。 比如有三台服务器,编号分别是1,2,3。 编号越大在选择算法中的权重越大。 zxid(最新的事物ID 既 LastLoggedZxid) 服务器中存放的最大数据 阅读全文
posted @ 2019-06-08 23:11 venblenJan° 阅读(13874) 评论(1) 推荐(4) 编辑
摘要: 在使用Dubbo进行服务化或者整合应用后,假设某个服务后台日志显示有异常,这个服务又被多个应用调用的情况下,我们通常很难判断是哪个应用调用的,问题的起因是什么,因此我们需要一套分布式跟踪系统来快速定位问题,Pinpoint可以帮助我们快速定位问题(当然,解决方案也不止这一种)。 什么是Pinpoin 阅读全文
posted @ 2019-06-08 23:08 venblenJan° 阅读(530) 评论(0) 推荐(0) 编辑
摘要: 一个TCC事务框架需要解决的当然是分布式事务的管理。关于TCC事务机制的介绍,可以参考TCC事务机制简介。http://www.bytesoft.org/tcc-intro TCC事务模型虽然说起来简单,然而要基于TCC实现一个通用的分布式事务框架,却比它看上去要复杂的多,不只是简单的调用一下Con 阅读全文
posted @ 2019-06-08 23:04 venblenJan° 阅读(980) 评论(0) 推荐(0) 编辑
摘要: 一、概述 Lucene是一个Java语言编写的利用倒排原理实现的文本检索类库 Solr是以Lucene为基础实现的文本检索应用服务。Solr部署方式有单机方式、多机Master-Slaver方式、Cloud方式。 SolrCloud是基于Solr和Zookeeper的分布式搜索方案。当索引越来越大, 阅读全文
posted @ 2019-06-08 22:53 venblenJan° 阅读(269) 评论(0) 推荐(0) 编辑