草庐IT

redis-cplusplus-client

全部标签

Redis(主从复制、哨兵模式、集群)概述及部署

Redis(主从复制、哨兵模式、集群)概述及部署前言一、Redis主从复制Ⅰ、Redis主从复制的概念Ⅱ、Redis主从复制的作用Ⅲ、Redis主从复制的流程Ⅳ、Redis主从复制的搭建二、Redis哨兵模式Ⅰ、哨兵模式的原理Ⅱ、哨兵模式的作用Ⅲ、哨兵模式的结构Ⅳ、故障转移机制Ⅴ、搭建Redis哨兵模式三、Redis集群模式Ⅰ、集群的作用Ⅱ、Redis集群的数据分片Ⅲ、Redis集群工作模式Ⅳ、搭建Redis集群模式前言一、Redis主从复制Ⅰ、Redis主从复制的概念主从复制,是指将一台Redis服务器的数据,复制到其他的Redis服务器。前者称为主节点(Master),后者称为从节点(Sl

redis + AOP + 自定义注解实现接口限流

限流介绍限流(ratelimiting)​是指在一定时间内,对某些资源的访问次数进行限制,以避免资源被滥用或过度消耗。限流可以防止服务器崩溃、保证用户体验、提高系统可用性。限流的方法有很多种,常见的有以下几种:漏桶算法:​ 漏桶算法通过一个固定大小的漏桶来模拟流量,当流量进入漏桶时,会以恒定的速率从漏桶中流出。如果流量超过漏桶的容量,则会被丢弃。令牌桶算法:​ 令牌桶算法通过一个固定大小的令牌桶来模拟流量,当流量进入令牌桶时,会从令牌桶中取出一个令牌。如果令牌桶中没有令牌,则会拒绝该流量。滑动窗口算法:​ 滑动窗口算法通过一个固定大小的滑动窗口来模拟流量,当流量进入滑动窗口时,会统计窗口内流量

redis + AOP + 自定义注解实现接口限流

限流介绍限流(ratelimiting)​是指在一定时间内,对某些资源的访问次数进行限制,以避免资源被滥用或过度消耗。限流可以防止服务器崩溃、保证用户体验、提高系统可用性。限流的方法有很多种,常见的有以下几种:漏桶算法:​ 漏桶算法通过一个固定大小的漏桶来模拟流量,当流量进入漏桶时,会以恒定的速率从漏桶中流出。如果流量超过漏桶的容量,则会被丢弃。令牌桶算法:​ 令牌桶算法通过一个固定大小的令牌桶来模拟流量,当流量进入令牌桶时,会从令牌桶中取出一个令牌。如果令牌桶中没有令牌,则会拒绝该流量。滑动窗口算法:​ 滑动窗口算法通过一个固定大小的滑动窗口来模拟流量,当流量进入滑动窗口时,会统计窗口内流量

Redis 数据一致性

概述当我们在使用缓存时,如果发生数据变更,那么你需要同时操作缓存和数据库,而它们两个又分属不同的系统,因此无法做到同时操作成功或失败,因此在并发读写下很可能出现缓存与数据库数据不一致的情况理论上可以通过分布式事务保证同时操作成功或失败,但这会影响系统性能,一般很少使用。虽然没办法做到缓存和数据库强一致,但我们可以让他们的数据尽可能在绝大部分时间内保持一致,并保证最终是一致的缓存更新设计一般来说都是采用删除缓存的方式更新缓存,这就涉及到先删除缓存还是先更新数据库的顺序问题了1.先删除缓存,后更新数据库先删除缓存,后更新数据库,如果数据库没有更新成功,下次读缓存发现不存在,则从数据库读取,并重建缓

ServiceStack.Redis系列破解

ServiceStack.Redis免费版有个每小时6000次访问限制,网上目前的破解方式都是dnspy修改源码或者Github上下载源码修改,这样的方式不是不好,主要是不方便NUGET版本管理和更新。 反编译看了下注册逻辑,发现很简单就是LicenseKey类:publicclassLicenseKey{publicstringRef{get;set;}publicstringName{get;set;}publicLicenseTypeType{get;set;}publiclongMeta{get;set;}publicstringHash{get;set;}publicDateTime

Redis 实现多规则限流的思考与实践

简介市面上很多介绍redis如何实现限流的,但是大部分都有一个缺点,就是只能实现单一的限流,比如1分钟访问1次或者60分钟访问10次这种,但是如果想一个接口两种规则都需要满足呢,我们的项目又是分布式项目,应该如何解决,下面就介绍一下redis实现分布式多规则限流的方式。思考如何一分钟只能发送一次验证码,一小时只能发送10次验证码等等多种规则的限流如何防止接口被恶意打击(短时间内大量请求)如何限制接口规定时间内访问次数解决方法记录某IP访问次数使用String结构记录固定时间段内某用户IP访问某接口的次数RedisKey=prefix:className:methodNameRedisVlue=

Prometheus Go client library 详解

介绍Prometheus支持4种指标类型,分别是Counter、Gauge、Histogram和Summary。Counter 指标类型,指标值是只能递增,不能递减的数值。需要注意的是,当Prometheusserver重启时,指标值会被重置为0。该指标类型可用于统计接口的请求数、错误数等使用场景。Gauge 指标类型,指标值是可增可减的数值。该指标类型可用于统计CPU、内存和硬盘的使用情况,goroutine的数量等使用场景。Histogram 指标类型,指标值基于桶分布。开发者可以自定义桶的区间。该指标类型可用于统计接口的延时请求数等使用场景。Summary 指标类型,与Histogram

php - Ratchet/网络套接字 : How many clients subscribing to an object?

我想知道有多少客户实际订阅了聊天室/对话。更准确地说,我只想知道是否有超过1个客户端。(聊天室实际上是两个用户之间的私有(private)对话)。一次只有一个聊天室/私有(private)对话(每位用户)。classChatimplementsWampServerInterface{protected$conversationId;publicfunction__construct(){$this->conversationId=null;}publicfunctiononSubscribe(ConnectionInterface$conn,$conversation_id){$thi

php - NuSoap - 如何在 nusoap_client PHP 中使用本地现有的 WSDL 文件

我是nusoap的新手,一般来说是网络服务。wsdl文件来自客户端。我有一个使用默认URL的基本Web服务,它通过以下网址提供wsdl:http://hiddenurl.com/ws/schema/Terminal.wsdl但是客户的文档说:“请在本地下载WSDL和XML架构文件以供您的代码使用。不要每次都从我们的服务器获取这些文件。”所以我一直在尝试在本地或通过我自己的网络服务器托管wsdl文件,但都没有用。我试过:$wsdlUrl='http://supplied-url.com/schema/Terminal.wsdl'//workingbutdiscouraged$wsdlUr

数据库攻防学习之Redis

Redis0x01redis学习在渗透测试面试或者网络安全面试中可能会常问redis未授权等一些知识,那么什么是redis?redis就是个数据库,常见端口为6379,常见漏洞为未授权访问。0x02环境搭建这里可以自己搭建一个redis环境,也可以用vulfocus搭建一个环境,可以两个都搭建,因为一些攻击手法,需要自己搭建的环境才能成功。ubuntu20.04+dockerdockercreate-p8088:80-v/var/run/docker.sock:/var/run/docker.sock-eVUL_IP=127.0.0.1vulfocus/vulfocus建议vulfocus最好