草庐IT

database-scan

全部标签

java - Spring 绝地武士。 SCAN 和 KEYS 键不匹配

我在redis中放了一个key-value,其中key是UUID转成byte数组,用于空间优化。"3DEBB752-654A-4206-89BA-D3517237312E"->[-119,-70,-45,81,114,55,49,46,61,-21,-73,82,101,74,66,6].我正在使用SpringJedis从Redis服务器获取数据,当我尝试通过KEYS函数获取key时jedisConnection.keys("*".getBytes());我明白了[-119,-70,-45,81,114,55,49,46,61,-21,-73,82,101,74,66,6]但是,当我尝

database - 确定大型 redis 数据库中未使用键的百分比

我有一个Redis数据库,里面有数百万个键。随着时间的推移,我写入和读取的key发生了变化,因此有许多key我不再使用了。大多数也没有任何类型的TTL。我想了解Redis数据库中有多少百分比的键不再使用。我在想我可以使用hyperloglog来估计正在写入的键数的基数,但是为每个被写入和读取的键做一个PFADD似乎需要很多工作从。明确地说,我还不想删除任何东西,我只是想对数据库中使用的键数做一些分析。 最佳答案 我将从scan命令开始遍历键,然后在每个键上使用objectidletime命令来收集自上次使用键以来的秒数用过的。从那里

database - 通过命令行在redis中创建命名空间

我正在使用Ubuntu并且我有REDIS数据库,我想在REDIS中创建命名空间或数据库,但我找不到任何命令。 最佳答案 Redis默认自带16个数据库。您可以使用select命令选择其中任何一个。选择0,如果你想拥有更多,你可以在redis.conf文件中更改它。在GENERAL部分下,将databases的值设置为您想要的数字。然后你需要用配置文件启动你的redis服务器,即redis-serverredis.conf 关于database-通过命令行在redis中创建命名空间,我们在

漏洞扫描原理及X-Scan安装

漏洞扫描原理及X-Scan使用漏洞扫描原理1.概念:漏洞扫描技术是建立在端口扫描技术的基础之上的,从对黑客的攻击行为的分析和收集的漏洞来看,绝大多数都是针对某一个特定的端口的,所以漏洞扫描技术以与端口扫描技术同样的思路来开展扫描的。漏洞扫描技术的原理是通过远程检测目标主机TCP/IP不同端口的服务,记录目标的回答。通过这种方法,可以搜集到很多目标主机的各种信息。在获得目标主机TCP/IP端口和其对应的网络访问服务的相关信息后,与网络漏洞扫描系统提供的漏洞库进行匹配,如果满足匹配条件,则视为漏洞存在。此外,通过模拟黑客的进攻手法,对目标主机系统进行攻击性的安全漏洞扫描,如测试弱势口令等,也是扫描

linux - 避免 php artisan 队列 :work : Queue Driver - Redis or Database (Laravel 5. 4)

我目前使用数据库作为我的队列驱动程序,我已经在Windows10PC上安装了Laravel5.4。为了处理队列,我一直在使用phpartisanqueue:work,这在开发阶段完全没问题。现在,该项目已完全准备就绪,需要部署在Linux服务器(专用)上我不确定如何避免在终端上运行命令phpartisanqueue:work以处理邮件作业?我已经在共享主机中部署过一次并且我使用了cron作业,但是现在我有专用服务器我想我应该可以使用其他东西来运行作业,我也在考虑使用Redis作为队列驱动程序而不是数据库作为队列驱动我需要一些关于什么是最好的建议。以及如何避免在专用服务器上使用phpar

database-design - 正确存储构建 "Last seen Products"

想知道像许多电子商务网站(例如亚马逊)那样构建“最后一次看到的产品”功能的最佳存储是什么。以下是一些要求:活跃用户:200MLastSeenProducts按类别(即:鞋子、电子产品等)。大约有500个类别每个类别存储10个产品(虽然不会访问所有类别)LastSeenProducts必须持久化,这样无论何时用户重新登录,都可以获取并构建列表。检索列表的时间应小于100毫秒。我正在考虑以太Redis或Cassandra。看起来两者都为此功能提供了很好的功能(某种时间线),但我不确定每一个的优缺点是什么。想法?谢谢 最佳答案 如果您的数

database - 如果 Redis 不在您的应用程序服务器上运行,为什么还要使用它?

我的理解是使用Redis需要你把它托管在它自己的服务器上。那么,如果存储在其上的数据未在与您的应用服务器(例如节点)相同的VM上运行(因此使用相同的RAM),为什么还要使用它呢? 最佳答案 您根本不需要在单独的服务器上托管Redis。事实上,应用服务器在同一台服务器上运行Redis或Memcached等内存存储来执行简单的缓存任务并不少见。但是,我认为您问题的核心是对内存存储工作原理的根本误解。即使您要在与您的应用程序相同的服务器上运行Redis,您的应用程序也永远无法直接访问Redis用于存储数据的RAMblock——您仍然需要向

database - 有什么有效的方法可以减少 HyperLogLog ( redis ) 中的错误?

在redis中,我们将hyperLogLog设置为不同的元素。众所周知,对于每个key,HLL仅消耗12kb内存并产生标准误差为0.81%的近似值因为我有太多要计算的元素。所以在这里我想通过将元素存储到多个hll键中来降低错误发生率(例如"hll_key_%d"%(Elementmod1024))这实际上是降低错误的有效方法吗?或者其他什么方式实现? 最佳答案 这取决于。如果插入元素的数量明显大于Redis实现中的寄存器数量(2^14),则可以假设HyperLogLogs的错误呈正态分布。如果元素被平均分片到多个HyperLogLo

redis - Redis SCAN 永不终止的可能性

RedisSCAN文档中有这样一条注释:TheSCANalgorithmisguaranteedtoterminateonlyifthesizeoftheiteratedcollectionremainsboundedtoagivenmaximumsize,otherwiseiteratingacollectionthatalwaysgrowsmayresultintoSCANtoneverterminateafulliteration.在Redis用于存储session的场景中(因此可以不断扩展),发生这种情况的可能性有多大?在生产中使用SCAN进行完整迭代是否安全(例如清除一组具有

redis - TYPE 选项不适用于 REDIS SCAN 命令

Redis中有一个命令-SCAN.它有一个选项TYPE返回匹配给定类型的对象。当我尝试运行示例中提供的命令集时https://redis.io/commands/scan#the-type-option当我运行最后一个命令SCAN0TYPEzset时,我收到错误消息ERRsyntaxerror。我准备了list和zset类型的对象,但它们都不起作用,我总是得到一个异常。即使我自己添加一些东西,它也不起作用。接下来是我的问题。SCAN实际上支持TYPE选项吗?我发现了这个问题https://github.com/antirez/redis/issues/3323,但它没有关闭并且在Red