Для centos не подскажу, не пользуюсь.
Если есть сомнения в софте, то лучше всего найти подробный мануал для новичков для своей версии и установить заново, снеся все настройки.
Как искать причину проблемы:
1. mysql остановлена
2. очищаем mysql лог
3. запускаем mysql, смотрим внимательно на экран и читаем буковки слева направо.
4. если все хорошо и запуск прошел штатно, заходим в mysql/на сайт, т.е. пользуемся и ждем когда упадет.
5. упало: смотрим лог mysql, исправляем ошибки из лога.
Дмитрий, да, это самый быстрый вариант использования строковых функций в данном случае.
Сам применяю такое, но только когда нужно многократно выполнить замены. При порядках в миллионы, есть неплохой выигрыш, а в однократных случаях почему-то предпочитаю str_replace, как-то удобнее что ли.
Это модификаторы шаблонов
i - регистронезависимость, т.е. найдутся как вхождения заглавных букв так и строчных, независимо от шаблона
u - обрабатывать строку в utf-8
s - особенности поиска в тексте с переносом строк(в данном случае необязательна, просто по умолчанию люблю писать шаблоны в таком режиме, чтобы использовать и переносы строк при поиске)
Вообще на сколько выигрывают строковые функции сложно сказать, все очень сильно зависит от объема текста, количества замен. Но скорость разнится на порядки.
Чтобы обрабатывать сообщения/команды, которые пишут пользователи боту у вас должен быть реализован некий постоянно слушающий соединение демон.
Вот этот демон у вас видимо организован в однопоточном режиме.
1. Принял команду 1
2. Выполнил команду 1
3. Принял команду 2
4. Выполнил команду 2
и т.д.
И если выполнение команды занимает длительное время, то следующая будет ждать это время.
Будет лучше если организовать например 2 демона. Первый как и сейчас будет слушать команды бота, но не выполнять их, а отправлять в очередь. А второй будет слушать появление команд в очереди и выполнять их. Так вот когда понадобится выполнять команды быстрее, просто можно создать несколько вторых демонов, которые будут в разных потоках слушать очередь и параллельно выполнять команды.
Это общая теория. Если же говорить о питоне, то копайте например в сторону модуля threading
InoMono, Что тогда даст самоподписанный сертификат в "твоей" локальной сети, полной "троянов, ботнетов и прочей вирусни"?)
Для чего вообще нужен сертификат и от чего он защищает?
1. Шифрование трафика соединения, чтобы всякие снифферы не смогли его прочитать.
2. Понимание пользователем, что он попал именно на тот ресурс, который запросил(благодаря браузеру).
И еще некоторые плюшки в дополнении к пункту 2 в сертификатах подороже.
В данном случае фраза "под вашим контролем" означает, что вы сами контролируете безопасность сети, а самоподписанный сертификат не так уж и много даст в этом плане.
Ниже привожу аргументы своего утверждения:
1. Логины/пароли, которые можно прочитать сниффером из соединения с локальным сайтом имеют нулевую ценность, потому что врядли кто-то сможет попасть извне на него(в сети же есть NAT, я надеюсь).
Это если брать пароли и доступы всякие. Если же речь о всяких секретных данных пересылаемых на этот сайт с клиента, то что мешает "вирусне" их схавать с машины жертвы напрямую.
2. Если не создать свой CA и не распространить его по клиентским машинам, то пользователь будет видеть "ругань" браузера и не сможет по сути защитить себя от пункта 2. А если все же заморочиться с корневым CA и убрать ругань, то это даст еще большую свободу зловредам, т.к. можно будет понавыписывать сертификаты уже на реальные домены и читать уже более полезный трафик.
И уж тем более от "троянов, ботнетов и прочей вирусни" он вас не спасет. Для избавления от этого зоопарка и профилактики его появления используются совершенно другие технологии.
Если есть сомнения в софте, то лучше всего найти подробный мануал для новичков для своей версии и установить заново, снеся все настройки.