Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » IkonBoard и другие форумы » Ikonboard v.2 » Оптимизация кода IB (увеличение скорости работы)

Модерирует : Antuan

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8

Открыть новую тему     Написать ответ в эту тему

Shurik



Главком. флейма
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
lynx

Цитата:
Вы лучше скажите, куда мне еще покопать  

раз памяти мало, то у тебя топики могут сильно вырасти и обработка их будет немало хавать...
например, тот же topic.cgi считывает весь thd в массив, а это все в памяти хранится.  
Постом выше ты перечисляла что ты сделала. Думаю, ты никчемную проверку на badwords тоже снесла?

Цитата:
Снос лишних переменных,  

в самих скриптах? а что это дает?

----------
Metal Bands...

Всего записей: 3171 | Зарегистр. 11-06-2001 | Отправлено: 17:06 14-05-2003
lynx



Advanced lynx
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Shurik
 

Цитата:
 никчемную проверку на badwords тоже снесла?  

 
Да, снесла, оставила ее только в регистер.цги при проверки имени. Мне это надо. Впрочем, я еще буду про это думать.
 

Цитата:
раз памяти мало, то у тебя топики могут сильно вырасти и обработка их будет немало хавать...  
например, тот же topic.cgi считывает весь thd в массив, а это все в памяти хранится.  

 
Буду закрывать многостраничные темы и открывать новые
 

Цитата:
Снос лишних переменных,  
 
в самих скриптах? а что это дает?

 
Так все то же, например, если прописать везде вместо $tablewidth 90%, это экономит память, которую занимала бы эта переменная. Глобальная переменная пакета. Когда все поменяно, сношу еще из styles.cgi и она больше не парсится в каждый скрипт.
 
 
 
еще, еще что??

Всего записей: 11712 | Зарегистр. 08-05-2001 | Отправлено: 17:23 14-05-2003
Shurik



Главком. флейма
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
lynx

Цитата:
Так все то же, например, если прописать везде вместо $tablewidth 90%, это экономит память, которую занимала бы эта переменная. Глобальная переменная пакета. Когда все поменяно, сношу еще из styles.cgi и она больше не парсится в каждый скрипт.

а в случае необходимости не устанешь менять? По-моему прирост совсем незаметный должен быть... ибо этот tablewidth вообще везде используется.

Цитата:
еще, еще что??

да хватит уже.
Все наверное...

----------
Metal Bands...

Всего записей: 3171 | Зарегистр. 11-06-2001 | Отправлено: 20:58 14-05-2003
lynx



Advanced lynx
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Shurik
 

Цитата:
 в случае необходимости не устанешь менять?  

 
Не думаю, что это понадобится, дизайн два года не менялся и не планируется
 

Цитата:
Все наверное...

 
Жаль.. ОК.

Всего записей: 11712 | Зарегистр. 08-05-2001 | Отправлено: 21:42 14-05-2003
lynx



Advanced lynx
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Небольшой вопрос к программерам по оптимизации кода, в частности:
 
В register.cgi этот кусок:
 
### append boardstats.cgi
 
    require "$ikondir" . "data/boardstats.cgi";
    $filetomake = "$ikondir" . "data/boardstats.cgi";
    $totalmembers++;
    open(FILE, ">$filetomake");
    flock(FILE, 2);
    print FILE "\$lastregisteredmember = \"$inmembername\"\;\n";
    print FILE "\$totalmembers = \"$totalmembers\"\;\n";
    print FILE "\$totalthreads = \"$totalthreads\"\;\n";
    print FILE "\$totalposts = \"$totalposts\"\;\n";
    print FILE "\n1\;";
    close (FILE);
     
Зачем нужно писать в файл после регистрации нового мембера всего постов и всего тем? Зачем эта лишняя запись в файл?

Всего записей: 11712 | Зарегистр. 08-05-2001 | Отправлено: 17:33 14-07-2003
Shurik



