- 浏览: 2253265 次
- 性别:
- 来自: 北京
最新评论
-
yidongnan:
跟 spring boot 配合的例子可以使用这个库https ...
GRPC原理解析 -
kyo472083100:
写得很好,感谢楼主解释得很清晰
Mongodb中Mapreduce特性与原理 -
lanhz:
对于三个节点:1、2、3,如果2向1广播投给2(即2自己),1 ...
Zookeeper选举过程描述与状态迁移 -
Bll:
厉害了
GRPC原理解析 -
QING____:
xiatiandebaofengyu 写道有个问题:发布者在发 ...
Redis编程实践【pub/sub】
文章列表
Health接口,内部有个设计实现,当health接口的status不是UP时,访问health接口的http状态码为503,这个方式也挺好,对于一些工具而言(比如nginx 健康检查)比较方便,因为通过状态码就可以知道服务的健康情况。但是有时候,我们更希望通过health接口的返回内容来判断起实际状态,这个时候如果状态码不是200的话,可能影响请求解析。
我们可以通过如下代码,来自定义health接口的status与http状态码的关系。
@Bean
@ConditionalOnProperty("management.health ...
1、如果你的springboot应用打包成“可执行jar”,我们通过可以借助springboot launchscript优雅关闭。
2、如果你的springboot应用是普通jar,通过“java -jar”启动,那么优雅关闭的方式需要外部脚本去控制。
不过无论如何,我们希望做一件事情,就是在应用即将退出之前,关闭tomcat时,让tomcat不再接收新请求、但是已经接收的请求尽可能执行完毕。
为了达成这个设计目标,我们需要自定义tomcat链接器设置,主要思想是:当应用发出ContextClosedEvent时,关闭tomcat的链接处理器 ...
Springboot 2.0之后,Rest接口序列化的时候有些小问题需要注意,主要是Date类型,原版本序列化话为long型时间戳,薪版本将会序列化为一个utc时间字符串。为了保持接口兼容、以及对其他解析程序的便捷,我们简单修改一下配置即可。
spring.jackson.time-zone=GMT+08:00
spring.jackson.serialization.write-dates-as-timestamps=true
Java线程中yield与join方法的区别
- 博客分类:
- JAVA
转自Importnew,原文请参考:Java Concurrency...
长期以来,多线程问题颇为受到面试官的青睐。虽然我个人认为我们当中很少有人能真正获得机会开发复杂的多线程应用(在过去的七年中,我得到了一个机会),但是理解多线程 ...
leetcode刷题学习(9)
- 博客分类:
- leetcode
前言:考虑到本人是能力有限,算法题解只能示例一种本人能够理解和实现的方式,可能不是最优的。
一、随机数索引(题号:398)
给定一个可能含有重复元素的整数数组,要求随机输出给定的数字的索引。 您可以假设给定的数字一定存在于数组中。
注意:数组大小可能非常大。 使用太多额外空间的解决方案将不会通过测试。
示例:
int[] nums = new int[] {1,2,3,3,3};
Solution solution = new Solution(nums);
// pick(3) 应该返回索引 2,3 或者 4。每个索引的返回概率应该相等。
so ...
leetcode刷题学习(8)
- 博客分类:
- leetcode
前言:考虑到本人是能力有限,算法题解只能示例一种本人能够理解和实现的方式,可能不是最优的。
一、前K个高频元素(题号:347)
描述:给定一个非空的整数数组,返回其中出现频率前K高的元素。
示例 1:
输 ...
leetcode刷题学习(7)
- 博客分类:
- leetcode
前言:考虑到本人是能力有限,算法题解只能示例一种本人能够理解和实现的方式,可能不是最优的。
一、寻找重复数(题号:287)
描述:给定一个包含 n + 1 个整数的数组 nums,其数字都在 1 到 n 之间(包括 1 和 n) ...
leetcode刷题学习(6)
- 博客分类:
- leetcode
前言:考虑到本人是能力有限,算法题解只能示例一种本人能够理解和实现的方式,可能不是最优的。
一、实现Trie(前缀树)(题号:208)
描述:实现一个前缀树Trie,包含insert、search和startWith三个主要操作。
示例:
Trie trie = new Trie();
trie.insert("apple");
trie.search("apple"); // 返回 true
trie.search("app"); // 返回 false
trie.startWit ...
leetcode刷题学习(5)
- 博客分类:
- leetcode
前言:考虑到本人是能力有限,算法题解只能示例一种本人能够理解和实现的方式,可能不是最优的。
一、相交链表(题号:160)
描述:编写一个程序,找到两个单链表相交的起始节点。
提示:前提是两个单向链表,而且肯定相交。
解题思路:此题比较简单,既然总是相交,我们可以先计算两个链表的长度,从对齐处开始逐个比较。
public class TestMain {
public static void main(String[] args) {
}
private static ListNode execute(L ...
leetcode刷题学习(4)
- 博客分类:
- leetcode
前言:考虑到本人是能力有限,算法题解只能示例一种本人能够理解和实现的方式,可能不是最优的。
一、从前序与中序遍历序列构造二叉树(题号:105)
描述:根据一棵树的前序遍历与中序遍历构造二叉树。
...
leetcode刷题学习(3)
- 博客分类:
- leetcode
前言:考虑到本人是能力有限,算法题解只能示例一种本人能够理解和实现的方式,可能不是最优的。
一、矩阵置零(题号:73)
描述:给定一个m(列) * n(行)的矩阵,如果一个元素为0,则将其所在的行和列的所有元素都设为0。请使用原地算法。
提示:原地算法,不能额外的使用新的矩阵。
示例一:
输入:
[
[1,1,1],
[1,0,1],
[1,1,1]
]
输出:
[
[1,0,1],
[0,0,0],
[1,0,1]
]
示例二:
输入:
[
[0,1,2,0],
[3,4,5,2],
...
leetcode刷题学习(2)
- 博客分类:
- leetcode
前言:考虑到本人是能力有限,算法题解只能示例一种本人能够理解和实现的方式,可能不是最优的。
一、括号生成(题号:22)
描述:给出n代表生成括号的对数,请写出一个函数,使其能够生成所有可能的并且有效 ...
leetcode刷题学习(1)
- 博客分类:
- leetcode
前言:考虑到本人是能力有限,算法题解只能示例一种本人能够理解和实现的方式,可能不是最优的。
一、两数之和(题号:1)
描述:给定一个整数数组nums和一个目标值target,请在该数组中找出和为目标值的两个整数,并返回它们的数组下标。(假定,数组中中数字不重复,和值等于target的情况只需要一种即可)
示例:
给定 nums = [2,7,11,15],target = 9
则返回[0,1],因为nums[0] + nums[1] = 9
解题思路之一:使用hashMap保存数组元素,并逐个遍历,如果与当前元素的差值也在map中,则返回。
pub ...
iftop指令比较简单,主要是查看网络流量。如下为“iftop -n”执行结果:
"=>"和“<=”分表表示流量方向,左边第一列是本机的IP, 第二列为远端地址。后面三列,分别表示“2S、10S、40S”时间内的平 ...
netstat与ss指令学习
- 博客分类:
- linux
netstat与ss指令都是用来查看网络连接相关的,我们逐个介绍,希望日后工作中能够有所帮助。
一、netstat
1、netstat:默认展示所有的socket连接。稍后介绍相关信息的含义。
2、netstat -r:展示内核的路由表信息,基本用不到
# netstat -r
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
default ip-10-0-9-1.cn- 0. ...