Перейти к содержимому


какие на данный момент есть советы по Ускорению работы базы


Сообщений в теме: 21

#1 smart

    Активный участник

  • Пользователи
  • PipPipPip
  • 297 сообщений
  • Пол:Мужчина
  • Интересы:v1980.8@gmail.com

Отправлено 17 Сентябрь 2011 - 08:55

посмотрел пару тем про ускорение / оптимизацию работы базы. Темы настолько старые, что советы из них скорее всего мало актуальны.

Было бы здорово если разработчики и опытные пользователи поделились своими советами и идеями - как ускорить работу данной замечательной базы.

Какая ситуация у нас:
версия 1.9.3 WEB - Хостинг TimeWeb - нам нравится (до этого был Маджордом - обплевались)
Ревизия: 1976 от 2011-07-05
Скрон подключен.

Общая статистика базы:
примерно 20 000 записей.
400 файлов на общий вес 40 мб.
Общий вес бэкапа - примерно 170мб.
Вычисления используются активно.
Напоминания тоже.
с базой работают 8 человек.

Ситуация со скоростью:
- в целом нормально.
- но часто, когда нажимаешь сохранить или открыть новую таблицу - задумывается на пару секунд. Вроде на первый взгляд не критично, но когда в день так надо сделать 200 записей - начинает сильно раздражать и замедляет работу менеджера.

Пробовали ставить локально - ситуация примерно такая же.

======

Что думают местные гуру, что посоветуете?

#2 CbCoder

    Активный участник

  • Программист ООО "КБ"
  • PipPipPip
  • 8 759 сообщений
  • Пол:Мужчина
  • Город:Казань

Отправлено 19 Сентябрь 2011 - 08:53

В настоящее время идет оптимизация производительности работы программы, и в плане работы вычислений, и в плане работы с БД - в частности уменьшается количество обращений к базе данных. Версия 1.9.5 должна работать быстрее.

#3 smart

    Активный участник

  • Пользователи
  • PipPipPip
  • 297 сообщений
  • Пол:Мужчина
  • Интересы:v1980.8@gmail.com

Отправлено 22 Сентябрь 2011 - 17:31

молодцы, что не стоите на месте. ждем 1.9.5

#4 smart

    Активный участник

  • Пользователи
  • PipPipPip
  • 297 сообщений
  • Пол:Мужчина
  • Интересы:v1980.8@gmail.com

Отправлено 21 Октябрь 2011 - 12:31

Уважаемые разработчики и другие специалисты по базе - все-таки нужен ваш совет.

Пытаемся увеличить скорость работы базы, но что-то не получается.

Поставили нашу базу локально на комп - Corei3 2.53GHz 3ГБ
Сама база:
примерно 20 000 записей.
400 файлов на общий вес 40 мб.
Общий вес бэкапа - примерно 170мб.
Вычисления используются - но сократили где только можно.
Напоминания активных мало (хотя старых полно, но они закрыты).
С базой работает 1 человек.

Ситуация со скоростью - часто, когда нажимаешь сохранить или открыть новую таблицу - задумывается на 5-7 секунд. Вроде на первый взгляд не критично, но когда в день так надо сделать 200 записей - начинает сильно раздражать и замедляет работу менеджера.

При этом очень странно, что такая задержка (5-7) секунд происходит на мощном компьютере даже в таблицах где нет вычислений. Процессор больше 30% не нагружается.

В чем может быть проблема, куда копать?

#5 Timur

    Активный участник

  • Техподдержка ООО "КБ"
  • PipPipPip
  • 854 сообщений
  • Пол:Мужчина

Отправлено 21 Октябрь 2011 - 13:46

Просмотр сообщенияsmart (21.10.2011, 13:31) писал:

В чем может быть проблема, куда копать?

Не подскажете, у Вас установлен Cron?

#6 smart

    Активный участник

  • Пользователи
  • PipPipPip
  • 297 сообщений
  • Пол:Мужчина
  • Интересы:v1980.8@gmail.com

Отправлено 21 Октябрь 2011 - 14:04

в вебверсии - обязательно.

в локальной - не знаю, установил из вашего установщика.

#7 Analitic

    Активный участник

  • Пользователи
  • PipPipPip
  • 700 сообщений
  • Пол:Мужчина

Отправлено 21 Октябрь 2011 - 15:28

Просмотр сообщенияsmart (21.10.2011, 14:04) писал:

часто, когда нажимаешь сохранить или открыть новую таблицу

т.е. задежка не постоянная?

#8 smart

    Активный участник

  • Пользователи
  • PipPipPip
  • 297 сообщений
  • Пол:Мужчина
  • Интересы:v1980.8@gmail.com