Главком. флейма
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
lynx
действительно, попробуй не писать.
не, не пробуй! не надо
вообщем, смотри:  

Цитата:
open(FILE, ">$filetomake");

это говорит о том, что мы ПОЛНОСТЬЮ перезаписываем файл. Если ты уберешь последние 2 строчки, то все, файл мы получаем брякнутый.
так что все надо.

----------
Metal Bands...

Всего записей: 3171 | Зарегистр. 11-06-2001 | Отправлено: 19:54 14-07-2003
lynx



Advanced lynx
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Shurik
 

Цитата:
 мы ПОЛНОСТЬЮ перезаписываем файл. Если ты уберешь последние 2 строчки, то все, файл мы получаем брякнутый.  
так что все надо.

 
Да, и правда. Спасибо.

Всего записей: 11712 | Зарегистр. 08-05-2001 | Отправлено: 04:33 15-07-2003
Shurik



Главком. флейма
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
lynx
смотри чего я для тебя нашел
 
в ikonboard.cgi че это за батва?
 
if ($loginmessage) {
 
проискал по всем файлам - вообще нигде нет $loginmessage.
это выводится внизу, где указывается время сервера...
думаю, этот IF можно смело вырезать.

----------
Metal Bands...

Всего записей: 3171 | Зарегистр. 11-06-2001 | Отправлено: 20:44 16-07-2003
lynx



Advanced lynx
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Shurik
 

Цитата:
в ikonboard.cgi че это за батва?  
 
if ($loginmessage) {  
 
проискал по всем файлам - вообще нигде нет $loginmessage.  
это выводится внизу, где указывается время сервера...  
думаю, этот IF можно смело вырезать.

 
Ты, наверное, порезал себе, у меня эта переменная жива.  
Смотри.
 

Код:
 
        if ($inmembername eq "Guest") { $folderpicture = qq~<img src="$imagesurl/images/folder.gif" border="0">~; $loginmessage = "Вы должны войти в конференцию, чтобы видеть помеченные сообщения"; }
 

 
Потом внизу:
 

Код:
 
   if ($loginmessage) {
      $output .= qq~
  <!-- Cgi-bot Script page footer -->
  <p>
  <table cellpadding=0 cellspacing=0 border=0 width="90%" align=center>
  <tr>
  <td>
  <div class="menu8">Время на форуме $basetimes<p>$loginmessage</div>
  </td>
  </tr>
  </table>
   <!-- Cgi-bot End of script page footer -->
    ~;
        }
 
       else {
        $output .= qq~
        <!-- Cgi-bot Script page footer -->
        <p>
 <table cellpadding=0 cellspacing=4 border=0 width="90%" align=center>
 <tr>
 <td colspan=2 valign=top>
 <div class="menu8">Время на форуме $basetimes</div>
 </td>
 </tr>
 <tr>
 

 
То есть как бы вот...

Всего записей: 11712 | Зарегистр. 08-05-2001 | Отправлено: 02:54 17-07-2003
Shurik



Главком. флейма
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
гм... и что же за помеченные такие сообщения?
а так, вообще, мне из своих файлов уже бесполезно коды приводить. надо доставать старый движок.

----------
Metal Bands...

Всего записей: 3171 | Зарегистр. 11-06-2001 | Отправлено: 11:11 17-07-2003
lynx



Advanced lynx
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Shurik
 

Цитата:
 и что же за помеченные такие сообщения?  

 
Если Гость входит, то для него все иконки форумов беленькие (как посещенные), и темы также он не видит "новые" (зеленые).
Соотвественно, ему внизу не выводится:
 
"Есть новые мессаги после вашего последнего посещения"
"Нету таких"
 
А выводится "Вы должны войти в конференцию, чтобы ..."
 

Всего записей: 11712 | Зарегистр. 08-05-2001 | Отправлено: 15:29 17-07-2003
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8

Компьютерный форум Ru.Board » IkonBoard и другие форумы » Ikonboard v.2 » Оптимизация кода IB (увеличение скорости работы)


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru