摘要:之前写了一篇PHP+Redis链表解决高并发下商品超卖问题,今天介绍一些如何使用PHP+Redis+Lua解决高并发下商品超卖问题。 为何要使用Lua脚本解决商品超卖的问题呢? Redis在2.6版本后原生支持Lua脚本功能,允许开发者使用Lua语言编写脚本传到Redis中执行。 将复杂的或者多步的 阅读全文
posted @ 2021-07-16 17:44 itbsl 阅读(387) 评论(2) 推荐(1) 编辑
摘要:cURL简介 cURL的官方定义为:curl is a command line tool for transferring data with URL syntax,即使用URL语法规则来传输数据的命令行工具。 cURL是一个命令行工具,作用是发出网络请求,然后得到和提取数据,显示在“标准输出”( 阅读全文
posted @ 2021-06-20 17:08 itbsl 阅读(48) 评论(0) 推荐(0) 编辑
摘要:进程结构图 Nginx是多进程结构,多进程结构设计是为了保证Nginx的高可用高可靠,包含: master进程:父进程,负责worker进程的管理 worker进程:子进程,worker进程一般配置与服务器CPU核数相同,worker进程用来处理具体请求。 cache进程:也是子进程,包括cache 阅读全文
posted @ 2021-04-21 10:35 itbsl 阅读(499) 评论(0) 推荐(1) 编辑
摘要:基于https://github.com/streadway/amqp封装了一个RabbitMQ Go客户端,使用起来更方便。 安装 go get github.com/itbsl/rabbitmq 使用 使用起来,rabbitmq只包含5个创建不同类型的RabbitMQ实例的方法,和一个关闭连接的 阅读全文
posted @ 2021-02-26 18:41 itbsl 阅读(63) 评论(0) 推荐(0) 编辑
摘要:RabbitMQ相关概念介绍 RabbitMQ整体上是一个生产者与消费者模型,主要负责接收、存储和转发消息。可以把消息传递的过程想象成:当你将一个包裹送到邮局,邮局会暂存并最终将邮件通过邮递员送到收件人的手上,RabbitMQ就好比邮局、邮箱和邮递员组成的一个系统。从计算机术语层面来说,Rabbit 阅读全文
posted @ 2021-02-26 18:06 itbsl 阅读(666) 评论(0) 推荐(0) 编辑
摘要:AMQP 0-9-1 和 AMQP 模型高阶概述 AMQP是什么 AMQP(高级消息队列协议)是一个网络协议。它支持符合要求的客户端应用(application)和消息中间件代理(messaging middleware broker)之间进行通信。 消息代理和他们所扮演的角色 消息代理(messa 阅读全文
posted @ 2021-02-20 14:46 itbsl 阅读(212) 评论(0) 推荐(0) 编辑
摘要:今天很多人都在讲域名系统和互联网作为一个整体是如何工作的,域名系统 也就是大家所熟知的DNS。不幸的是,对于天龙人和普通人来说,他们并不了解DNS到底是什么鬼。今天就来聊聊DNS,和那些想了解DNS工作原理的人聊一聊它是如何工作的。 什么是DNS? DNS(Domain Name System,域名 阅读全文
posted @ 2021-01-28 17:05 itbsl 阅读(751) 评论(0) 推荐(2) 编辑
摘要:Redis没有直接使用C语言传统的字符串表示(以空字符结尾的字符数组,以下简称C字符串),而是自己构建了一种名为简单动态字符串(simple dynamic string,SDS)的抽象类型,并将SDS用作Redis的默认字符串表示。Reids自己构建的sds要比默认的c字符串性能更好,也更安全。 阅读全文
posted @ 2021-01-19 17:17 itbsl 阅读(507) 评论(0) 推荐(1) 编辑
摘要:在Go语言并发编程中,用一个goroutine来处理一个任务,而它又会创建多个goroutine来负责不同子任务的场景非常常见。如下图 这些场景中,往往会需要在API边界之间以及过程之间传递截止时间、取消信号或与其它请求相关的数据 谁是性能卡点呢?得通知它们任务取消了。 这时候就可以使用Contex 阅读全文
posted @ 2021-01-14 14:21 itbsl 阅读(1745) 评论(3) 推荐(8) 编辑
摘要:名词解释 根目录说明 tree -L 1 . ├── bin -> usr/bin # 英语binary的缩写,表示”二进制文件“,bin目录包含了会被所有用户使用的可执行程序 ├── boot # 英语boot表示”启动“,boot目录包含与Linux启动密切相关的文件 ├── dev # 英语d 阅读全文
posted @ 2021-01-11 19:30 itbsl 阅读(303) 评论(0) 推荐(0) 编辑