Отправлено 21 Октябрь 2011 - 15:34

да, не постоянная. например первый раз можно ждать 7 секунд, а потом тоже самое повторять - будет очень быстро.

#9 Analitic

    Активный участник

  • Пользователи
  • PipPipPip
  • 700 сообщений
  • Пол:Мужчина

Отправлено 21 Октябрь 2011 - 15:40

Отключите все вычисления в таблице, проверьте задержку.
Отключите все задания в cron - галочка Запретить выполнение, проверьте задержку.

#10 smart

    Активный участник

  • Пользователи
  • PipPipPip
  • 297 сообщений
  • Пол:Мужчина
  • Интересы:v1980.8@gmail.com

Отправлено 21 Октябрь 2011 - 16:31

Цитата

Отключите все вычисления в таблице, проверьте задержку.
это надо каждое вычисление в поле закомментировать? или есть какой то более быстрый и радикальный способ

#11 Timur

    Активный участник

  • Техподдержка ООО "КБ"
  • PipPipPip
  • 854 сообщений
  • Пол:Мужчина

Отправлено 24 Октябрь 2011 - 08:44

Просмотр сообщенияsmart (21.10.2011, 17:31) писал:

это надо каждое вычисление в поле закомментировать? или есть какой то более быстрый и радикальный способ
Если только каждое вычисление будете убирать по отдельности. но для начала, чтобы выяснить действительно ли дело в вычислениях, отключите все задания в Cron. Если скорость работы не увеличится - значит дело всеже в вычислениях.

#12 f-jeka

    Активный участник

  • Пользователи
  • PipPipPip
  • 196 сообщений

Отправлено 27 Октябрь 2011 - 03:18

У меня клиентская база версия: 1.9.4 Ревизия: 2391 установлена на хостинге с параметрами Virtual CPU 500Mhz, 200Mb memory. Некоторые странички, например контрагенты, очень долго открываются. Вычислений в полях нет. В данный момент 1360 компаний. Режим скролла окна простой. В процессе генерации страницы мониторинг показывает загрузку процессора на 80% , а памяти на 85%. Долго подбирал параметры файлов php.ini и my.cnf. Особого прироста производительности не заметил. Подскажите как можно увеличить быстродействие. Какие еще настройки попробовать?

#13 Timur

    Активный участник

  • Техподдержка ООО "КБ"
  • PipPipPip
  • 854 сообщений
  • Пол:Мужчина

Отправлено 28 Октябрь 2011 - 07:49

Просмотр сообщенияf-jeka (27.10.2011, 4:18) писал:

У меня клиентская база версия: 1.9.4 Ревизия: 2391 установлена на хостинге с параметрами Virtual CPU 500Mhz, 200Mb memory. Некоторые странички, например контрагенты, очень долго открываются. Вычислений в полях нет. В данный момент 1360 компаний. Режим скролла окна простой. В процессе генерации страницы мониторинг показывает загрузку процессора на 80% , а памяти на 85%. Долго подбирал параметры файлов php.ini и my.cnf. Особого прироста производительности не заметил. Подскажите как можно увеличить быстродействие. Какие еще настройки попробовать?
1. Если на сервере не установлен Cron - установите его. Подробная инструкция по установке тут - http://clientbase.ru..._admin_16/cron/
2. Если Cron все же установлен, то попробуйте уменьшить периодичность выполнения заданий в нем. Для этого нужно перейти в "Настройки" - "Дополнительно" - "Настройки Cron", затем зайти в нужное задание (например "напоминания") и изменить для него период (например на "Каждые 15 минут").
3. Попробуйте отключить "Расширенные скролл окна" в общих настройках программы.
4. Уменьшите количество строк таблицы, которые отображаются на одной странице.

#14 Дмитрий ЕСП

    Активный участник

  • Пользователи
  • PipPipPip
  • 78 сообщений
  • Пол:Мужчина

Отправлено 29 Январь 2015 - 00:11

1. Перенос записей в архив?
2. Перенос записей в корзину (удалённые) ?
3. Удаление записей из корзины (удалённые) ?
При использовании SaaS аккаунта даст ли увеличение скорости работы при открытии таблицы, открытие записи, редактирование записи, редактирование записи и сохранение записи?

#15 CbCoder

    Активный участник

  • Программист ООО "КБ"
  • PipPipPip
  • 8 759 сообщений
  • Пол:Мужчина
  • Город:Казань

Отправлено 29 Январь 2015 - 09:42

1, 2 практически не даст, т.к. общее количество записей от этого не изменится.
3 может увеличить производительность по одной таблице, но только если записей в корзине действительно очень много (сравнимо или больше чем активных).

