mirror of
https://github.com/kevachat/webapp.git
synced 2025-09-01 08:32:07 +00:00
add room list memcache
This commit is contained in:
parent
be9e492802
commit
3c4e74724c
@ -49,6 +49,13 @@ class RoomController extends AbstractController
|
|||||||
?Request $request
|
?Request $request
|
||||||
): Response
|
): Response
|
||||||
{
|
{
|
||||||
|
// Connect memcached
|
||||||
|
$memcached = new \Memcached();
|
||||||
|
$memcached->addServer(
|
||||||
|
$this->getParameter('app.memcached.host'),
|
||||||
|
$this->getParameter('app.memcached.port')
|
||||||
|
);
|
||||||
|
|
||||||
// Connect kevacoin
|
// Connect kevacoin
|
||||||
$client = new \Kevachat\Kevacoin\Client(
|
$client = new \Kevachat\Kevacoin\Client(
|
||||||
$this->getParameter('app.kevacoin.protocol'),
|
$this->getParameter('app.kevacoin.protocol'),
|
||||||
@ -59,6 +66,15 @@ class RoomController extends AbstractController
|
|||||||
);
|
);
|
||||||
|
|
||||||
// Get room list
|
// Get room list
|
||||||
|
$memory = md5(
|
||||||
|
sprintf(
|
||||||
|
'%s.RoomController::list:list',
|
||||||
|
__DIR__,
|
||||||
|
),
|
||||||
|
);
|
||||||
|
|
||||||
|
if (!$list = $memcached->get($memory))
|
||||||
|
{
|
||||||
$list = [];
|
$list = [];
|
||||||
|
|
||||||
foreach ((array) $client->kevaListNamespaces() as $value)
|
foreach ((array) $client->kevaListNamespaces() as $value)
|
||||||
@ -116,6 +132,13 @@ class RoomController extends AbstractController
|
|||||||
$list
|
$list
|
||||||
);
|
);
|
||||||
|
|
||||||
|
// Cache result
|
||||||
|
$memcached->set(
|
||||||
|
$memory,
|
||||||
|
$list
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
// RSS
|
// RSS
|
||||||
if ('rss' === $request->get('feed'))
|
if ('rss' === $request->get('feed'))
|
||||||
{
|
{
|
||||||
|
Loading…
x
Reference in New Issue
Block a user