Проблема Оптимизации

soman

Новичок
Проблема Оптимизации

Добрый день, ув. участники форума.

Хотелось бы узнать Ваше мнение насчет одной проблемы, с которой рано или поздно многие из нас сталкиваются.

I. Что есть.
- VPS (1MHz Celeron, 1gb ram, 120gb HDD).
- 5000 уников в день, 200'000 показов.
- БД гибридная: Mysql+текстовые файлы.
- Система разработана на PHP.

II. Суть проблемы.
На проекте есть личная почта. Реализована (с точки зрения технолог.) так:
при регистрации на проекте каждому пользователю - выделяется 2 папки: incom, outcam. В них в текстовом формате (*.txt) хранятся письма. Они же парсятся, сортируются, редактируются, удаляются средствами PHP.
Каждый раз парсится ровно столько файлов, сколько вообще есть у пользователя. --> В этом я видел плюс когда реализовывал (тогда я посчитал что это будет быстрее, чем делать выборку SQL-запросом в mysql через SELECT * FROM MAIL WHERE FOR_LOGIN='$login' из 600'000 Записей (это сейчас, а через год может быть и 2-3 млн.).
Нагрузка на систему сейчас очень высокая (LA колеблется в пределах от 0.01 ночью до 20 к вечеру - самому пика активности).
При этом систему грузит httpd, а не mysql (70% завязано на mysql, 30% На текстовых файлах).
Делал замеру при помощи microtime(), которые показали, что у тех, у кого в личке по 2к-3к писем - время загрузки кода (парсинг+вывод) примерно =10-20 сек. У кого меньше - все нормально. Другие узкие места на сайте не обнаружены.
Тоесть, как я понял - систему тормозят пользователи, у которых личка захламлена. Вводить лимиты на кол-во писем совершенно не хочется.

Соответственно вытекающие вопросы:
1) Поможет ли переход с текстовых файлов на Mysql?
2) Если поможет, то как лучше структурировать данную БД?
 

korchasa

LIMB infected
А вы попробуйте. Вам это сделать проще чем нам, ибо мы не знаем: как выводятся сообщения (общая лента или по собеседникам), средний размер сообщения, скорость запросов чтение/запись.

Как более-менее простой (но производительный) вариант - делить не по income/outcome, а по собеседнику. Сегментов больше, размер сегмента - меньше, проблем с блокировками нет.

>Вводить лимиты на кол-во писем совершенно не хочется
А вы удаляйте по времени. И отдельная услуга - "посмотреть архив", с оплатой по СМС :)
 
Сверху