一文分析架构思维之建模思维

阿里妹导读 软件里的要素不是凭空出现的,都是源于实际的业务。本文从软件设计本源到建模案例系统的介绍了作者对于建模的思维和思考。 一、诸内必形于诸外…

hello hello 发布于 2024-05-01

“打工人”的自我修养 – 如何在 30 秒内把“问题”讲清楚

对有迫切意愿把”问题”讲清楚的同学,建议按本文走完”想清楚”-“讲明白”-“要资源”这个流程。 为什么要把问题讲清楚 假设你正在吃炒面,突然收到 Boss 打过来的电话,问你线上出现的故障是怎么回事,这时的你会是什么状态?以第三方视角,大概有以下几种情况: 你懵了(半天没声音):线上什么时候出问题了?大脑一片空白,我是谁,我在哪?…

hello hello 发布于 2024-05-01

这些年背过的面试题——网络和操作系统基础篇

网络基础 TCP三次握手 三次握手过程: 客户端——发送带有SYN标志的数据包——服务端一次握手Client进入syn_sent状态; 服务端——发送带有SYN/ACK标志的数据包——客户端二次握手服务端进入syn_rcvd; 客户端——发送带有ACK标志的数据包——服务端三次握手连接就进入Established状态; 为什么三次:…

hello hello 发布于 2024-04-30

Dubbo 源码分析 – SPI 机制

1.简介 SPI 全称为 Service Provider Interface,是 Java 提供的一种服务发现机制。SPI 的本质是将接口实现类的全限定名配置在文件中,并由服务加载器读取配置文件,加载实现类。这样可以在运行时,动态为接口替换实现类。正因此特性,我们可以很容易的通过 SPI 机制为我们的程序提供拓展功能。SPI…

hello hello 发布于 2024-04-28

Dubbo 源码分析 – 服务导出

1.服务导出过程 本篇文章,我们来研究一下 Dubbo 导出服务的过程。Dubbo 服务导出过程始于 Spring 容器发布刷新事件,Dubbo 在接收到事件后,会立即执行服务导出逻辑。整个逻辑大致可分为三个部分,第一是前置工作,主要用于检查参数,组装 URL。第二是导出服务,包含导出服务到本地…

hello hello 发布于 2024-04-28

Dubbo 源码分析 – 自适应拓展原理

1.原理 我在上一篇文章中分析了 Dubbo 的 SPI 机制,Dubbo SPI 是 Dubbo 框架的核心。Dubbo 中的很多拓展都是通过 SPI 机制进行加载的,比如 Protocol、Cluster、LoadBalance…

hello hello 发布于 2024-04-28

基于 Java NIO 实现简单的 HTTP 服务器

1.简介 本文是 上一篇文章 实践篇,在上一篇文章中,我分析了选择器 Selector 的原理。本篇文章,我们来说说 Selector 的应用,如标题所示,这里我基于 Java NIO 实现了一个简单的 HTTP 服务器。在接下来的章节中,我会详细讲解 HTTP 服务器实现的过程。另外,本文所对应的代码已经上传到 GitHub 上了,需要的自取,仓库地址为…

hello hello 发布于 2024-04-28

Spring Boot 编写 API 的 10条最佳实践

10 个最佳实践,让您像专业人士一样编写 Spring Boot API,并结合编码示例和解释: 1. RESTful API 设计原则: 清晰一致的资源命名:使用准确反映 API 管理的资源的名词(例如,/products、/users)。 @GetMapping("/products/{id}") public…

hello hello 发布于 2024-04-27

使用 @NoRepositoryBean 简化数据库访问

在 Spring Data JPA 应用程序中管理跨多个存储库接口的数据库访问逻辑可能会变得乏味且容易出错。开发人员经常发现自己为常见查询和方法重复代码,从而导致维护挑战和代码冗余。幸运的是,Spring Data JPA 为这个问题提供了一个强大的解决方案: @NoRepositoryBean 注解。在本文中,我们将探讨…

hello hello 发布于 2024-04-26
上一页 下一页