草庐IT

AZURE_DATABASE

全部标签

Azure Redis 缓存 : "role discovery data is unavailable"

我正在尝试连接到AzureRedisCache的一个实例从我本地的开发机器。我正在使用StackExchange.Redis像这样:varlazyConnection=newLazy(()=>{returnConnectionMultiplexer.Connect($"{redisServerUrl},abortConnect=false,ssl=true,password={redisServerKey},connectTimeout=10000,syncTimeout=10000");});当lazyConnection被调用时,我得到一个InvalidOperationExcep

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。看起来两者都为此功能提供了很好的功能(某种时间线),但我不确定每一个的优缺点是什么。想法?谢谢 最佳答案 如果您的数

asp.net-core - 在 asp .NET 核心中连接到特定的 Azure Redis 数据库

我想连接到我们新的AzureRedis缓存中的特定数据库,但似乎不知道该怎么做。我已经尝试将数据库ID添加到各种形式的连接字符串,以及在IDistributedcache对象(似乎不存在)上寻找GetDatabase(dbid)。仅供引用,我想为我们的测试和生产使用相同的缓存,而无需支付额外的redis缓存费用,因此我愿意接受其他方法。 最佳答案 您也可以直接使用ConnectionMultiplexer对象并通过GetDatabase方法访问数据库。 关于asp.net-core-在a

azure - 重新启动后与 Redis 缓存的连接失败 - Azure

我们使用以下代码连接到我们的缓存(内存和Redis):设置.WithSystemRuntimeCacheHandle().WithExpiration(CacheManager.Core.ExpirationMode.Absolute,defaultExpiryTime)。和.WithRedisConfiguration(CacheManagerRedisConfigurationKey,connectionString).WithMaxRetries(3).WithRetryTimeout(100).WithJsonSerializer().WithRedisBackplane(Ca

Azure Redis 缓存 - 如何正确处理复制实例

根据this来自AzureRedis缓存团队成员的回答,AzureRedis缓存公开了一个端点。该端点会自动路由到主节点或从节点(我假设是在故障转移时)。该答案还指出:Azure...requireschecksontheclientsidetoensurethatthenodeisindeedMasterorSlave因此客户端看到单个端点并且有时必须检查他们正在与哪个实例通信-这引发了一些问题:Redis客户端什么时候应该关心它是与主节点还是从节点通信?只是为了防止故障转移时不一致,还是有其他顾虑?客户端应该如何(以及何时)检查它是连接到主实例还是从实例?是通过运行inforepl

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

node.js - 访问代理后面的 azure redis 缓存

在开发环境中,开发者需要访问redis缓存。到azureredis缓存的连接是通过端口6380上的socks协议(protocol)完成的。问题是由于外部访问互联网是通过我们公司的代理完成的。如果是HTTP(S)访问,例如在nodejs中,我们使用npm包“dotenv”,我们在其中指定“HTTP(S)”代理设置(包ms​​-restazure的示例)。但是在这里我们没有找到任何解决方案来使用代理访问socks。在这种情况下,我们使用npm包“redis”。谁有代理使用的解决方案??提前致谢马修 最佳答案 从代理后面的客户端直接连接

database - 字符串如何在数据库中存储为字节?

这个问题可能有点模糊,但让我试着解释清楚。我一直在阅读与数据库相关的教程,它提到表被序列化为字节以保存在磁盘上。当我们反序列化它们时,我们可以根据其类型的大小来定位每一列。比如我们有一张表:---------------------------------------------------|id(unsignedint8)|timestamp(signedint32)|---------------------------------------------------|SomeId|Sometime|-----------------------------------------