Как стать автором
Обновить
1
0

Пользователь

Отправить сообщение

Знакомство с отладочной платой Realtek RTL8954C

Время на прочтение6 мин
Количество просмотров27K

Многочисленным пользователям PС тайваньская компания Realtek известна по своим контроллерам сетевых (Ethernet) и беспроводных (WiFi) карт, а также по микросхемам AC97-аудиокодеков. Однако у Realtek есть процессоры не только для применения в PC, но также для сетевого оборудования.

В рамках данной статьи мы познакомимся с отладочной платой и сетевым процессором Realtek RTL8954C, соберём и запустим базовое ядро Linux, а также выполним тест пропускной способности Ethernet-портов.
Читать дальше →
Всего голосов 15: ↑14 и ↓1+13
Комментарии12

Запуск двух и более инстансов MySQL на одном Linux-сервере

Время на прочтение4 мин
Количество просмотров19K
Хочу поделиться еще одним способом решения такой проблемы, как запуск более одного mysql-server на одном linux-сервере. Я думаю, что некоторые из вас уже пробовали это делать, запуская руками, например, вот так:

 mysqld_safe --defaults-file=...my2.cnf... &

Я считаю этот подход не совсем правильным хотя бы потому, что корректно завершить такой запущенный mysql-сервер получится не всегда. Можно ещё, конечно, использовать mysqld_multi, но лично я предпочитаю полностью «изолировать» друг от друга инстансы. Именно поэтому я и предлагаю вам в своей публикации использовать в помощь систему инициализации.
Читать дальше →
Всего голосов 20: ↑14 и ↓6+8
Комментарии16

Нестандартная оптимизация проектов на PHP

Время на прочтение5 мин
Количество просмотров29K
В данной публикации хочу рассказать о том, как нетрадиционными методами мы смогли снизить нагрузку на серверы и ускорить время обработки страницы в несколько раз.

image

Традиционные методы, думаю, всем известны:
  • Оптимизация SQL-запросов;
  • Поиск и исправление узких мест;
  • Переход на Memcache для часто используемых данных;
  • Установка APC, XCache и подобных;
  • Клиентская оптимизация: CSS спрайты и т.п.


В нашем же проекте всё это было сделано, но при этом проблема скорости обработки страниц сохранялась. Средняя скорость обработки страницы была в районе 500мс. В один прекрасный момент пришла идея проанализировать, какие ресурсы есть, и на что они могут тратиться.
Читать дальше →
Всего голосов 53: ↑40 и ↓13+27
Комментарии103

Некоторые замечания на тему VMware vSphere Security Permissions

Время на прочтение4 мин
Количество просмотров13K
Для предоставления доступа различным категориям пользователей к их виртуальным машинам, как правило, используется представление VM and Templates и система папок, на которые, собственно, и назначаются права. Однако, в некоторых случаях этого бывает недостаточно, поскольку для некоторых действий пользователь должен иметь права и на объекты среды, отсутствующие в отображении VM and Templates. Например, для добавления виртуального жёсткого диска или клонирования ВМ нужны права Datastore.Allocate Space или роль Datastore Consumer на объект Datastore или Datastore Cluster. А для возможности изменения сетевого интерфейса — права Network.Assign Network или роль Network Administrator на соответствующие портгруппы. Далее детальнее об этом и других нюансах назначения прав доступа в vSphere. Информация актуальна для версий vSphere 5.1 и 5.5.
Читать дальше →
Всего голосов 6: ↑6 и ↓0+6
Комментарии0

Почему компании не умеют обращаться с деньгами

Время на прочтение7 мин
Количество просмотров21K
Так сложилось, что моя карьера — сначала разработчика, затем архитектора, технического директора и наконец предпринимателя, развивалась преимущественно в околофинансовом секторе. Большая часть моей профессиональной деятельности прошла в проектировании и написании софта для банков, компаний-брокеров и схожих с ними компаниях. Об одной из наиболее типичных технических проблем финансового сектора я и хотел бы рассказать уважаемым хабравчанам.



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

Читать дальше →
Всего голосов 65: ↑43 и ↓22+21
Комментарии101

Эмуляция банковской карты на телефоне

Время на прочтение10 мин
Количество просмотров98K


HCE (Host-based Card Emulation) – это технология, которая дает возможность писать софт, не требующий для исполнения выделенного криптопроцессора, чтобы обеспечить сеанс связи с платежным терминалом. Приложение исполняется на основном процессоре мобильного устройства, в окружении операционной системы телефона.

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

