使用 RabbitMQ 实现延迟队列的方法及示例 使用 RabbitMQ 实现延迟队列的方法及示例当我们需要在消息传递系统中实现延迟队列时,RabbitMQ 是一个常用的解决方案。在本文中,我们将讨论如何使用 RabbitMQ 来实现延迟队列,并提供支持 Hexo 的 Markdown 格式。 什么是延迟队列?在消息传递系统中,延迟队列(Delayed Queue)是指一种消息队列,它可以在一定时间后自动将消息发送到消费者。这种队列通常用于处理需 2023-06-10 RabbitMQ
RabbitMQ:基本概念、使用场景和架构 RabbitMQ是一个由Erlang实现的开源消息队列系统,它可以用于异步消息传递,支持多种消息传递模式。本文将介绍RabbitMQ的基本概念、使用场景、架构以及如何使用RabbitMQ进行消息传递。 基本概念RabbitMQ的基本概念包括以下几个方面: 消息消息是应用程序之间传递的信息单元,可以包含任意类型的数据。在RabbitMQ中,消息由生产者发送到交换机,并通过队列传递给消费者。 生产者生 2023-06-10 RabbitMQ
composer autoload自动加载性能优化指南 composer autoload自动加载性能优化指南简介composer 提供的 autoload 机制使得我们组织代码和引入新类库非常方便,但是也使项目的性能下降了不少 。 composer autoload 慢的主要原因在于来自对 PSR-0 和 PSR-4 的支持,加载器得到一个类名时需要到文件系统里查找对应的类文件位置,这导致了很大的性能损耗,当然这在我们开发时还是有用的,这样我们添加的 2023-04-12 PHP
配置nginx启动脚本,用systemctl启动服务 配置nginx启动脚本,用systemctl启动服务1、手动创建nginx.service服务文件。将其放入**/lib/systemd/system**列文件夹中。 1vim /usr/lib/systemd/system/nginx.service 123456789101112131415[Unit]Description=nginxAfter=network 2023-03-22 Linux Nginx Systemctl
laravel 框架打印完整sql语句 laravel 框架打印完整sql语句选项 1. getQueryLog:要使用,你需要手动开启: 1DB::enableQueryLog(); 要将 SQL 输出到屏幕,你可以使用: 1dd(DB::getQueryLog()); 最近的查询语句将位于数组的底部。 类似下面这样: 123456789array:1 [ 0 => array:3 [ "query" 2022-11-06 PHP laravel
Golang判断字符串是否包含某个字符 Golang判断字符串是否包含某个字符常用方式 1234567func main() { if find := strings.Contains("test-v1", "v1"); find { fmt.Println("find the character.") }} 2022-07-30 golang
gorm 检查唯一索引重复 gorm 检查唯一索引重复 (Error 1062: Duplicate entry ‘xx’ for key ‘xxx’exit status )试用gorm时候,唯一索引重复写入mysql会报错1062,用下面方式来捕捉错误 1234var mysqlErr *mysql.MySQLErrorif errors.As(result.Error, &mysqlErr) && 2022-05-18 golang gorm
yum 安装报错 There are unfinished transactions remaining. yum 安装报错 There are unfinished transactions remaining.使用yum命令安装软件时,报错:12There are unfinished transactions remaining. You might consider running yum-complete-transaction, or "yum-complete-transact 2022-05-02 Linux centos
Gin 路由分组(嵌套) Gin 路由分组(嵌套)1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465package mainimport ( "github.com/gin-gonic/gin" "net 2022-04-27 golang goroutine
golang sync.WaitGroup deadlock死锁问题 soft lockup golang sync.WaitGroup deadlock死锁问题 soft lockup为什么需要sync.WaitGroup? goroutine并发执行的时候需要一段时间,由于是串行编译运行的,有时会出现并发程序还没执行完毕,而后方的程序已经执行而导致的错误。通常的处理方式是调用time.sleep延迟并发执行时间 我们开启了1s的等待时间,但这种方法有个问题,我们并不知道并发执行的具体时 2022-04-24 golang goroutine