LeetCode Palindrome Number
Problem Determine whether an integer is a palindrome. Do this without extra space. 即返回一个数是否是回数。例如:1,1221,12321是回数,负数不是回数。题目特别提醒,不要使用额外的空间,即不要考虑转换成String来处理。 Java 实现 /** * Determine whether ...
Problem Determine whether an integer is a palindrome. Do this without extra space. 即返回一个数是否是回数。例如:1,1221,12321是回数,负数不是回数。题目特别提醒,不要使用额外的空间,即不要考虑转换成String来处理。 Java 实现 /** * Determine whether ...
Problem Reverse digits of an integer. Example1: x = 123, return 321 Example2: x = -123, return -321 Note: The input is assumed to be a 32-bit signed integer. Your function should return 0 when t...
研究背景 上篇(Httpcomponents-core 从池中获取连接代码解析)研究中,我们知道,Httpcomponents-client底层维护了一个socket连接池,对于同一个地址,默认只可以建立2个连接。如果连接不及时释放,就会造成连接池中无可用的连接获取,从而导致请求等待(阻塞)。因此,我们需要关注连接池释放的逻辑。 释放方式 一个比较常见的方式就通过EntityUti...
最近使用Httpcomponents-client过程中遇到一个线程阻塞的问题。通过jstack dump线程发现,是block在AbstractConnPool的getPoolEntryBlocking中,于是决定研究一下Httpcomponents-client的源码。 问题背景 邮件发送线程阻塞,jstack dump发现如下问题: 可见,阻塞发生在Httpcompone...
刚发布的Java9中,有一个特性是新增了快速构造不可变集合的工厂函数。官方说明如下: JEP 269: Convenience Factory Methods for Collections Makes it easier to create instances of collections and maps with small numbers of elements. N...
很久没更新博客,本想写篇关于Java9 集合工厂函数的博客,却没想到阴差阳错先遇到Lombok与Java9的兼容性问题。 我在一个试验用的工程里,想做一些关于Java9新特性的试验,该工程原本是依赖lombok的。结果,编译时,原有的使用@Slf4j注解的的类报编译错误。 Error:(18, 1) java: 程序包 javax.annotation 不可见 (程序包 ...
通信流程概括 任务部署时,xd-admin和container之间通过zookeeper的节点监听通信。container监听zk deployment节点,执行部署。同事绑定kafka message consumer和reactor subscriber。 任务启动时,xd-admin和container通过kafka通信。container端消费到kafka的message...
对于保存在.properties文件中的敏感信息,支持采用加密的方式保存。然后在程序中解密使用。 实现方案 采用自定义PropertySourceLoader的方式,在.properties配置文件加载期,遍历值,遇到指定格式的值,则执行解密操作。具体代码如下: /** * @author li.hzh * @date 2017-04-10 13:46 */ @Slf4j pu...
Spring XD on Yarn在使用过程中发现不论是YarnClient还是AppMaster对Yarn HA的支持都不好。在Yarn的RM重启或切换的情况下,YarnClient必须修改配置文件中的RM地址才可以继续使用,即使在配置文件中配置了Yarn HA的相关配置也不生效。而AppMaster同样会因为长时间监测不到心跳而被Yarn Kill掉,导致XD服务挂掉。 因此,此调研的目...
SpringXD on Yarn支持Container分组。可以更好的控制admin和container分配。 控制组内成员 以组单位整体控制生命周期 动态创建组 重启失败的容器 实际上,XD on Yarn有内置分组admin和container。结合例子使用: 查看分组列表: bin/xd-yarn clustersinfo -a application_...