分布式golang redis demo

golang对map排序

golang中map元素是随机无序的,所以在对map range遍历的时候也是随机的,不像php中是按顺序。所以如果想按顺序取map中的值,可以采用以下方式: import ( "fmt" "sort" ) func main() { m := make(map[int]string) m[1] = ......
golang map

go-carbon v2.3.1 发布,轻量级、语义化、对开发者友好的 Golang 时间处理库

carbon 是一个轻量级、语义化、对开发者友好的 golang 时间处理库,支持链式调用。 目前已被 awesome-go 收录,如果您觉得不错,请给个 star 吧 github.com/golang-module/carbon gitee.com/golang-module/carbon 安装 ......
轻量 轻量级 语义 开发者 go-carbon

Redis 之基本命令

一、基本命令 1、ping心跳命令 2、get/set(读写键值命令) 3、select(切换数据库) 4、dbsize(查看key数量) 5、flushdb(删除当前库中所有数据) 6、flushall(删除所有DB中的数据) ......
命令 Redis

中间件 ZK分布式专题与Dubbo微服务入门 1-2 什么是分布式系统

0 课程地址 https://coding.imooc.com/lesson/201.html#mid=12660 1 重点关注 1.1 什么是分布式系统 2 课程内容 2.1 什么是分布式系统 令很多台计算机组成一个整体,一个整体一致对外并且处理同一请求 内部的每台计算机都可以相互通信 ( res ......
分布式 中间件 专题 系统 Dubbo

redis哨兵模式

在主从架构的基础上继续增加三个哨兵 当前架构:1主2从3哨兵 测试情况如下:主节点死掉,三哨兵自动选举新的主节点,除非所有节点挂掉 哨兵模式配置文件: port 26380 //当前哨兵端口26380 daemonize no pidfile "/var/run/redis-sentinel-263 ......
哨兵 模式 redis

svelte的一些基础demo

脚手架 Vite:vite是集成了svelte,初始化的时候选择svelte就行了。 npm init vite SvelteKit:底层基于vite的更上层框架,类似于nextjs。 npm create svelte@latest my-app cd my-app npm install npm ......
基础 svelte demo

基于DID实现第三方应用的分布式身份登录

在我们掌握了DID的基础知识(还没有掌握DID基础知识?请先阅读我之前的关于DID的文章),构建DID平台的时候,DID的常见应用就是基于DID实现第三方平台的登录。接下来,我们假设已经构建了一个基础的DID平台,用长安链实现了DID文档的链上管理,并提供了DID钱包托管用户的公私钥和VC证书,建设 ......
分布式 第三方 身份 DID

【golang】怎么在Go语言中实现锁机制

Go语言的锁 在Go语言中,最常用的锁是互斥锁(Mutex)。互斥锁是一种特殊的二进制信号量,用于控制对共享资源的访问。Go语言通过标准库中的"sync"包提供了互斥锁的功能。互斥锁的类型定义如下: type Mutex struct { state int32 sema uint32 } 其中st ......
机制 语言 golang

JDK、Tomcat、Redis、MySQL集齐,教你如何搭建高效性能测试项目

前言: 作为一个软件工程师,怎能不知道如何搭建一个性能测试项目呢?性能测试是一个软件工程师不可或缺的一环,因为一款软件性能好坏直接关系到用户体验,而用户体验又是一个软件能否成功的最重要的因素。本文将带你一步步搭建一个性能测试项目,包括如何搭建 JDK、Tomcat、Redis 和数据库,并介绍在一个 ......
高效性 项目 Tomcat Redis MySQL

【Golang】Golang的跳一跳

一、基本概念 在Go语言中,代码跳转是指从一个位置跳转到另一个位置。一般而言,我们可以通过函数调用进行代码跳转,也可以通过goto语句进行跳转。不同的跳转方式有不同的适用场景。 二、函数调用 函数是Go语言中的基本构建块之一。调用函数时,程序的执行流程会跳转到被调用的函数中,并在函数执行完毕后返回到 ......
Golang

【golang】Go语言中interface类型怎么使用

1、Go语言中interface类型的定义 在Go语言中,interface类型是一个抽象的类型,它是一组方法签名的集合,只要某个类型实现了这些方法,它就属于该interface类型。 在Go语言中定义一个interface类型的方法,需要使用 interface 关键字。下面是interface类 ......
interface 语言 类型 golang

【golang】Go语言实现数据转发功能

首先,我们需要考虑数据实体的格式。在许多情况下,使用JSON格式最为方便。Go语言中有一个标准库“encoding/json”可以提供JSON编解码功能。我们可以使用它来将我们的数据序列化为JSON格式,并将其发送到目标组件中。 接下来,我们需要选择一种合适的网络协议来实现数据传输。常用的协议有TC ......
语言 功能 数据 golang

ASP.NET Core 操作 Redis

【ASP.NET Core中使用Redis缓存】https://www.cnblogs.com/dotnet261010/p/12033624.html【ASP.NET Core分布式缓存Redis主从Sentinel哨兵模式实战演练 】https://www.bilibili.com/read/c ......
Redis Core ASP NET

如何用Redis构建分布式锁系统?

对常见的加锁场景的归纳,只涉及到了JVM的api锁和redis的分布式锁。其实也可以用zookeeper或者mysql,其他的以后在分享吧,其实最完美的还是老外那套saga状态机 解决分布式事务比较完美,缺点就是难度很大要用到领域驱动的思想,国内普遍用的贫血模型,切换到DDD还是需要些时间研究的,对 ......
分布式 系统 Redis

Redis过期删除策略

定时删除; 惰性删除; 定期删除; 定时删除策略是怎么样的? 定时删除策略的做法是,在设置 key 的过期时间时,同时创建一个定时事件,当时间到达时,由事件处理器自动执行 key 的删除操作。 定时删除策略的优点: 可以保证过期 key 会被尽快删除,也就是内存可以被尽快地释放。因此,定时删除对内存 ......
策略 Redis

Kafka-分布式安装

一、kafka是什么? Kafka是一个快速、可扩展的、高吞吐、可容错的分布式发布订阅消息系统。Kafka具有高吞吐量、内置分区、支持数据副本和容错的特性,它可以处理消费者规模的网站中的所有动作流数据,具有高性能、持久化、多副本备份、横向扩展能力,适合在大规模消息处理场景中使用。 (1) 分布式系统 ......
分布式 Kafka

Redis事务

其实redis的事务是个假事务,没有实现原子性, 若要php支持事务,必须一起执行,其中incr会报错 $status = $redis->multi()->lPush($key1, '1123')->lPush($key2, '2123')->incr("age","age")->exec(); ......
事务 Redis

Golang秒读32GB大文件,如何读取?

在Go中,处理大文件时,一般采用分块读取的方式,以避免一次性加载整个文件到内存中。以下是读取大文件的简洁步骤: 1 打开文件: 使用os.Open打开文件。 file, err := os.Open("largefile.txt")if err != nil { log.Fatal(err)}def ......
文件 Golang 32 GB

Redis进阶 使用Lua编写Redis脚本

前面学习了Lua的基本语法,接下来是使用Lua编写脚本 1.可以使用redis.call来调用redis命令 使用redis.call会将redis命令返回的类型 转换成对应的Lua数据类型。 关系如下 与redis.call想类似的就是redis.pcall。 【redis.call与redis. ......
Redis 脚本 Lua

redis主从配置

先学一个高端linux指令: cat redis.conf | grep -v "^#" | grep -v "^$" > msconf/redis-master.conf -v 反向查找 "^#"以#开头的行 "^$"空行 将redis.conf去掉空行和以#开头的行,写入到msconf文件夹的r ......
主从 redis

redis哨兵

Redis 安装 1、上传 如下图:将redis-5.0.8.tar.gz包上传到目录:/apphome/下 2、解压 如下图:解压压缩文件,执行命令:tar -zxvf redis-5.0.8.tar.gz,解压后生成新的文件夹redis-5.0.8 3、编译安装 如下图:执行命令:make && ......
哨兵 redis

Golang基础(一)

Golang基础(一) Go语言的特性 一、并发编程 不同于传统的多进程或多线程,golang的并发执行单元是一种称为goroutine的协程。其在语言级别提供关键字: go——用于启动协程。 chan——golang中用于并发的通道,用于协程的通信。 select——golang提供的多路复用机制 ......
基础 Golang

wsl docker 安装redis

wsl docker 安装redis 宿主机准备配置文件 redis.conf 根据需要修改配置/docker-project/redis/redis.conf, 例如如下开启远程连接访问redis bind 0.0.0.0 protected-mode no 启动命令 docker run --r ......
docker redis wsl

根据置信度计算正态分布的标准分位数

/** * 根据置信度计算正态分布的标准分位数 * * @param confidenceLevel 置信度 * @return 正态分布的标准分位数 */ public static double getZValue(Double confidenceLevel) { NormalDistribu ......

golang中汇编语义

bito> TEXT main.main(SB) D:/main.go main.go:12 0xea7580 493b6610 CMPQ 0x10(R14), SP main.go:12 0xea7584 0f8691000000 JBE 0xea761b main.go:12 0xea758a ......
语义 golang

go-carbon v2.3.0 圣诞特别版发布,轻量级、语义化、对开发者友好的 Golang 时间处理库

go-carbon v2.3.0 圣诞节特别版发布,这应该是 2023 年的最后一个版本,祝大家圣诞节快乐! carbon 是一个轻量级、语义化、对开发者友好的 golang 时间处理库,支持链式调用。 目前已被 awesome-go 收录,如果您觉得不错,请给个 star 吧 github.com ......
轻量 轻量级 语义 开发者 go-carbon

golang 项目开发如何创建 Module

golang 项目开发如何创建 Module 原创 demo007x 知识派 2023-12-22 08:30 发表于北京 听全文 golang 项目开发如何创建 Module img 为什么要创建一个 Module? 我们日常开发程序的时候都会引入第三方的 package,使用第三方的 packa ......
项目开发 项目 golang Module

后端技术:Redis进行数据缓存的两种方法

在fastapi项目中Redis进行数据缓存的两种不同的方法的demo 第一种方法:通过FastAPI应用状态 准备文件:models/redis.py为fastapi的数据库模型文件 import os import aioredis from aioredis import Redis asyn ......
缓存 方法 数据 Redis 技术

详解 golang 中获取变量类型的3种方法

package main import ( "fmt" "reflect" ) func main() { var num float64 = 3.14 // 方法1: println(reflect.TypeOf(num).Name()) // 方法2: fmt.Println(reflect.T ......
变量 类型 方法 golang

Golang协程池ants

官方示例 package main import ( "fmt" "github.com/panjf2000/ants/v2" "sync" "sync/atomic" "time" ) var sum int32 func myFunc(i interface{}) { n := i.(int32 ......
Golang ants