mirror of
https://github.com/SophiaAtkinson/steamwidgets-web.git
synced 2025-06-27 03:57:41 -07:00
DB Caching for SteamServer
This commit is contained in:
@ -47,7 +47,7 @@ class ApiController extends BaseController {
|
|||||||
try {
|
try {
|
||||||
$addr = $request->params()->query('addr', null);
|
$addr = $request->params()->query('addr', null);
|
||||||
|
|
||||||
$data = SteamServer::querySteamData(env('STEAM_API_KEY'), $addr);
|
$data = SteamCache::cachedSteamServer(env('STEAM_API_KEY'), $addr);
|
||||||
|
|
||||||
HitsModel::addHit(HitsModel::HITTYPE_MODULE_SERVER);
|
HitsModel::addHit(HitsModel::HITTYPE_MODULE_SERVER);
|
||||||
|
|
||||||
|
@ -69,4 +69,20 @@ class SteamCache {
|
|||||||
return SteamGroup::querySteamData($group);
|
return SteamGroup::querySteamData($group);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static function cachedSteamServer($key, $addr)
|
||||||
|
{
|
||||||
|
$cache_driver = env('CACHE_DRIVER', null);
|
||||||
|
$cache_duration = env('CACHE_DURATION', 123);
|
||||||
|
|
||||||
|
if ($cache_driver === 'db') {
|
||||||
|
return json_decode(CacheModel::remember('steam_server_' . $addr, $cache_duration, function() use ($key, $addr) {
|
||||||
|
return json_encode(SteamServer::querySteamData($key, $addr));
|
||||||
|
}));
|
||||||
|
} else if ($cache_driver === 'redis') {
|
||||||
|
|
||||||
|
} else {
|
||||||
|
return SteamServer::querySteamData($key, $addr);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user