Мы сделали такой HC-эмулятор в своём приложении. До появления технологии HCE информацию для осуществления NFC-транзакций в мобильных устройствах можно было хранить тремя способами: либо на SIM-карте (принцип SIM centric NFC), либо в специальном элементе на телефоне (Embeded Secure Elements, eSE), либо на специальной MicroSD.
Читать дальше →
Всего голосов 42: ↑39 и ↓3+36
Комментарии72

Сертификация Microsoft

Время на прочтение16 мин
Количество просмотров167K

Сертификация Microsoft предназначена для специалистов в различных областях, связанных с информационными технологиями, а также c сертификациями аппаратного и программного обеспечения на предмет совместимости с продуктами Microsoft.

Экзамены сдаются в центрах VUE. Экзамены по направлению Office сдаются в Certiport центрах тестирования.

Стоимость экзаменов обычно равна 80$ (60 EU), но некоторые экзамены могут стоить дешевле (60$).
Общую картинку можно увидеть на следующем плакате:
Читать дальше →
Всего голосов 30: ↑21 и ↓9+12
Комментарии14

Архитектура резервного копирования на системах NetApp FAS

Время на прочтение4 мин
Количество просмотров5.9K
В этой статье я рассмотрю как архитектура SnapProtect притворяет в жизнь «парадигму резервного копирования NetApp», используя передовые технологии и преимущества систем хранения, серии FAS. ПО SnapProtect (SP) предназначенно для управления жизненным циклом резервных копий, архивацией и восстановлением данных для всей инфраструктуры, расположенной на СХД NetApp FAS. SP обеспечивает связность с приложениями, консистентность при снятии резервной копии, управление репликацией/архивацией между хранилищами, каталогизацию, восстановление данных в случае необходимости, проверку резервных копий, а также другие функции. FAS очень универсальные системы, которые могут использоваться для задач как «основной» СХД, «запасной» (DR) так и для архивации данных.

Комплекс SnapProtect состоит из следующих основных компонент:

  • Сервер с SnapProtect Management Server (CommServe license), для отказоустойчивости применяется кластеризация (на уровне приложения + кластеризация БД)
  • Серверы с инсталлированным MediaAgent'ами.
  • Агенты iDataAgent (iDA). Устанавливаются на хосты для интеграции с ОС, файловыми системами, приложениями и другими компонентами хостовой ОС.
  • SP взаимодействует с хранилищем NetApp через Oncommand Unified Manager.



Читать дальше →
Всего голосов 13: ↑12 и ↓1+11
Комментарии8

Управление списками баз 1С 8.2

Время на прочтение9 мин
Количество просмотров379K
Одно из правил управления временем — Если есть человек, которому можно делегировать выполнение задачи — делегируй.

Предыстория


Как я докатился до того, что — Я, системный администратор! — стал задаваться вопросами работы 1С?
Тирада в моей оригинальной статье, которую вряд ли кто читал, касалась того, какие лентяи 1С разработчики, и сами производители 1С, что одни понаделали много функций, но другие недостаточно хорошо описали, третьи поленились разобраться, а свалили всю рутину на системных администраторов, которым делать-то нечего, кроме как за элитой IT подметать. Думаю, здесь никто меня не похвалит за такие рассуждения. Хотя и похвалы особо не ищу. Единственная цель — чтобы это пригодилось кому-то, кто правильный лентяй-админ, и не любит заниматься одним и тем же помногу раз. А теперь о том, как это было.
Я столкнулся с таким положением дел, что всем сотрудникам наши 1С разработчики добавляют базы ручками, присутствуя на рабочем месте сотрудника, либо просят это сделать нас удалённо, подключившись к рабочему столу пользователя и мышкакликанием все повторить.
Выглядит это так:
— Миша, добавь Васи Пупкину базу: 1C-server:1551 «buh_prod»
— А как её назвать?
— Бухгалтерия

