摘要:
当我们在JVM中运行一段程序代码,JVM初始运行的时候都会分配好Method Area(方法区)和Heap(堆),而JVM每遇到一个线程,就为其分配一个Program Counter Register(程序计数器), VM Stack(虚拟机栈)和Native Method Stack (本地方法栈),当线程... 阅读原文
2019-08-16 09:15:02 阅读(2375) 评论(0)
摘要:
有这样一个场景,在HBase中需要分页查询,同时根据某一列的值进行过滤。
不同于RDBMS天然支持分页查询,HBase要进行分页必须由自己实现。据我了解的,目前有两种方案, 一是《HBase权威指南》中提到的用PageFilter加循环动态设置startRow实现,详细见这里。但这种方法效率比较低,且有冗... 阅读原文
2019-08-16 08:21:02 阅读(2400) 评论(0)
摘要:
Word中,书签功能常用于查找、定位、标记特定字符或段落,对于篇幅较大的文档,此功能非常实用。下面,将介绍通过Java程序来添加及删除Word书签的方法。示例要点包括:
1. 添加书签
1.1 给指定段落添加书签
1.2 给指定字符串添加书签
2. 删除书签
2.1删除书签
... 阅读原文
2019-08-16 08:06:04 阅读(2395) 评论(0)
摘要:
一、序言
从学校出来到实习,发现学校学的东西太过基础,难于直接运用于工作中。而且工作中,现在都以web开发为主,学校开了web开发相关课程。自己学的不够深入,所以本人自学JavaWeb开发,介于学习巩固之需,把自己的学习过程和想法总结成笔记、形成文章,便于今后回顾。正所谓温故而知新,可以... 阅读原文
2019-08-16 06:44:03 阅读(2563) 评论(0)
摘要:
1. SpringCloud高并发性能优化
1.1. 前言
当系统的用户量上来,每秒QPS上千后,可能就会导致系统的各种卡顿,超时等情况,这时优化操作不可避免
1.2. 优化步骤
第一步:优化大SQL,对于多表关联的SQL,当单表数据几百上千万行时,执行可能会达到好几秒,对微服务系统来说,我是不建议joi... 阅读原文
2019-08-16 06:00:02 阅读(2361) 评论(0)
摘要:
雪花算法初步完成后,我们讨论了几个位运算的写法,大家知道雪花算法一旦确定后,很多数字都是定死的,比如机器占多少位,或者时间向左位移多少,这些在算法具体逻辑确定后就不会变了。那么写成最后的数字和用位运算计算出来有什么区别呢?
其实没有区别,我们的程序分为编译期和运行期,我们直接把程序编译好,然后查看clas... 阅读原文
2019-08-16 00:00:07 阅读(2364) 评论(0)
摘要:
并行化流被分成多个块,每个块独立处理,结果在最后汇总。
CPU密集型代码如下:
private long countPrimes(int max) {
return range(1, max).parallel().filter(this::isPrime).count();
}... 阅读原文
2019-08-15 21:30:01 阅读(2379) 评论(0)
摘要:
文章转载自:http://www.pythonheidong.com/blog/article/1151/
1、面向对象编程的三大特性是什么?
(1).继承:
继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法。对象的一个新类可以从现有的类中派生,这个过程称为类继承。新... 阅读原文
2019-08-15 21:12:03 阅读(2432) 评论(0)
摘要:
上一篇文章已经完成了ZooKeeper的基本搭建和使用的介绍,现在开始用代码说话。参考 https://zookeeper.apache.org/doc/current/javaExample.html ,但对场景和代码都做了简化,只实现基本的Watcher功能。
1 场景设计
目的是体验ZooKe... 阅读原文
2019-08-15 20:46:02 阅读(2277) 评论(0)
摘要:
双重检查锁定(Double check locked)模式经常会出现在一些框架源码中,目的是为了延迟初始化变量。这个模式还可以用来创建单例。下面来看一个 Spring 中双重检查锁定的例子。
这个例子中需要将配置文件加载到 handlerMappings中,由于读取资源比较耗时,所以将动作放到真正需要 h... 阅读原文
2019-08-15 20:40:36 阅读(2598) 评论(0)