Вообще, практика показывает, что больше всего тормозов от вычислений на событие отображение полей, если они есть.

#16 maksn

    Активный участник

  • Пользователи
  • PipPipPip
  • 314 сообщений
  • Пол:Мужчина

Отправлено 30 Январь 2015 - 18:57

Наибольшее ускорение дает ГРАМОТНОЕ построение индексов. Без этого любая СУБД будет тормозить при значительном кол-ве записей.
Но никто почему то не хочет этим заниматься. Попробуйте профилировать запросы, что генерит КБ в каком нибудь отладчике.
Вот это будет зрелище.

Пользовательские таблицы - здесь должны админы пользователя этим заниматься
Служебные - хотелось, чтобы программеры КБ озаботились.

Сообщение отредактировал maksn: 30 Январь 2015 - 19:09

"...Сижу, паяю. CRM починяю..."
Мои разработки

#17 CbCoder

    Активный участник

  • Программист ООО "КБ"
  • PipPipPip
  • 8 759 сообщений
  • Пол:Мужчина
  • Город:Казань

Отправлено 02 Февраль 2015 - 10:25

Просмотр сообщенияmaksn (30 Январь 2015 - 18:57) писал:

Наибольшее ускорение дает ГРАМОТНОЕ построение индексов

Это заблуждение. Наибольшее ускорение дает уменьшение количества запросов, их в КБ сейчас слишком много на страницу, и это основная причина тормозов. Вычисления на отображение просто увеличивает их еще больше. Что касается индексов, мы экспериментировали с ними, существенного выигрыша не обнаружили, но на отдельных направлениях частично оптимизировать удалось. Индексированная версия выйдет в 2.0.4. Более кардинальные изменения в плане запросов будут только в 3.0.

#18 maksn

    Активный участник

  • Пользователи
  • PipPipPip
  • 314 сообщений
  • Пол:Мужчина

Отправлено 02 Февраль 2015 - 11:54

Просмотр сообщенияCbCoder (02 Февраль 2015 - 10:25) писал:

.... Наибольшее ускорение дает уменьшение количества запросов, их в КБ сейчас слишком много на страницу,
Я добавлю - слишком много не оптимизированных запросов

Просмотр сообщенияCbCoder (02 Февраль 2015 - 10:25) писал:

Это заблуждение
Ну, не стану говорить о том, как работает выборка на SQL серверах и что приходится ему (серверу) делать при отсутствии индексов
"...Сижу, паяю. CRM починяю..."
Мои разработки

#19 andibrag

    Прежде, чем задать вопрос, продумайте свое решение.

  • Активный пользователь
  • PipPipPip
  • 1 356 сообщений
  • Пол:Мужчина
  • Город:Санкт-Петербург

Отправлено 02 Февраль 2015 - 12:28

Пытался экспериментировать с индексами. Также не заметил существенной разницы.
Обещали, что изменение механизма вывода напоминаний изменит ситуацию. Речь шла про 2.0.3, кажется. Как висела, так и висит.
В худшие времена (возможно когда пятна на солнце) вывод страницы может достигать минуты и более. Очень способствует приобщению к философии дзен.
Жду 3.0 как манны небесной.

Творческая группа "ТАВР".

www.TAVR.pro Художественная ковка, металлоконструкции.

www.СтолМет.рф Складные столы, стулья и системы для их хранения


#20 maksn

    Активный участник

  • Пользователи
  • PipPipPip
  • 314 сообщений
  • Пол:Мужчина

Отправлено 02 Февраль 2015 - 14:25

Просмотр сообщенияandibrag (02 Февраль 2015 - 12:28) писал:

Пытался экспериментировать с индексами. Также не заметил существенной разницы.

Прошу прощения за флуд. Никого не хочу обидеть. :rolleyes: Но я же писал "ГРАМОТНОЕ" построение индексов.
Индексы можно понаделать такие, что лучше бы их не было. Совсем.
По своему основному месту работы мне приходится иметь дело с такими монстрами, как MS SQL и ORACLE с таблицами по несколько миллионов записей.

Правильно проиндексированные таблицы там дают результат в долю секунды, а без таковых могут отрабатывать часами
(Перебирая все содержимое таблицы по нескольку раз - FULL SCAN)

Что касается КБ, из практики, проиндексированные таблицы дают прирост производительности SQL сервера в 8-10 раз
В зависимости от размеров таблиц

Сообщение отредактировал maksn: 02 Февраль 2015 - 14:48

"...Сижу, паяю. CRM починяю..."
Мои разработки





Количество пользователей, читающих эту тему: 2

0 пользователей, 2 гостей, 0 анонимных