И не думайте, что в следующий раз, этот 1С разработчик скажет мне, что эту базу можно назвать именно также. Как следствие, у нас одна и та же база у разных сотрудников называлась по разному. Красота, не так ли?!
Ещё одна сторона этой проблемы в том, что Сотрудник должен быть на месте, компьютер включен, и у него должно быть время (5 мин), чтобы я мог всё это сделать. Если сотрудника нет на месте, то вы можете себе предположить, сколько от меня требуется трудозатрат, чтобы выловить этого сотрудника, согласовать с ним время и сделать это. А если этот сотрудник в удалённом офисе, на ноутбуке, и бывает в сети крайне редко, плюс разница поясов Владивосток — Москва, то это ещё добавляет остроты ощущений. Конечно, можно ещё ярлыком в почту бросить, но этим у нас 1С разработчики очень крайне редко пользуются — или не умеют, или не хотят, или за нас переживают, что без работы останемся, за что им отдельная благодарность и лучи поноса.
Баз у нас порядка пятнадцати. У каждой группы отдельный набор баз. А есть и такие, у кого строго индивидуальный список.
Следующая картина вам ещё больше понравится.
Поступает распоряжение от главы 1С'ников, что нужно трём отделам изменить базу, т.к. она переехала на другой сервер. Дальше не буду тратить буквы, т.к. всё что я описал выше множите на тридцать человек, двадцать из которых в другом офисе или даже другом городе. Классная задачка.
Не помню, сколько раз, я, таких суматох вынес, но было их больше десяти. После чего мне стало интересно, какие способы оптимизации этого процесса есть по unix-way'ю.
И стал я читать… Читал долго… Читал упорно… Документация 1С в справке мне совершенно не понравилась — написано так, как будто бы я уже это делал, поэтому большую часть идеи они оставляют между строк. Лучи поноса в написателей встроенной справки 1С. Как обычно это бывает, более-менее понятную инструкцию нашел на личном блоге, не помню уже кого.
Читать дальше →
Всего голосов 27: ↑23 и ↓4+19
Комментарии33

Балансировка нагрузки: основные алгоритмы и методы

Время на прочтение11 мин
Количество просмотров191K
балансировка нагрузки

Вопрос о планировании нагрузки следует решать ещё на ранней стадии развития любого веб-проекта. «Падение» сервера (а оно всегда происходит неожиданно, в самый неподходящий момент) чревато весьма серьёзными последствиями — как моральными, так и материальными. Первоначально проблемы недостаточной производительности сервера в связи ростом нагрузок можно решать путем наращивания мощности сервера, или же оптимизацией используемых алгоритмов, программных кодов и так далее. Но рано или поздно наступает момент, когда и эти меры оказываются недостаточными.

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

Балансировка нагрузки может осуществляться при помощи как аппаратных, так и программных инструментов. Об основных методах и алгоритмах и балансировки мы бы хотели рассказать в этой статье.
Читать дальше →
Всего голосов 36: ↑31 и ↓5+26
Комментарии15

Как и зачем мы делаем TLS в Яндексе

Время на прочтение16 мин
Количество просмотров89K
Я занимаюсь в Яндексе продуктовой безопасностью и, кажется, сейчас самое время подробнее, чем уже было на YaC, рассказать на Хабре о том, как мы внедряем TLS.

Использование HTTPS-соединений является важной частью безопасного веб-сервиса, так как именно HTTPS обеспечивает конфиденциальность и целостность данных на этапе передачи их между клиентом и сервисом. Мы постепенно переводим все наши сервисы только на HTTPS-соединение. Многие из них уже работают исключительно по нему: Паспорт, Почта, Директ, Метрика, Такси, Яндекс.Деньги, а также все формы обратной связи, имеющие дело с персональными данными пользователей. Яндекс.Почта уже больше года даже обменивается данными с другими почтовыми сервисами по SSL/TLS, поддерживающими это.



Все мы знаем, что HTTPS — это HTTP, завернутый в TLS. Почему TLS, а не SSL? Потому что принципиально TLS — это более новый SSL, при этом название нового протокола наиболее точно характеризует его назначение. А в свете уязвимости POODLE можно официально считать, что SSL больше использовать нельзя.
Читать дальше →
Всего голосов 164: ↑156 и ↓8+148
Комментарии97

Как «согнуть» свет? Или краткий экскурс в мир волоконной оптики

Время на прочтение19 мин
Количество просмотров67K
Доброго дня, читатель! Наверняка каждый слышал о волоконной оптике, многие имели с ней дело в телекоммуникациях, у кого-то даже проведен оптоволоконный кабель в дом. В общем, этот термин на слуху; да и суть вопроса – передача света на расстояние по тонкому волокну – в общем виде понятна. Но я предлагаю немного углубиться в эту технологию, во многом изменившую мир. В этом посте я постараюсь простым и понятным языком объяснить суть волоконной оптики, как это работает – на уровне простого физического понимания, с упрощениями и примерами, без страшных формул. Иными словами, «на пальцах». Если интересно, то добро пожаловать под кат. Осторожно: много текста, наличествуют картинки.

image
Читать дальше →
Всего голосов 78: ↑78 и ↓0+78
Комментарии51

Time Series, метрики и статистика: знакомство с InfluxDB

Время на прочтение10 мин
Количество просмотров89K
InfluxDB

Введение


