Laravel 中你可能不知道的十大验证规则
你了解 Laravel 中所有的验证规则吗?再想想!Laravel 有很多现成的验证规则,可以让你的代码生活变得更容易。让我们来看看你可能不知道存在的前 10 条验证规则。要确保某个字段不存在于输入中,请使用 prohibited。'username' => 'prohibited',如果 username 存在于请求中,验证...
微服务中的 Saga 模式
从其核心原则和真实上下文来看,基于微服务的应用是一个分布式系统。整个系统由多个较小的服务组成,这些服务共同提供整体应用程序功能。虽然这种架构风格提供了许多好处,但它也有一些局限性。微服务架构中的一个主要问题是如何处理跨多个服务的事务。本文中,我们将探索 Saga 架构模式,该模式允许我们在微服务架构中管理分布式事务。 ...
使用 Playwright 自动进行端到端测试
端到端测试是确定软件产品整体情况的重要方式之一。它有助于发现在单元和集成测试阶段可能未被注意到的问题,并有助于确定软件是否按预期工作。执行可能包括多个用户步骤和路程的端到端测试是乏味的。因此,一种可行的方法是对端到端测试用例进行自动化测试。本文中,我们将学习如何使用 Playwright 和 TypeScript 自动化端到端测试。 ...
单点登录(SSO)原理详解
单点登录机制 (SSO) 允许用户登录一次应用并访问所有相关系统,而无需另外登录。本文中,我们将详细定义 SSO 的工作原理以及该技术的优缺点。因为 SSO,用户可以登录一次服务,并自动登录所有相关应用。举个例子,假设我们由一个谷歌帐户。登录到谷歌的一项服务(如 Gmail)后,用户可以访问所有其他独立...
使用 Prometheus 监控 Spring Boot 应用
使用 Spring Boot,开发人员可以轻松设置独立的高级应用。然而,为了真正提高性能、可用性和可靠性,集成像 Prometheus 这样的复杂监控工具是关键。本文旨在提供将 Prometheus 与 Spring Boot 应用...
Laravel 11.24 发布
Laravel 发布了 v11.24,新版本包括进程 Fake 的新便捷方式,外键定义的 nullOnUpdate() 方法,任务重试时支持重试多个批处理 ID 等...
Java 中的 hashCode() 指南
哈希是计算机科学的一个基本概念。在 Java 中,高效的哈希算法支持一些最流行的集合,如 HashMap 和 HashSet。本文中,我们将重点介绍 hashCode() 的工作原理、它在集合中的作用以及如何正确实现它。在某些情况下,对集合进行最简单的操作可能效率低下。为了说明,这会触...
用户线程 vs 内核线程
线程是通过进程代码的执行流,具有自己的程序计数器、系统寄存器和存储其执行历史的堆栈。在内核线程中,内核负责管理线程。与内核线程不同,用户线程更容易管理、更快,并且受任何操作系统的支持。本文中,我们将探讨用户线程和内核线程的差异、优点和局限性。用户线程是用户在用户库的帮助下创建的线程。用户线程对创建它们的进程及其运行时环境可见:用户线程...
[Laravel 扩展包] Laravel 的轻量级电子表格
如果你正在寻找一个可以读写电子表格的轻量级软件包,Chris Morrell 的 Linen 包是 Laravel 的轻量级电子表格包。此包是 openspout/openspout 包的包装,它允许你以快速和可扩展的方式读写电子表格。以下是一些如何使用 Linen 包读写电子表格的示例:use Glhd\Linen\CsvReader; use Glhd\...
[Laravel 扩展包] Prezet: 创建基于 Laravel 的 Markdown 博客
Prezet 是一款新的 Laravel 博客应用,可以将 markdown 文件转换为 SEO 友好的博客、文章和文档!与其他同类方案之间的区别之一是 Prezet 旨在与现有的 Laravel 应用一起运行。它有以下特性:统一部署:内容和 Laravel 应用通过统一的部署过程共存于单个代码库中。熟悉的环境:利用现有的 Laravel 和 Blade 知...