草庐IT

Flask-Redis

全部标签

【Redis】Cluster集群

一、RedisCluster工作原理在引入哨兵机制后,解决了Redis主从架构Master故障时的主从切换问题,保证了Redis服务可用性。但依旧无法解决单机节点出现的写入性能瓶颈(网卡速率、单机内存容量、并发数量)1、早期为解决单机性能瓶颈问题采用的解决方案:1、客户端分片:由客户端程序进行读写key的redis节点判断和分配,并且由客户端自行处理读写请求分配、高可用管理及故障转移操作2、proxy代理模式:引入第三方代理程序,客户端通过连接proxy代理服务器对数据进行读写,由proxy程序进行读写判断分配,并对集群节点进行管理。但导致proxy又出现单点故障风险,并增加了一层数据处理环节

大白话说Python+Flask入门(一)

写在前面技术这东西就得用,不用就会忘,之前写博客感觉就是给自己记笔记用,还有大部分,估计睡在语雀里都落灰了,哈哈!在Python领域,我觉得我还是算个小白吧,会写讲不明白,所以我决定想做一件事,先搞下flask这部分教程,看看能给大家说明白吗,真的感觉和Java有很大区别,废话不多说了,开整!安装依赖pipinstallflaskFlask基础入门1、第一个例子fromflaskimportFlaskapp=Flask(__name__)@app.route('/')defhello_world():return'HelloWorld'if__name__=='__main__':app.ru

Redis连接报错:ERR Client sent AUTH, but no password is set

启动项目时,用到了Redis缓存数据库,但是却出现了报错信息:Causedby:io.lettuce.core.RedisCommandExecutionException:ERRClientsentAUTH,butnopasswordisset报错截图: 原因:产生这个问题的原因异常信息里已经说明,就是Redis服务器没有设置密码,但客户端向其发送了AUTH(authentication,身份验证)请求携带着密码,导致报错。既然是没有设置密码导致的报错,那我们就把Redis服务器给设置上密码就好了。一共有2种方式设置密码: 一、命令行方式1、先进入Redis服务器C:\ProgramFile

Openresty通过Lua+Redis 实现动态封禁IP

求背景为了封禁某些爬虫或者恶意用户对服务器的请求,我们需要建立一个动态的IP黑名单。对于黑名单之内的IP,拒绝提供服务。并且可以设置失效1.安装Openresty(编译安装)wgethttps://openresty.org/download/openresty-1.19.3.1.tar.gz#解压openrestytar-zxvfopenresty-1.19.3.1.tar.gz下载缓存插件 wgethttp://labs.frickle.com/files/ngx_cache_purge-2.3.tar.gz#解压缓存插件tar-zxvfngx_cache_purge-2.3.tar.gz

滴滴 Redis 异地多活的演进历程

为了更好的做好容灾保障,使业务能够应对机房级别的故障,滴滴的存储服务都在多机房进行部署。本文简要分析了Redis实现异地多活的几种思路,以及滴滴Redis异地多活架构演进过程中遇到的主要问题和解决方法,抛砖引玉,给小伙伴们一些参考。Redis异地多活的主要思路业界实现Redis异地多活通常三种思路:主从架构、Proxy双写架构、数据层双向同步架构。主从架构主从架构的思路:各机房的Redis通过Proxy对外提供读写服务,业务流量读写本机房的Redis-proxy主机房里的Redis-master实例承担所有机房的写流量从机房里的Redis-slave实例只读,承担本机房里的读流量主从架构的优点

redis未授权访问漏洞(三种方法)

声明:此文章仅用于学习使用漏洞简介:        redis默认情况下,绑定在0.0.0.0:6379,若没有采用相关的策略,如添加防火墙规则避免其他非信任来源ip访问等,会将redis服务暴露到公网上。如果在没有设置密码认证(一般为空)的情况下,会导致任意用户在可以访问目标服务器的情况下未授权访问redis以及读取redis的数据。攻击者在未授权访问redis的情况下,利用redis自身的提供的config命令,可以进行写文件操作,从而可以将自己编写生成的ssh公钥写入目标服务器的/root/.ssh文件夹的authotrized_keys文件中,进而使用对应私钥通过ssh服务登录目标服务

(十)Flask请求和响应

请求和响应一、请求相关(request对象):在Flask中,可以使用request对象来获取和处理当前请求的相关信息。request对象是一个全局对象,可以在任何视图函数中直接使用。需要注意的是,在使用request对象之前,需要先导入它:fromflaskimportrequest以下是request对象的一些常用属性和方法:1.method:是一个属性,获取当前请求的HTTP方法(字符串/只读属性),例如GET、POST、PUT等。request.method2.args:获取URL查询参数的字典形式。如果有相同的键,只会获取最后一个值。具体来说,request.args包含了当前请求U

头歌 Redis安全与性能

Redis安全与性能第1关:持久化第2关:复制第3关:Redis事务与流水线第1关:持久化第2关:复制第3关:Redis事务与流水线#!/usr/bin/envpython#-*-coding:utf-8-*-importtimeimportredisconn=redis.Redis()#将商品放到平台上defadd_item_to_market(itemid,sellerid,price):#请在下面完成要求的功能#*********Begin*********#repertory="inventory:"+selleriditem=itemid+"."+selleridend=time.t

Redis 下载安装

一、redis介绍redis官网地址:http://www.redis.cn/Redis是当前比较热门的NoSQL系统之一它是一个开源的、使用ANSIC语言编写的key-value存储系统(区别于MySQL的二维表格形式存储)和Memcache类似,但很大程度补偿了Memcache的不足,Redis数据都是缓存在计算机内存中,不同的是,Memcache只能将数据缓存到内存中,无法自动定期写入硬盘,这就表示,一断电或重启,内存清空,数据丢失二、Windows版Redis安装3.2.100版本下载地址:https://github.com/microsoftarchive/redis/releas

org.springframework.data.redis.RedisConnectionFailureException 解决办法

题主在测试spingdata连接redis时,遇到了org.springframework.data.redis.RedisConnectionFailureException:UnabletoconnecttoRedis;nestedexceptionisorg.springframework.data.redis.connection.PoolException:Couldnotgetaresourcefromthepool;nestedexceptionisio.lettuce.core.RedisConnectionException:Unabletoconnecttolocalhos