Любому системному администратору постоянно приходится иметь дело с данными, представленными в форме временных рядов (time series): статистика скачивания файлов, статистика запросов к серверам, данные об использовании системных и аппаратных ресурсов виртуальными машинами…

Чтобы все это хранить и обрабатывать, нужен адекватный и производительный инструмент.
Читать дальше →
Всего голосов 31: ↑28 и ↓3+25
Комментарии26

YAWNDB — time series база данных

Время на прочтение7 мин
Количество просмотров12K


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

Наиболее простым и наглядным способом представления статистических данных является построение графиков. Существует много специализированных программных решений, предназначенных для анализа статистических данных с последующей визуализацией.Мы стали искать подходящий инструмент; основным требованием при этом была высокая производительность. В результате этих поисков… Впрочем, обо всем по порядку. Начнем с небольшого теоретического вступления.
Читать дальше →
Всего голосов 40: ↑38 и ↓2+36
Комментарии8

Несколько интересных особенностей MySQL

Время на прочтение8 мин
Количество просмотров63K
В не очень далеком прошлом мне пришлось покопаться немного в исходном коде MySQL, и разобраться в некоторых аспектах его работы. В ходе работы лопаткой, и эксперимeнтов, я наткнулся на несколько очень интересных особенностей, часть из которых просто забавна, а в случае некоторых бывает очень интересно понять, чем руководствовался программист, который принимал решение сделать именно так.

Начнем с такого интересного типа, как ENUM.

mysql> CREATE TABLE enums(a ENUM('c', 'a', 'b'), b INT, KEY(a));
Query OK, 0 rows affected (0.36 sec)

mysql> INSERT INTO enums VALUES('a', 1), ('b', 1), ('c', 1);
Query OK, 3 rows affected (0.05 sec)
Records: 3  Duplicates: 0  Warnings: 0


Итак, у нас есть таблица, в ней есть два столбца. У первого, a, тип ENUM, у второго, b, INT. В таблице три строки, у всех трех значение b равно 1. Интересно, чему равны минимальный и максимальный элементы в столбце a?

mysql> SELECT MIN(a), MAX(a) FROM enums;
+--------+--------+
| MIN(a) | MAX(a) |
+--------+--------+
| c      | b      |
+--------+--------+
1 row in set (0.00 sec)


Кажется странным, было бы разумно, если бы самым маленьким был 'a', а самым большим — 'c'.
А что если выбрать минимум и максимум только среди тех строк, где b = 1? То есть, среди всех строк?

mysql> SELECT MIN(a), MAX(a) FROM enums WHERE b = 1;
+--------+--------+
| MIN(a) | MAX(a) |
+--------+--------+
| a      | c      |
+--------+--------+
1 row in set (0.00 sec)


Вот так мы заставили MySQL поменять свое мнение о том, как сравнивать поля в ENUM, просто добавив предикат.
Разгадка такого поведения заключается в том, что в первом случае MySQL использует индекс, а во втором нет. Это, конечно, не объясняет, почему MySQL сравнивает ENUMы по разному для сортировки в индексе, и при обычном сравнении.

Второй пример проще и лаконичнее:

mysql> (SELECT * FROM moo LIMIT 1) LIMIT 2;
+------+
| a    |
+------+
|    1 |
|    2 |
+------+
2 rows in set (0.00 sec)


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

Интересно, что далеко не любой SELECT в скобках сработает, в частности, UNION в скобках — это синтаксическая ошибка:

mysql> (SELECT * FROM moo UNION ALL SELECT * FROM hru) LIMIT 2;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'UNION ALL SELECT * FROM hru) LIMIT 2' at line 1


Еще несколько интересных примеров под катом
Читать дальше →
Всего голосов 113: ↑110 и ↓3+107
Комментарии95

Снимаем образы с картриджей для Dendy/Famicom/NES

Время на прочтение7 мин
Количество просмотров132K
Ни для кого не секрет, что сейчас можно легко скачать эмулятор почти любой игровой консоли 80х-90х и поиграть в классические игры на компьютере, телефоне и многих других платформах. В сети легко можно найти и ROM'ы этих самых игр. Зачастую люди качают их и даже не задумываются, каким же образом кто-то однажды прочитал их из картриджа. В этой статье я и постараюсь рассказать, как же это делалось в случае с NES/Famicom, которая у нас была больше известна как «Денди», и покажу, как можно сделать это самостоятельно.

image

Читать дальше →
Всего голосов 185: ↑185 и ↓0+185
Комментарии77

Разворачиваем CUCM при помощи VMware Workstation 10.0.3 и GNS3

Время на прочтение4 мин
Количество просмотров29K
Всем привет!

