240 发简信
IP属地:北京
  • 可动态配置的 Schedule 设计

    1. 背景 定时任务是实际开发中常见的一类功能,例如每天早上凌晨对前一天的注册用户数量、渠道来源进行统计,并以邮件报表的方式发送给相关人员。相信这样的需求,每个开发伙伴都处理...

  • 120
    基于 Java 线程栈排查问题

    除日志外,还有没有别的方式跟踪线上服务问题呢?或者,跟踪并排除日志里无法发现的问题? 方法当然是有的,就是通过现场快照定位并发现问题。我们所说的现场,主要指这两方面: Jav...

  • 120
    Java 函数式编程

    前些年 Scala 大肆流行,打出来 Java 颠覆者的旗号,究其底气来源,无非是函数式和面向对象的“完美结合”,各式各样的“语法糖”,但其过高的学习门槛,又给了新来者当头一...

  • Java 注解

    Java注解是Java5引入的重要语言特性之一,它可以提供描述程序所需元数据信息,而这些信息是无法使用Java语言进行表达的。 注解的引入可以使我们能够使用编译器来验证格式,...

  • Java 反射详解

    项目所有演示代码见:源码 1. Java类型系统 获取Java类型系统,主要有两个方式:一种是传统的RTTI(Run-Time Type Identification),它假...

  • Java 枚举详解

    1. 枚举基本特征 关键词enum可以将一组具名值的有限集合创建成一种新的类型,而这些具名的值可以作为常规程序组件使用。 枚举最常见的用途便是替换常量定义,为其增添类型约束,...

  • Java 异常处理

    1. Java异常体系 Java异常体系设计的目的在于通过使用少量代码,实现大型、健壮、可靠程序。 1.1. 异常处理 异常处理是Java中唯一正式的错误报告机制。异常处理机...

  • 120
    架构设计--配置信息管理

    0. 配置信息 配置信息特指程序启动时对程序进行配置的信息,常见的如服务端口、数据库连接信息、线程池信息等。 在系统启动时,程序会通过不同的配置方案,主动获取配置信息,以完成...

  • 120
    战术模式--领域事件

    使用领域事件来捕获发生在领域中的一些事情。 领域驱动实践者发现他们可以通过了解更多发生在问题域中的事件,来更好的理解问题域。这些事件,就是领域事件,主要是与领域专家一起进行知...

  • 战术模式--领域服务

    在建模时,有时会遇到一些业务逻辑的概念,它放在实体或值对象中都不太合适。这就是可能需要创建领域服务的一个信号。 1 理解领域服务 从概念上说,领域服务代表领域概念,它们是存在...

  • 120
    战术模式--实体

    在问题空间中存在很多具有固有身份的概念,通常情况下,这些概念将建模为实体。 实体是具有唯一标识的概念,找到领域中的实体并对其进行建模是非常重要的环节。如果理解一个概念是一个实...

  • 战术模式--值对象

    值对象虽然经常被掩盖在实体的阴影之下,但它却是非常重要的 DDD 概念。 值对象不具有身份,它纯粹用于描述实体的特性。处理不具有身份的值对象是很容易的,尤其是不变性与可组合性...

  • 120
    战术模式简介

    战术模式包含若干构造块模式,以便能够构建有效的领域模型。 战术模式严重依赖于领域模型和通用语言,通过技术模式将领域模型和通用语言中的概念映射到代码实现中。随着模型的进化,代码...

个人介绍
Dubbo 最早实战者,现转战 Spring Cloud ,构建高并发、高性能、高可用系统;DDD 实战者,以解决互联网复杂业务场景;长链挑战者,深入研究 Socket 、线程、锁、并发、分布式等