springboot应用启动原理(一) 将启动脚本嵌入jar

2018-03-02
阅读 6 分钟
15.3k
Spring BootTakes an opinionated view of building production-ready Spring applications. Spring Boot favors convention over configuration and is designed to get you up and running as quickly as possible.

【修炼内功】[JVM] 深入理解JVM之ClassLoader

2018-03-01
阅读 10 分钟
13.3k
Java在诞生之初便提出 "Write Once, Run Anywhere",各提供商发布很多不同平台的虚拟机,这些虚拟机都可以载入并执行同平台无关的字节码。

OkHttp之ApplicationInterceptors与NetworkInterceptors

2018-02-06
阅读 5 分钟
9.3k
OKHttp对于安卓童鞋来说已经非常熟悉,几乎天天都会与之打交道。Server端虽然用的最多的还是Apache的HttpClient,但OKHttp以其简洁、方便的API也受到越来越多童鞋的关注。

基于redis的分布式任务管理

2018-01-30
阅读 7 分钟
7.3k
业务背景 系统中有各种定时任务,需要满足以下要求: 定时任务需要能够动态增删改查 需要能够设置任务的有效时间范围(只在此范围内执行) 任务执行周期需要能够灵活配置 需要能够轻松接入各种任务实现 需要能够灵活配置任务实现的运行参数 系统为分布式集群,需要保证同一时刻同一任务只能被一个节点执行,同时增删改动...

基于redis的分布式RateLimiter(限流)实现

2018-01-23
阅读 6 分钟
43.1k
系统需要对接某IM厂商rest接口,向客户端推送消息(以及其他IM业务)该厂商对rest接口调用有频率限制:总rest调用9000次/30s;消息推送600次/30s系统为分布式集群,需要控制整个分布式集群总的接口调用频率满足以上限制

300行kotlin带你玩儿转微信跳一跳

2018-01-21
阅读 1 分钟
3.4k
元旦前后微信发布了小游戏跳一跳,一时间红遍大江南北,坐着跳、站着跳、走着跳,坐车跳、上厕所跳、开外挂跳...鄙人对游戏并不感冒,直到有一天身边所有人都在跳,于是乎...

基于redis的分布式锁实现

2018-01-20
阅读 5 分钟
72.6k
随着业务越来越复杂,应用服务都会朝着分布式、集群方向部署,而分布式CAP原则告诉我们,Consistency(一致性)、 Availability(可用性)、Partition tolerance(分区容错性),三者不可得兼。

Guava RateLimiter源码解析

2018-01-17
阅读 7 分钟
46.5k
限流 限流的目的是通过对并发访问/请求进行限速,或者对一个时间窗口内的请求进行限速来保护系统,一旦达到限制速率则可以拒绝服务、排队或等待、降级等处理

ELKF平台搭建过程

2018-01-16
阅读 8 分钟
7.5k
日志主要包括系统日志、应用程序日志和安全日志。系统运维和开发人员可以通过日志了解服务器软硬件信息、检查配置过程中的错误及错误发生的原因。经常分析日志可以了解服务器的负荷,性能安全性,从而及时采取措施纠正错误。通常,日志被分散的储存不同的设备上。如果你管理数十上百台服务器,你还在使用依次登录每台机...

离散点最小(凸)包围边界查找

2017-10-24
阅读 8 分钟
6.9k
很早之前项目中有一需求,需要用一条闭合曲线将离散坐标点勾勒出来,根据Darel Rex Finley的程序,实现了最小凸多边形边界查找(关于凸多边形及凹多边形的定义见 凸多边形 及 凹多边形)

为什么有时候spring mvc的interceptor会执行两次

2017-10-24
阅读 4 分钟
10.3k
spring mvc的拦截器大家应该都不陌生,可以在进入响应controller之前以及之后进行一些处理。但有些情况下,拦截器中的preHandle方法总会执行两次,这是为何?