Функция хеширования md5 в php обрабатывается с разной скоростью на разных серверах [закрыто]Php

Кемеровские программисты php общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Функция хеширования md5 в php обрабатывается с разной скоростью на разных серверах [закрыто]

Сообщение Anonymous »

Добрый день.
Я арендовал VPS-сервер и на нем работает мой сайт.
Чтобы увеличить пропускную способность, я решил перейти на более мощный сервер. (характеристики указаны ниже)
Старый сервер:
Изображение
  • ЦП: 4 ядра
  • ОЗУ: 6 ГБ
  • Жесткий диск: 165 ГБ
Новый сервер :
Изображение
  • ЦП: 12 ядер
  • ОЗУ: 24 ГБ
  • Жесткий диск: 295 ГБ
Но в результате у меня получилось, что на новом сервере все работает в 5 раз медленнее.
Выполнил профилирование на обоих серверах с помощью xdebug.
В результате при анализе результатов выяснилось, что функция md5 на старом сервере срабатывает за 2 мс, а на новом сервере за 10 мс.
Поскольку эта функция используется в процессе локализации текста сайта на другие языки, эта возможность замедляет загрузку всех стран в ~5 раз
Ниже приведена функция, в которой вызывается функция md5:

Код: Выделить всё

function __($key = ''){
if(get_session('language')){
$language = get_session('language');
}else{
if(!get_user("language")){
$code = get_user("language");
$language = db_get("*", TB_LANGUAGE_CATEGORY, ["code" => $code]);
if(empty($language)){
$language = db_get("*", TB_LANGUAGE_CATEGORY, ["is_default" => 1]);
}
}else{
$language = db_get("*", TB_LANGUAGE_CATEGORY, ["is_default" => 1]);
}

$language = json_encode($language);
if(!empty($language)){
set_session(["language" => $language]);
}
}

if($language){
$language = is_string($language)?json_decode( $language ):$language;

if(isset($language->code)){
$lang_file = WRITEPATH."lang/".$language->code.".json";
if(file_exists($lang_file)){
$data = file_get_contents(WRITEPATH."lang/".$language->code.".json");
$data = json_decode($data, 1);
if(isset($data['data'])){
$data = $data['data'];
if($key != "" && isset($data[ md5($key) ])){
return $data[ md5($key) ];
}
}
}
}
}

return $key;
}
Старый сервер:
Изображение

Новый сервер:
Изображение


Подробнее здесь: https://stackoverflow.com/questions/792 ... fferent-se
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Php»