Небольшое отступление для тех, кто не в курсе. Данная статья написана исключительна для «домашней» лабы, но никак не под энтерпрайз.

Начну с того, что этот топик поможет обойти мимо порой мучительную, хоть и тривиальную, установку образа CUCM на VMware Workstation, так как я кину ссылку на архив, откуда можно будет скачать уже готовый шаблон CUCM для Workstation. Как именно устанавливать CUCM под гипервизором для серверных платформ VMware ESXi 5.1 можно узнать из статьи здесь. На Workstation установка аналогичная, кроме того, что нет необходимости устанавливать сначала сам гипервизор. Поэтому мы пропустим установку и перейдём к запуску нашей виртуальной сети под CUCM и запуск уже готового шаблона CUCM. Так же я рассчитываю на то, что данной статьёй будут пользоваться люди, которые уже в курсе, как работать с GNS3 и VMware, чтобы не особо повторять другие статьи (хотя местами я сделаю некоторые отступления от данного правила).

Для всего прочего нам понадобятся:
  1. Windows 7, 8, 8.1 (устанавливал под 8 и 8.1);
  2. VMware Workstation не менее 10 й версии;
  3. GNS3 — желательно 0.8.5 (более стабильна);
  4. IOS для Cisco 2691 —
    c2691-advipservicesk9-mz.124-17
    IOS на данной платформе оказался более стабильным без каких-либо глюков. По-началу попробовал развернуть всё это на платформе серии 3600, роутер периодически начинал глючить из-за возложенных на него задач, приходилось перезагружать его. Не захотелось разбираться, хотя догадки есть, просто нашёл решение проще для данного случая.
  5. Шаблон с установленной CUCM на Workstation;
  6. Установленный MSloopback интерфейс на Windows машине.

Читать дальше →
Всего голосов 8: ↑7 и ↓1+6
Комментарии9

NetApp FAS и VMware ESXi: Swap

Время на прочтение6 мин
Количество просмотров18K
В продолжение темы об оптимизации хоста с VMware ESXi, рассмотрим как поступать со Swap'ом в инфраструктуре живущей на СХД NetApp FAS. Хотя эта статья должна быть полезна и не только владельцам систем NetApp FAS.

Одна из важнейших возможностей виртуализации заключается в возможности более эффективно утилизировать серверное оборудование, что подразумевает Overcommit ресурсов. Если мы говорим об ОЗУ, это означает, что мы можем настроить каждой виртуальной машине больше памяти, чем есть на сервере на самом деле. А дальше мы полагаемся на ESXi, чтобы тот разрулил борьбу за ресурсы — забрал (такой процесс часто называют reclamation) не нужную память одной виртуальной машины и отдал той, которая в ней действительно нуждается. В тот момент когда не хватает памяти, начинается процесс свапинга памяти.

Начнём с того, что есть два типа свапинга, которые могут происходить на ESXi хосте. Их очень часто путают, поэтому давайте условно будем называть их Тип 1 и Тип 2.


Расположение данных VMware ESXi по умолчанию
Читать дальше →
Всего голосов 12: ↑11 и ↓1+10
Комментарии3

VMware ESXi 5.Х и NetApp ONTAP 8: тюнинг

Время на прочтение11 мин
Количество просмотров24K
В продолжение темы об оптимизации хоста для взаимодействия с СХД NetApp FAS, эта статья будет посвещена оптимизации производительности VMWare ESXi, предыдущие статьи были посвящены тюнингу ОС Linux и Windows в среде SAN. Компания NetApp давно тесно сотрудничает с VMware, подтверждением тому может стать тот факт, что нашумевшая технология vVOL была реализована одной из первых ещё в релизе Clustered Data ONTAP 8.2.1 (Август 2014), в то время как vSphere 6.0 ещё даже не выпущен. В связи с чем системы хранения NetApp FAS крайне популярны в этом окружении. Часть про Disk Alignment будет полезна не только владельцам NetApp.

Настройки VMWare ESXi можно разделить на следующие части:

  • Оптимизация гипервизора
  • Оптимизация гостевой ОС (GOS)
  • Оптимальные настройки SAN (FC/FCoE и iSCSI)
  • Настройки NAS (NFS)
  • Проверка совместимости оборудования, прошивок и ПО


Для поиска узкого места обычно выполняют методику последовательного исключения. Предлагаю перво-наперво начать с СХД. А дальше двигаться СХД -> Сеть (Ethernet / FC) -> Хост ( Windows / Linux / VMware ESXi 5.Х и ESXi 6.X ) -> Приложение.
Читать дальше →
Всего голосов 13: ↑9 и ↓4+5
Комментарии7

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность