Commit f6f18f2b authored by tufengqi's avatar tufengqi

新增自增REDIS方法

parent 37cf5025
<?php <?php
namespace fpf\cache; namespace fpf\cache;
use fpf\cache\TableConstant; use fpf\cache\TableConstant;
/** /**
* 简单的KEY VALUE形式的构造真实KEY的方法 * 简单的KEY VALUE形式的构造真实KEY的方法
*/ */
...@@ -11,10 +13,12 @@ class DefaultBaseImpl ...@@ -11,10 +13,12 @@ class DefaultBaseImpl
{ {
return $db_name . TableConstant::CONNECTOR_TAG . $table_name . TableConstant::CONNECTOR_TAG . $key; return $db_name . TableConstant::CONNECTOR_TAG . $table_name . TableConstant::CONNECTOR_TAG . $key;
} }
public static function getHashTable($db_name, $table_name) public static function getHashTable($db_name, $table_name)
{ {
return $db_name . TableConstant::CONNECTOR_TAG . $table_name; return $db_name . TableConstant::CONNECTOR_TAG . $table_name;
} }
public static function checkTable($db_name, $table_name) public static function checkTable($db_name, $table_name)
{ {
if (!isset(TableConstant::$table_list[$db_name . TableConstant::CONNECTOR_TAG . $table_name])) { if (!isset(TableConstant::$table_list[$db_name . TableConstant::CONNECTOR_TAG . $table_name])) {
......
<?php <?php
namespace fpf\cache; namespace fpf\cache;
/** /**
...@@ -17,10 +18,13 @@ class TableConstant ...@@ -17,10 +18,13 @@ class TableConstant
const TABLE_HASH_LATEST_DEAL_USDT = 'LATEST_DEAL_USDT'; const TABLE_HASH_LATEST_DEAL_USDT = 'LATEST_DEAL_USDT';
const TABLE_SIMPLE_USD_CNY_RATE = 'USD_CNY_RATE'; const TABLE_SIMPLE_USD_CNY_RATE = 'USD_CNY_RATE';
const TABLE_HASH_IP_INTER = 'IP_INTER';
/** /**
* db name list * db name list
*/ */
const DB_MARKET_SERVICE = 'market-service'; const DB_MARKET_SERVICE = 'market-service';
const DB_ZHAOBI_API = 'zhaobi-api';
/** /**
* table check * table check
*/ */
...@@ -32,5 +36,7 @@ class TableConstant ...@@ -32,5 +36,7 @@ class TableConstant
self::DB_MARKET_SERVICE . self::CONNECTOR_TAG . self::TABLE_HASH_LATEST_DEAL_USDT => true, self::DB_MARKET_SERVICE . self::CONNECTOR_TAG . self::TABLE_HASH_LATEST_DEAL_USDT => true,
self::DB_MARKET_SERVICE . self::CONNECTOR_TAG . self::TABLE_SIMPLE_USD_CNY_RATE => true, self::DB_MARKET_SERVICE . self::CONNECTOR_TAG . self::TABLE_SIMPLE_USD_CNY_RATE => true,
self::DB_ZHAOBI_API . self::CONNECTOR_TAG . self::TABLE_HASH_IP_INTER => true,
]; ];
} }
<?php <?php
namespace fpf\cache; namespace fpf\cache;
use fpf\cache\DefaultBaseImpl; use fpf\cache\DefaultBaseImpl;
...@@ -10,6 +11,7 @@ trait TraitYiiHashTable ...@@ -10,6 +11,7 @@ trait TraitYiiHashTable
{ {
return DefaultBaseImpl::getHashTable($db_name, $table_name); return DefaultBaseImpl::getHashTable($db_name, $table_name);
} }
public static function getByTable($table) public static function getByTable($table)
{ {
self::checkTable(self::DB_NAME, $table); self::checkTable(self::DB_NAME, $table);
...@@ -42,6 +44,14 @@ trait TraitYiiHashTable ...@@ -42,6 +44,14 @@ trait TraitYiiHashTable
return Yii::$app->redis->hget($table, $key); return Yii::$app->redis->hget($table, $key);
} }
public static function increaseByTableKey($table, $key, $step = 1)
{
self::checkTable(self::DB_NAME, $table);
$table = self::getHashTable(self::DB_NAME, $table);
return Yii::$app->redis->hincrby($table, $key, $step);
}
public static function setByTableKey($table, $key, $value) public static function setByTableKey($table, $key, $value)
{ {
self::checkTable(self::DB_NAME, $table); self::checkTable(self::DB_NAME, $table);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment