我有这个想法,我想让一些了解Redis和/或MySQL的人来运行它,这样你就可以告诉我,我甚至考虑过这一点都是愚蠢的。
我想知道,如果Redis键不存在,将持久化对象存储在Redis中以进行读取会产生什么影响,而数据库数据则会出现退步。为了简洁起见,下面是我所想到的一个(非常)简单的例子:
class ActiveRecord::Base
def self.cache_or_query(id)
Rails.cache.fetch("#{self.name}:#{id}") || begin
record = self.find(id)
Rai
我有这个eCommerce应用程序,它可以处理订单并扣除股票价值。这是遗留代码,我无法更改技术堆栈。
我很难管理数据完整性,因为订单过程是通过数据库MySQL完成的,而库存则保存在Redis中。
一旦订单流程成功完成,我必须从Redis中扣除股票价值。但如果订单流程失败,我就不能做任何扣除。例如:
Stock in Redis: 1000
Completed order: 200 (Row count in MySQL "order" table)
Expected New Stock in Redis: 800
订单处理功能基本上是混合MySQL和Redis之间的事务。就像这
因此,基本上,我想要做的是删除数据库中的所有键,如果它的大小小于1GB。我想通过一个PHP脚本和折叠代码来完成这个任务。
<?php
//Connecting to Redis server
$redis = new Redis();
$redis->connect('127.0.0.1', 6379);
echo "Connection to server sucessfully";
$redis->select(0);
$memstats = $redis->info("me