Тестирование SQL запросов
Иногда возникает задача протестировать скорость выполнения SQL-запросов или требуется сымитировать нагрузку на базу данных, чтобы обнаружить слабые места.
В случае с MySQL есть несколько вариантов идентифицировать проблемные запросы:
- включить лог медленных запросов и запросов без индексов в конфиге MySQL;
- написать функцию-обертку над mysql_query(), которая бы замеряла и фиксировала скорость каждого запроса;
- написать php-скрипт, который бы имитировал нагрузку на базу данных и замерял скорость запросов.
Я расскажу про второй и третий варианты.
Читать полностью »
Защита email от спамеров
Обычно электронный почтовый адрес размещается на странице следующим образом:
<a href="mailto:email@mail.ru">email@mail.ru</a>
В таком виде он легко читается спам-ботами, которые сканируют сайты в поисках электронных почтовых адресов. Чтобы спам-боты не смогли занести ваш email в свою базу, его нужно скрыть. Что это значит? Это значит, что человек, посещающий ваш сайт, видит email в привычном виде, а боты, анализирующие код страницы, ничего не найдут. Существует множество способов сделать это.
Читать полностью »
Экспорт данных из ДубльГис
В этой статье я расскажу как написать простой плагин для ДубльГис, который будет экспортировать адреса из ДубльГис в удобный формат. В качестве средства разработки я выбрал язык C#. Есть два варианта создания плагина для ДубльГис: в виде DLL-библиотеки и в виде COM-сервера. Я выбрал второй вариант. Для разработки плагина нам понадобятся: Visual Studio, сам ДубльГис и программа для генерации файла описания.
Сначала нужно установить ДубльГис и Visual Studio. После этого в Visual Studio создаем проект «C#» > «Class Library». Назовем его «ExportPlugin». В разделе «Solution Explorer» переименуем класс «Class1.cs» в «PluginCore.cs» и даем добро на переименование названия класса в коде.
Читать полностью »
Оптимизация кода
Оптимизация — это часть нашей жизни. Любой труд человек пытается оптимизировать. Что нас подталкивает на это? Банальная лень. Не зря говорят, что лень — двигатель прогресса. Программисты, как известно, являются очень ленивыми людьми, поэтому они стараются оптимизировать любой труд путем автоматизации. Но не каждый программист задумывается об оптимизации собственного кода.
Я постараюсь сформулировать несколько правил с практическими примерами, в которых расскажу о том, как можно оптимизировать код.
Читать полностью »