Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: Совет от знающих C, Perl, PHP!!!  (Прочитано 5778 раз)
0 Пользователей и 1 Гость смотрят эту тему.
AkimVital
Гость
« : 21-09-2005 14:18 » 

Ситуация такая:
Пишем приложение, которое должно обрабатывать очень большую базу данных о трафике, примерно 132 000 записей.
Естесн, при обработке записей в БД производятся математическая обработка данных, кое-какие операции и данные в меньшем виде ложаться в другую базу (примерно 45 записей).
Делали такое на ПХП: Апач грузит 95% CPU, 90% ОЗУ и 50% свопа, и после выполнения (гдет через пару часов)  дохнет.
Делали такое на Perl'е: 82% CPU, 2% ОЗУ все нормально, но работает часа 4 с половиной.
На Си еще не пробовали, собственно в этом вопрос и заключается. Резонно ли? Кто лучше в этом плане?
При написании приложения используется MySQL!

И еще... есть вопрос на счет PHP как модуль CGI. Может стоит попробовать так?
« Последнее редактирование: 15-12-2007 18:56 от Алексей1153++ » Записан
RXL
Технический
Администратор

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #1 : 22-09-2005 06:52 » 

Надо определиться, что же тормозит в этой связке - apache, mod_perl/php или mysql. У меня программа на перл обрабатывает 1-2млн записей за 10-20 минут. Т.е., количество записей - это не показатель. Следует задуматься над оптимизацией запросов к базе, если в запросе можно сделать какие-лио вычисления или группировку. Если из базы тупо считывается и вычисляется локально, то см. в сторону оптимизации программы. По быстродействию три перечисленных языка я бы расставил так, в порядке уменьшения производительности: C, Perl, PHP. Конечно, безобразная программа на C, может быть медленне, чем оптимизированная на PHP.

CGI или модуль - без разницы - на колличество мегагерц это не влияет.

Рекомендую задачи такого рода (длительные вычисления) с web не связывать, а запускать на фоне (напр. через шедулер).
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines