mirror of
https://github.com/lkddi/nexusphp.git
synced 2026-04-24 12:07:23 +08:00
cache announce userInfo
This commit is contained in:
+1
-1
@@ -15,7 +15,7 @@ DB_USERNAME=root
|
|||||||
DB_PASSWORD=
|
DB_PASSWORD=
|
||||||
|
|
||||||
BROADCAST_DRIVER=log
|
BROADCAST_DRIVER=log
|
||||||
CACHE_DRIVER=file
|
CACHE_DRIVER=redis
|
||||||
QUEUE_CONNECTION=sync
|
QUEUE_CONNECTION=sync
|
||||||
SESSION_DRIVER=file
|
SESSION_DRIVER=file
|
||||||
SESSION_LIFETIME=120
|
SESSION_LIFETIME=120
|
||||||
|
|||||||
@@ -17,6 +17,7 @@ class Platform
|
|||||||
*/
|
*/
|
||||||
public function handle(Request $request, Closure $next)
|
public function handle(Request $request, Closure $next)
|
||||||
{
|
{
|
||||||
|
do_log(nexus_json_encode($_SERVER));
|
||||||
if (empty(CURRENT_PLATFORM)) {
|
if (empty(CURRENT_PLATFORM)) {
|
||||||
throw new \InvalidArgumentException("Require platform header.");
|
throw new \InvalidArgumentException("Require platform header.");
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -129,7 +129,7 @@ class TagRepository extends BaseRepository
|
|||||||
return count($values);
|
return count($values);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static function getOrderByFieldIdString()
|
public static function getOrderByFieldIdString(): string
|
||||||
{
|
{
|
||||||
if (is_null(self::$orderByFieldIdString)) {
|
if (is_null(self::$orderByFieldIdString)) {
|
||||||
$results = self::createBasicQuery()->get(['id']);
|
$results = self::createBasicQuery()->get(['id']);
|
||||||
|
|||||||
@@ -293,7 +293,9 @@ class TrackerRepository extends BaseRepository
|
|||||||
/**
|
/**
|
||||||
* @var $user User
|
* @var $user User
|
||||||
*/
|
*/
|
||||||
$user = User::query()->where($field, $value)->first();
|
$user = Cache::remember("user:$field:$value:" . __METHOD__, 60, function () use ($field, $value) {
|
||||||
|
return User::query()->where($field, $value)->first();
|
||||||
|
});
|
||||||
if (!$user) {
|
if (!$user) {
|
||||||
throw new TrackerException("Invalid $field: $value.");
|
throw new TrackerException("Invalid $field: $value.");
|
||||||
}
|
}
|
||||||
@@ -846,7 +848,8 @@ class TrackerRepository extends BaseRepository
|
|||||||
|
|
||||||
private function getTorrentByInfoHash($infoHash)
|
private function getTorrentByInfoHash($infoHash)
|
||||||
{
|
{
|
||||||
return Cache::remember(bin2hex($infoHash), 60, function () use ($infoHash) {
|
$cacheKey = bin2hex($infoHash) . __METHOD__;
|
||||||
|
return Cache::remember($cacheKey, 60, function () use ($infoHash) {
|
||||||
$fieldRaw = 'id, owner, sp_state, seeders, leechers, added, banned, hr, visible, last_action, times_completed';
|
$fieldRaw = 'id, owner, sp_state, seeders, leechers, added, banned, hr, visible, last_action, times_completed';
|
||||||
$torrent = Torrent::query()->where('info_hash', $infoHash)->selectRaw($fieldRaw)->first();
|
$torrent = Torrent::query()->where('info_hash', $infoHash)->selectRaw($fieldRaw)->first();
|
||||||
do_log("cache miss, from database: " . last_query() . ", and get: " . $torrent->id);
|
do_log("cache miss, from database: " . last_query() . ", and get: " . $torrent->id);
|
||||||
|
|||||||
@@ -6,5 +6,6 @@ $rootpath= dirname(__DIR__) . '/';
|
|||||||
require_once $rootpath . 'include/constants.php';
|
require_once $rootpath . 'include/constants.php';
|
||||||
require_once $rootpath . 'include/globalfunctions.php';
|
require_once $rootpath . 'include/globalfunctions.php';
|
||||||
require_once $rootpath . 'include/functions_announce.php';
|
require_once $rootpath . 'include/functions_announce.php';
|
||||||
|
require_once $rootpath . 'vendor/autoload.php';
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -1,6 +1,6 @@
|
|||||||
<?php
|
<?php
|
||||||
require_once __DIR__ . '/constants.php';
|
require_once __DIR__ . '/constants.php';
|
||||||
require $rootpath . 'vendor/autoload.php';
|
require_once $rootpath . 'vendor/autoload.php';
|
||||||
if (!file_exists($rootpath . '.env')) {
|
if (!file_exists($rootpath . '.env')) {
|
||||||
$installScriptRelativePath = 'install/install.php';
|
$installScriptRelativePath = 'install/install.php';
|
||||||
$installScriptFile = $rootpath . "public/$installScriptRelativePath";
|
$installScriptFile = $rootpath . "public/$installScriptRelativePath";
|
||||||
|
|||||||
@@ -2812,6 +2812,9 @@ function base64 ($string, $encode=true) {
|
|||||||
function loggedinorreturn($mainpage = false) {
|
function loggedinorreturn($mainpage = false) {
|
||||||
global $CURUSER,$BASEURL;
|
global $CURUSER,$BASEURL;
|
||||||
if (!$CURUSER) {
|
if (!$CURUSER) {
|
||||||
|
if (CURRENT_SCRIPT == 'ajax') {
|
||||||
|
exit(fail('Not login!', $_POST));
|
||||||
|
}
|
||||||
if ($mainpage)
|
if ($mainpage)
|
||||||
header("Location: " . get_protocol_prefix() . "$BASEURL/login.php");
|
header("Location: " . get_protocol_prefix() . "$BASEURL/login.php");
|
||||||
else {
|
else {
|
||||||
|
|||||||
@@ -425,6 +425,9 @@ class Install
|
|||||||
$this->doLog("[CREATE ENV] key: $key, new value: $value from example.");
|
$this->doLog("[CREATE ENV] key: $key, new value: $value from example.");
|
||||||
$newData[$key] = $value;
|
$newData[$key] = $value;
|
||||||
}
|
}
|
||||||
|
if ($key == 'CACHE_DRIVER') {
|
||||||
|
$newData[$key] = 'redis';
|
||||||
|
}
|
||||||
if ($scene == 'install' || !file_exists($envFile)) {
|
if ($scene == 'install' || !file_exists($envFile)) {
|
||||||
if ($key == 'APP_ENV') {
|
if ($key == 'APP_ENV') {
|
||||||
$newData[$key] = 'production';
|
$newData[$key] = 'production';
|
||||||
|
|||||||
@@ -305,7 +305,7 @@ function print_category_editor($type, $row='')
|
|||||||
tr($lang_catmanage['col_name']."<font color=\"red\">*</font>", "<input type=\"text\" name=\"name\" value=\"".htmlspecialchars($name)."\" style=\"width: 300px\" /> " . $lang_catmanage['text_second_icon_name_note'], 1);
|
tr($lang_catmanage['col_name']."<font color=\"red\">*</font>", "<input type=\"text\" name=\"name\" value=\"".htmlspecialchars($name)."\" style=\"width: 300px\" /> " . $lang_catmanage['text_second_icon_name_note'], 1);
|
||||||
tr($lang_catmanage['col_image']."<font color=\"red\">*</font>", "<input type=\"text\" name=\"image\" value=\"".htmlspecialchars($image)."\" style=\"width: 300px\" /><br />" . $lang_catmanage['text_image_note'], 1);
|
tr($lang_catmanage['col_image']."<font color=\"red\">*</font>", "<input type=\"text\" name=\"image\" value=\"".htmlspecialchars($image)."\" style=\"width: 300px\" /><br />" . $lang_catmanage['text_image_note'], 1);
|
||||||
tr($lang_catmanage['text_class_name'], "<input type=\"text\" name=\"class_name\" value=\"".htmlspecialchars($class_name)."\" style=\"width: 300px\" /><br />" . $lang_catmanage['text_class_name_note'], 1);
|
tr($lang_catmanage['text_class_name'], "<input type=\"text\" name=\"class_name\" value=\"".htmlspecialchars($class_name)."\" style=\"width: 300px\" /><br />" . $lang_catmanage['text_class_name_note'], 1);
|
||||||
tr($lang_catmanage['row_selections']."<font color=\"red\">*</font>", torrent_selection(return_type_name('source'), 'source', return_category_db_table_name('source'), $source) . torrent_selection(return_type_name('source'), 'source', return_category_db_table_name('source'), $source) . torrent_selection(return_type_name('medium'), 'medium', return_category_db_table_name('medium'), $medium) . torrent_selection(return_type_name('codec'), 'codec', return_category_db_table_name('codec'), $codec) . torrent_selection(return_type_name('standard'), 'standard', return_category_db_table_name('standard'), $standard) . torrent_selection(return_type_name('processing'), 'processing', return_category_db_table_name('processing'), $processing) . torrent_selection(return_type_name('team'), 'team', return_category_db_table_name('team'), $team) . torrent_selection(return_type_name('audiocodec'), 'audiocodec', return_category_db_table_name('audiocodec'), $audiocodec)."<br />".$lang_catmanage['text_selections_note'], 1);
|
tr($lang_catmanage['row_selections']."<font color=\"red\">*</font>", torrent_selection(return_type_name('source'), 'source', return_category_db_table_name('source'), $source) . torrent_selection(return_type_name('medium'), 'medium', return_category_db_table_name('medium'), $medium) . torrent_selection(return_type_name('codec'), 'codec', return_category_db_table_name('codec'), $codec) . torrent_selection(return_type_name('standard'), 'standard', return_category_db_table_name('standard'), $standard) . torrent_selection(return_type_name('processing'), 'processing', return_category_db_table_name('processing'), $processing) . torrent_selection(return_type_name('team'), 'team', return_category_db_table_name('team'), $team) . torrent_selection(return_type_name('audiocodec'), 'audiocodec', return_category_db_table_name('audiocodec'), $audiocodec)."<br />".$lang_catmanage['text_selections_note'], 1);
|
||||||
}
|
}
|
||||||
elseif ($type=='category')
|
elseif ($type=='category')
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user