
Java
chang_harry
Java高级软件工程师Hadoop研究者数据挖掘研究者大数据分析处理研究者IT项目管理人员
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
几个面试算法题
题目一,由外向内顺时针打印一个方阵的各元素。比如1 2 3 45 6 7 89 10 11 1213 14 15 16输出1,2,3,4,8,12,16,15,14,13,9,5,6,7,11,10.package com.harry;import org.testng.annotations.Test;public class testClo...原创 2020-01-27 13:07:13 · 236 阅读 · 0 评论 -
Java程序运行时占用CPU过高问题的排查
为了模拟出CPU占用过高的问题,特地写了一个死循环的简单测试程序。如下在CentOS上编译执行。#javac TestDeadLoop.java#java TestDeadLoop用top命令找到CPU占用过高的进程ID。#top可以看到现在总的%CPU:34.4us。PID为26932的java进程的%CPU达到了101.0%。用ps -aux | gr...原创 2019-12-28 20:04:38 · 1206 阅读 · 0 评论 -
Kafka高可靠性测试失败,为什么?
CentOS7上,JDK 1.8.0_231-b11,zookeeper-3.4.6,kafka_2.12-2.3.0测试multi-broker的例子https://kafka.apache.org/quickstart#quickstart_multibroker。启动zookeeper> bin/zookeeper-server-start.sh config/zookee...原创 2019-12-11 16:01:24 · 230 阅读 · 1 评论 -
JAVA8十大新特性详解(精编)
https://www.jianshu.com/p/0bf8fe0f153b原创 2019-11-26 21:29:23 · 203 阅读 · 0 评论 -
函数式接口和lambda表达式
函数式接口函数式接口可以理解为一个抽象类,在接口里面可以定义类,定义方法体。只有在Java8里面才能在接口定义方法体,其他Java版本是不能支持的。函数接口只能定义唯一的抽象方法(但是可以有多个非抽象方法的接口),所以函数式接口是非常脆弱的,只要开发者在该接口中多添加一个函数,那么该接口就不再是函数式接口,运行时就会报错。为了克服这种层面的脆弱性,并显式地告知某个接口是函数式接口,Java...原创 2019-11-26 20:52:39 · 199 阅读 · 0 评论 -
Spring Cloud Document翻译(五)--Eureka
第三部分。Spring Cloud Netflix1.0.0.BUILD-快照该项目通过自动配置和Spring环境以及其他Spring编程模型习惯用法为Spring Boot应用程序提供Netflix OSS集成。通过一些简单的注释,您可以快速启用和配置应用程序内的常见模式,并使用经过实战考验的Netflix组件构建大型分布式系统。提供的模式包括服务发现(Eureka),断路器(Hystr...翻译 2019-07-26 12:18:48 · 395 阅读 · 0 评论 -
Spring Cloud Document翻译(六)--断路器:Hystrix客户端
13.断路器:Hystrix客户端Netflix创建了一个名为Hystrix的库,用于实现断路器模式。在微服务架构中,通常有多层服务调用,如以下示例所示:图13.1。微服务图较低级别的服务中的服务故障可能导致级联故障一直到用户。当对特定服务的调用超过circuitBreaker.requestVolumeThreshold(默认值:20个请求)并且故障百分比大于circ...翻译 2019-07-26 14:22:47 · 190 阅读 · 0 评论 -
Spring Cloud Document翻译(七)--Hystrix超时和Ribbon客户端
15. Hystrix超时和Ribbon客户端使用包装Ribbon客户端的Hystrix Command时,要确保将Hystrix超时配置为长于配置的Ribbon超时,包括可能进行的任何可能的重试。例如,如果您的Ribbon连接超时为一秒,并且Ribbon客户端可能会重试该请求三次,那么您的Hystrix超时应该略大于三秒。15.1如何包含Hystrix仪表板要在项目中包含Hystri...翻译 2019-07-26 16:10:36 · 234 阅读 · 0 评论 -
Spring Cloud Document翻译(八)--客户端负载均衡器:Ribbon
16.客户端负载均衡器:RibbonRibbon是一个客户端负载均衡器,可以让您对HTTP和TCP客户端的行为进行大量控制。Feign已使用Ribbon,因此,如果您使用@FeignClient,此部分也适用。Ribbon中的一个核心概念是指定客户端的概念。每个负载均衡器都是一组组件的一部分,这些组件一起工作以按需联系远程服务器,并且该集合具有您作为应用程序开发人员提供的名称(例如,通过使...翻译 2019-07-26 16:41:11 · 232 阅读 · 0 评论 -
MySQL配置主从复制
初始环境有一台机器A安装了MySQL5.7.20作为主数据库服务器,它已经运行了一段时间,具有小规模的数据。一个Web应用使用Spring+JPA+Hibernate来访问这个数据库。目标在机器B上安装MySQL作为slave数据库服务器,与主数据库形成主从复制架构。修改Web应用使读写分离,所有读操作走slave数据库,所有写操作走master数据库。步骤1.安装备库在机...原创 2019-08-29 17:31:13 · 404 阅读 · 0 评论 -
Spring Cloud Document翻译(四)--Spring Cloud Config 2
https://cloud.spring.io/spring-cloud-static/Greenwich.SR2/multi/multi__serving_alternative_formats.html6.提供替代格式来自环境端点的默认JSON格式非常适合Spring应用程序使用,因为它直接映射到Environment抽象上。如果您愿意,可以通过向资源路径添加后缀(“.yml”,“。y...翻译 2019-07-26 11:16:34 · 285 阅读 · 0 评论 -
Spring Cloud Document翻译(二)--Spring Cloud Commons
原文链接:https://cloud.spring.io/spring-cloud-static/Greenwich.SR2/multi/multi__spring_cloud_commons_common_abstractions.html3. Spring Cloud Commons:共通的抽象服务发现,负载平衡和断路器等模式是所有Spring Cloud客户端可以使用的公共抽象层,与...翻译 2019-07-26 09:13:06 · 1582 阅读 · 0 评论 -
Spring Cloud Document翻译(一)--Cloud Native Application & Spring Cloud Context
原文档链接:https://cloud.spring.io/spring-cloud-static/Greenwich.SR2/multi/multi_spring-cloud.html特性Spring Cloud专注于为典型用例提供良好的开箱即用的经验,并为其他用例提供可扩展机制。Distributed/versioned configuration 分布式/版本化配置 Servi...翻译 2019-07-25 18:31:58 · 466 阅读 · 0 评论 -
hadoop-1.1.1 eclipse插件编译
在ubuntu上进行hadoop相关的开发,需要在eclipse上安装hadoop开发插件。最新释放出的hadoop包含源码的包,以hadoop-1.1.1为例,包含相关的eclipse插件的源码,因此可以针对自己的eclipse版本来编译一个hadoop的eclipse插件,我的eclipse的版本代号为indigo,以此为例,下面详细介绍插件的编译安装过程。一. 下载hadoop-1.1.转载 2013-03-11 17:15:32 · 536 阅读 · 0 评论 -
为什么说AWT是重量级控件,而Swing是轻量级控件?
AWT 是Abstract Window ToolKit (抽象窗口工具包)的缩写,这个工具包提供了一套与本地图形界面进行交互的接口。AWT 中的图形函数与操作系统所提供的图形函数之间有着一一对应的关系,我们把它称为peers。 也就是说,当我们利用 AWT 来构件图形用户界面的时候,我们实际上是在利用操作系统所提供的图形库。由于不同操作系统的图形库所提供的功能是不一样的,在一个平台上存在的功能在转载 2013-04-03 22:59:31 · 2547 阅读 · 1 评论 -
ThreadLocal类的用途
JDK从1.2开始就有了ThreadLocal这个类。位于java.lang包中。JDK文档上这样写的:This class provides thread-local variables. These variables differ from their normal counterparts in that each thread that accesses one (via its原创 2013-04-04 12:07:05 · 1171 阅读 · 0 评论 -
Java泛型动态类型安全问题( Collections.checkedInterface )
因为可以向Java SE5之前的代码传递泛型容器,所以旧式代码仍旧有可能会破坏您的容器,Java SE5的java.util.Collections中有一组便利工具,可以解决在这种强况下的类型检查问题,它们是:静态方法checkedCollection()、checkedList()、checkedMap()、checkedSet()、checkedSortedMap()和checkedSorte转载 2013-04-04 20:48:07 · 1963 阅读 · 0 评论 -
明确Java几个基本问题
Java中接口是可以多继承的,类只能有一个父类。接口可以有多个父接口,类只能有一个父类。当然,类可以实现多个接口。原创 2013-04-04 14:47:01 · 482 阅读 · 0 评论 -
最强线程转换图
最强线程转换图转载 2013-04-13 18:52:01 · 580 阅读 · 0 评论 -
JVM的常用参数
-Xms10m 设置Java堆的最小值-Xmx 10m 设置Java堆的最大值-Xmn10m 设置新生代的容量-Xss128k 设置栈的最大容量-XX:PermSize=10M 设置方法区的容量-XX:MaxPermSize=10M 设置方法区的最大容量-XX:MaxDirectMemorySize=10M 设置直接内存的容量,如果不设置,默认和Java堆的最大原创 2013-08-23 10:17:45 · 706 阅读 · 0 评论 -
JAVA中final的作用
final在Java中并不常用,然而它却为我们提供了诸如在C语言中定义常量的功能,不仅如此,final还可以让你控制你的成员、方法或者是一个类是否可被覆写或继承等功能,这些特点使final在Java中拥有了一个不可或缺的地位,也是学习Java时必须要知道和掌握的关键字之一。final成员 当你在类中定义变量时,在其前面加上final关键字,那便是说,这个变量一旦被初始化便不可改变,这里不原创 2013-10-07 10:48:37 · 596 阅读 · 0 评论 -
Session学习
http://www.cnblogs.com/xdp-gacl/p/3855702.html一、Session简单介绍 在WEB开发中,服务器可以为每个用户浏览器创建一个会话对象(session对象),注意:一个浏览器独占一个session对象(默认情况下)。因此,在需要保存用户数据时,服务器程序可以把用户数据写到用户浏览器独占的session中,转载 2016-05-19 22:17:20 · 305 阅读 · 0 评论 -
重识Spring(一)
2007年时学过一段Spring。仅仅是学,并没有用来做过什么项目,所以很快就忘了。前几天,有个公司面试问起了Spring, 我几乎想不起来关于Spring的所有东西了。问了Spring的几种事务模式,我一个都没想起来,很是汗颜。我也自诩是一名Java工程师,怎么连SSH都不会。所以有时间还是拎出来再仔细研究一番。 我学过Spring1.2, 现在已经发展到3.1了,差了好几原创 2011-12-03 19:57:49 · 589 阅读 · 0 评论