Разбираемся с файлами /etc/profile и /etc/bashrc

Недавно я столкнулся со следующей проблемой: приложение не сохраняло настройку umask, заданную в профиле root-пользователя, или в файле /etc/profile. Немного разобравшись в вопросе, я понял, что приложение использует только ту настройку umask, которая задана в  /etc/bashrc, не принимая даже те значения, которые являются его же собственными сценариями запуска.

Немного изучив вопрос, я понял, какую функцию выполняют эти файлы, чем они различаются и как они выполняются. Такой вопрос поднимается не часто, поэтому я подумал, что будет полезно рассказать о нем вам.

Читать далее...

Знакомство с Play Framework 2.3.4

В этом уроке мы поговорим о следующих аспектах Play Framework:

  • Установка Play
  • Новое приложение
  • Структура Play-приложения
  • Play -консоль
  • Установка Eclipse

Шаг 1: Загрузите Активатор отсюда.

Шаг 2: Распакуйте скачанный ZIP файл.

unzip typesafe-activator-1.3.6-minimal.zip
Archive:  typesafe-activator-1.3.6-minimal.zip
   creating: activator-1.3.6-minimal/
  inflating: activator-1.3.6-minimal/activator.bat  
  inflating: activator-1.3.6-minimal/activator  
  inflating: activator-1.3.6-minimal/activator-launch-1.3.6.jar  

Шаг 3: Добавьте активатор в переменную окружения PATH.

nano .bashrc
export TYPESAFE_ACTIVATOR=/home/developer/activator-1.3.6-minimal
export PATH=$PATH:$TYPESAFE_ACTIVATOR
Читать далее...

Шаблоны проектирования в PHP

  • PHP
  • 1 год назад

Что же такое шаблоны проектирования? Шаблоны проектирования это не шаблоны анализа, это не описания стандартных структур (например, связанных списков). Это не определенные разработки приложений или фреймворков. По сути, шаблоны проектирования это «описания взаимодействующих объектов и классов, предназначенных для решения общей проблемы проектирования в определенном контексте». Иным словами, шаблоны проектирования предоставляют обобщенное, многократно применяемое решение проблем программирования, с которыми мы сталкиваемся каждый день. Шаблоны проектирования это не готовые классы или библиотеки, которые можно просто применить к вашей системе. Это не конкретное решение, которое можно преобразовать в исходный код. Шаблоны проектирования – это намного больше. Это шаблоны, которые можно использовать для решения проблемы в различных конкретных ситуациях.

Читать далее...

Руководство по модульному тестированию. Часть I. Введение в PHPUnit

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

Читать далее...

Как использовать JMeter для проведения нагрузочного тестирования и производительности вашего веб-приложения

Поскольку приложение JMeter представляет собой Java-приложение, его можно использовать для проведения нагрузочного тестирования любого веб-приложения, включая приложения, написанные на PHP, .NET и т.д.

Изначально это приложение предназначалось для тестирования работы Apache Tomcat, который, по сути, представляет собой веб-сервер.

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

Читать далее...

Разработка плагина для jQuery: Пять простых шагов

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

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

Читать далее...

Как добавлять NoSQL-запросы в MySQL, интегрированный с memcached, на Ubuntu 14

О том, как использовать memcached и его функцию в качестве автономного сервера вместе с MySQL, уже написано во множестве прекрасных статей – например, Установка и использование Memcache на Ubuntu 14.04. Но в качестве автономного сервера memcached выполняет промежуточную функцию, предшествуя уровню доступа MySQL-клиента, и работает только с той информацией, которая находится в памяти, без возможности ее постоянного хранения. Это позволяет выполнять такие задания, как кэширование результатов повторных MySQL-запросов, что экономит ресурсы и оптимизирует работу нагруженных сайтов.

Читать далее...

15 отличных примеров для создания cron задач в Linux

MIN HOUR DOM MON DOW CMD

Таблица: Поля и допустимые диапазоны Crontab (синтаксис Linux Crontab)

Основа использования cron – выполнение задач в определённое время, как показано ниже. Это будет выполнять скрипт полного резервного копирования (full-backup) 10 июня в 8.30.

Пожалуйста, обратите внимание, что поле времени использует 24-часовой формат, Так что 8 АМ – 8, 8 РМ – 20 часов.

Читать далее...