• Опыт эксплуатации MySQL Master-Master — как пережить аварию датацентра

      Всем привет!

      Сегодня поговорим о том, для каких задач на самом деле полезна MySQL Master-Master репликация, для каких — полностью бесполезна и вредна, какие мифы и заблуждения с ней связаны и какую практическую пользу можно быстро получить от данной технологии. Приведу конкретные примеры настройки и схемы архитектур.

      Говорить о MySQL Master-Master репликации — в контекстах высокой доступности и производительности — модно, но, к сожалению, многие не понимают ее сути и связанных с технологией серьезных ограничений.
      Начнем с того, что в классическом MySQL «настоящей» Master-Master репликации — пока нет :-) Но если постараться, можно все таки просто и быстро настроить эффективную схему выживания при отказе одного датацентра и получить свою долю счастья.


      Читать дальше →
    • Развитие образного мышления

        image

        Пламенный привет, дорогие хабравчане!

        В своей дебютной статье я хочу рассказать вам об упражнениях-играх на развитие образного мышления, которые будут полезны не только людям творческих профессий: в отличие от упражнений на развитие воображения, в которых идет доминирование правого полушария, прокачка образного мышления активно задействует аналитические способности, а это уже симбиоз двух полушарий. Поэтому эти упражнения прекрасно подойдут не только для получения каких-либо плодов для людей, чья работа хоть как-то связана с образной информацией, но и любому человеку, который хочет иметь острый ум и налаженное взаимодействие обоих полушарий мозга.
        Читать дальше →
      • Установка и настройка hyper-v server для тех, кто впервые его видит

        Вступление


        Сегодня я расскажу о том, как установить и настроить гипервизор hyper-v server от компании Microsoft, а так же о некоторых подводных камнях и способах их избежать.
        Поводом для написания этот статьи стал материал данного поста. Этот пост подходит больше как шпаргалка, если вы уже работали с данным гипервизором. Новичку же придется столкнуться с кучей нюансов и перекопать немало форумов, в поисках ответов на нестандартные вопросы.

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

        Под катом много текста и скриншотов
        Читать дальше →
      • Apple выпустила руководство по безопасности iOS

          Компания Apple представила руководство по безопасности для iOS, которое было опубликовано на Apple.com где-то в конце мая. Замечено же за пределами сообщества разработчиков Apple оно было лишь сейчас. Данная публикация достойна внимания, поскольку это первый раз, когда Apple выпустила руководство, ориентированное скорее на администраторов.

          Новое руководство включает четыре раздела, посвященные таким темам, как системная архитектура, шифрование и защита информации, сетевая безопасность и доступ к устройству.
          Читать дальше →
        • Защита для NGINX — NAXSI

            Что такое NAXSI ?


            NAXSI = NGINX ANTI XSS & SQL INJECTION
            Проще говоря, это файрвол веб-приложений (WAF) для NGINX, помогающий в защите от XSS, SQL-инъекций, CSRF, Local & Remote file inclusions.
            Отличительными особенностями его являются быстрота работы и простота настройки. Это делает его хорошей альтернативой например mod_security и апачу.

            Зачем нужен NAXSI ?

            Очевидно, лучше всего защищаться от вышеперечисленных атак правильно написанным кодом. Но есть ситуации, когда WAF (и в частности naxsi), поможет:
            • Низкое качество кода сайта, при отсутствии возможности/ресурсов все выкинуть и переписать нормально.
            • “Закрытый” код, в котором невозможно исправить ошибки.
            • Неизвестное качество кода в важном для бизнеса участке.


            Читать дальше →
          • [Перевод] CSS Filters

            CSS Filters были созданы для получения различных визуальных эффектов при применении их к DOM элементам. В данной статье мы поговорим об истории фильтров, о том, что они делают и как их применять. Так же рассмотрим их влияние на производительность как на десктопах, так и на мобильных устройствах.
            Читать дальше →
          • Масштабирование веб-приложений с помощью HMVC

            • Translation
            Последние десять лет мы наблюдаем второй цикл веб-дизайна – сайты превращаются в приложения и уже практически не появляется новых проектов, не обладающих некой долей интерактивности. Увеличение сложности ПО, разрабатываемого для интернета, вызвало необходимость в структурированном и взвешенном проектировании приложений.

            На сегодняшний день наиболее часто используемым паттерном проектирования сайтов является Модель-Вид-Контроллер (MVC). Повсеместное его использование отчасти вызвано успехом и популярностью фреймворка Ruby on Rails. Сейчас MVC является практически синонимом веб-разработки среди всех платформ.

            При выполнении задач, активно нагружающих процессор, современные сайты все больше полагаются на выделенные ресурсы. Этому, в частности, поспособствовало открытие компаниями Amazon и Google облачных сервисов, которые позволяют разработчикам существенно уменьшить нагрузку на процессоры их собственных серверов. Каждый сервис обычно проектируется в виде отдельного элемента ПО, который запускается внутри своего домена и использует свои собственные ресурсы.

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

            Для уменьшения первоначальных вложений обычно принимают решение о том, что приложение должно быть спроектировано в виде целостной программы, содержащей все требуемые функции. Если сайт быстро обретет популярность, это станет проблемой. У меня остались не очень приятные впечатления от рефакторинга плохо масштабируемых кодовых баз. К тому же, это может потребовать большого количества ресурсов и денег. В идеале приложения должны расти по мере необходимости и не требовать в процессе этого крупных финансовых затрат.
            Читать дальше →
          • Находим SQL инъекцию в *******.alfabank.ru с помощью Google

              Сразу хочу сказать, что данная статья написана исключительно в образовательных целях. Я не преследую никакого злого умысла и, тем более, не подталкиваю никого к совершению противоправных действий. Уязвимость на данный момент закрыта. Заинтересованных прошу под кат.
              Читать дальше →
            • Коллекции объектов в PHP

              На протяжении последних 5 лет я работаю с PHP. У него есть достаточно разных проблем, но это никогда не мешало создавать отлично работающие продукты.

              Не смотря на это, есть ряд вещей, которые выполняются внутри достаточно «криво». Один из вопросов, который постоянно тратил мои нервы, был вопрос работы с множествами объектов с помощью массивом данных.
              Читать дальше →
            • Полезные штуки для iOS-разработчика #1

                На Хабре в свое время было несколько статей «Очень много полезных штук для AS3». Автор попытался собрать ссылки на самые полезные и интересные библиотеки. И т.к. в последнее время я разрабатываю под iOS, решил последовать его примеру и сделать то же самое, но для своей платформы. Описания почти прикладывать не буду, все есть на страничках проектов.
                Читать дальше →
                • +104
                • 80.8k
                • 80
              • Re:StartPSD или Браузеры в стиле Aero

                  Это ответ на пост StartPSD — в помощь дизайнерам сайтов, автоматизируем работу. В комментариях очень многие интересовались, почему же использовался Safari и Mac, поэтому я решил сделать аналогичную штуку только в стиле Аэро. Возможно кому-то пригодится.

                  Сетка взята из шаблона Firefox для «мака» от cherenkevich (там еще неплохая серия статей про модульную сетку) — cherenkevich.livejournal.com/40021.html
                  Читать дальше →
                • Потерянная группа. Выясняем назначение «странных» групп в AD

                    Доброе время суток, хабраграждане!

                    Спешу с Вами поделиться одной из своих вещиц, которые были призваны облегчить работу мне, как системного администратора, который разбирается в, доставшимся ему по наследству, хламе в Active Directory.
                    Самые проблемные из доставшегося добра, по моему мнению, это группы. О них и пойдет речь в данной статье.
                    А именно: заходим в Active Directory, бороздим просторы подразделений и видим группы, совершенно с безликими названиями (например Ugin, Vassa, Opel, www etc) и без описания. Внимание вопрос: определите для чего нужны эти группы.
                    Читать дальше →
                    • +12
                    • 9.4k
                    • 5
                  • Проверка соблюдения стандартов кодирования РHP через git

                    В разработке проекта зачастую принимают участие разработчики разного уровня. Это приводит к тому, что нет строгого формата написания кода. За качеством кода на проекте приходится постоянно следить старшим разработчикам и это отнимает у них кучу времени.

                    Для того чтобы наказать говнокодеров облегчить страдания тех, кто делает ревью кода, можно использовать автоматические средства проверки кода, которые всем давно известны. Это PEAR и PHP Code Sniffer.
                    Читать дальше →
                  • За гранью Хабра (список изданий)

                      Этот пост воодушевлен и является логическим продолжением недавно размещенного здесь материала «Хабр vs TechCrunch». Сам я с его авторами никак не связан, но выражаю им большую благодарность за то, что поделились своим опытом.

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

                      После рассылки у меня на руках остался небольшой список изданий, которым я не могу не поделиться с Хабросообществом. Добро пожаловать под кат!



                      Читать дальше →
                    • FreeBSD 8.2, Samba 3.4, Active Directory и кириллические логины

                      В нашей компании давно и успешно работает такая связка: Samba 3.x, установленная на FreeBSD (6.x или 7.x), для доступа к шарам использует аутентификацию пользователей в домене Active Directory. Все клиенты – Windows XP и выше. Домен AD – Windows 2003.
                      Все было хорошо, пока один из серверов FreeBSD не был обновлен до версии 8.2. После обновления пользователи с кириллическими логинами не смогли получить доступ к расшаренным ресурсам этого сервера. В то же время пользователи с логинами в латинице нормально аутентифицировались. Команды wbinfo -u и wbinfo -g как и положено показывали всех пользователей и группы AD, включая кириллические. Другой сервер FreeBSD 7.3 с такой же версией Samba – 3.4.9 и с таким же конфигом работал нормально с любыми логинами.
                      Читать дальше →
                    • Обзор платформ для построения облаков


                      Наверное всем уже надоели эти самые облака, но вкратце остановимся на том какие они бывают если кто-то не знает. В зависимости от модели развертывания они бывают:
                      • private cloud
                      • public cloud
                      • hybrid cloud

                      Более подробно можно прочитать тут.
                      В зависимости от модели обслуживания:

                      Так вот мы с вами сегодня будем говорить о платформах для построения именно IaaS облаков. Поехали!
                      Читать дальше →
                    • Help, my database is corrupt. Now what?

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

                      Как обнаружить, что база данных повреждена


                      Обычно повреждения превосходно обнаруживаются при попытке доступа к поврежденной странице. Запросы, бэкапы или процедуры реиндексации завершаются ошибками с высокими уровнями серьезности.
                      Вот пара примеров системных сообщений при обнаружении повреждения БД:
                      SQL Server detected a logical consistency-based I/O error: incorrect checksum (expected: 0xfdff74c9; actual: 0xfdff74cb). It occurred during a read of page (1:69965) in database ID 13 at offset 0x0000002229a000 in file 'D:\Develop\Databases\Broken1.mdf'.
                      Attempt to fetch logical page 1:69965 in database 13 failed. It belongs to allocation unit 72057594049069056 not to 281474980642816.
                      Основная проблема заключается в том, что если проверки целостности базы данных не производятся на постоянной основе, то повреждение может быть обнаружено спустя часы, дни и даже месяцы, после того, как оно образовалось, в тот момент, когда уже сложно будет что-то исправить.
                      Читать дальше →
                    • Float'омагия: пробуем не «плавать» в спецификации, чтобы не утонуть в потоке

                        Пример действия float IRLНедавняя статья про float-ы и реакция хабрасообщества на нее показали, что «сладкая парочка» CSS-свойств float и clear, несмотря на свою давнюю и колоссальную популярность в верстке, для многих остается чем-то загадочным и таинственным. Однако затронута в ней оказалась лишь верхушка айсберга, теряющегося в пучине мутных вод загадочной спецификации CSS 2.1. А есть и «подводные рифы», в спецификации не описанные. Не желаете ли продолжить увлекательное погружение в этот мир удивительных открытий и добраться до самого дна, полного сокровищ? Если да, то…
                        добро пожаловать на борт!
                      • Чёртова дюжина советов начинающим верстальщикам. Часть первая

                          Доброго времени суток!

                          Введение


                          Я являюсь фрилансером. Раньше я не особо задумывался над тем, как и что делают верстальщики. Я делал серверную часть, а мой друг верстал и набивал контент. Совсем недавно мне захотелось попробовать «что и как». Пару дней назад мне на глаза попался материал, который мне очень понравился. Он наглядно обЪяснял, что и как нужно писать. К сожалению, сылку дать не могу, так как я не запаомнил, где располагался сей мануал, но… Казалось бы, можно это и запомнить, но я пошёл ещё одним путём — законспектировал это дело. Собственно, добро пожаловать в мою записку.
                          Читать дальше →