Pull to refresh
1
0
Николай Вигуро @Neuronix

java разработчик

Send message

Многопоточность в Java: ExecutorService

Reading time2 min
Views248K
В Java 5 было добавлено много вещей для организации многопоточности и особенно касаемо организации параллельного доступа. В этой и последующих статьях мы пройдемся по некоторыми из них.
ExecutorService и ScheduledExecutorService будут рассмотрены в этой статье

Настройка 2 интернет каналов и больше с помощью pf в ОС FreeBSD

Reading time4 min
Views17K
Недавно столкнулся с проблемой, настройка двух каналов в интернет на ОС FreeBSD
Ничего абсолютно сложного не предполагалось, но все же пришлось не много почитать документацию.

Собственно задача:

1. создать шлюз с двумя выходами в интернет, один основной, другой резервный.
2. минимизировать участие человека в смене на бек канал.

Инструменты:

ОС FreeBSD 6.x, PF, perl

Читать дальше →

Частный опыт установки и настройки Asterisk с нуля

Reading time17 min
Views344K
Во-первых, дисклаймер

Настройке Asterisk посвящены сайты, форумы и целые порталы типа voip-info.org. Но всегда есть люди, для которых эта тема – дремучий лес, а запустить продукт надо «вчера». Ещё полтора месяца назад я про Asterisk знал только то что он есть. Данный труд призван лишь несколько облегчить жизнь тем, кто окажется в такой же ситуации после меня. В нём могут быть ошибки любой степени «чайниковости». Если вы гуру настройки Asterisk – укажите на ошибку, я поправлю, потомки будут вам благодарны.
Читать дальше →

Простой торговый бот для The Settlers Online

Reading time6 min
Views4.7K
Давным давно, еще в те времена когда на персональных компьютерах жил MsDOS довелось играть в игру Settlers II. Игра меня тронула, и я с удовольствием провел наедине с ней несколько дней. Много позже прошел ее повторно, а затем и еще раз, и каждый раз несмотря на древность этой игры с удовольствием проводил время играя в нее. Не так давно увидел рекламу онлайн игры The Settlers Online и поддавшись ностальгии зарегистрировался в ней. Первым впечатлением был восторг, настолько все было похоже на полюбившееся мне Settlers II. Но радужная эйфория быстро прошла. Я не буду рассказывать в этой статье о всех плюсах и минусах, расскажу только об одном минусе — торговле. О самой игре более подробно вы можете прочитать в статье The Settlers: теперь Online.
Читать дальше →

Взломать Wi-Fi за 10 часов

Reading time12 min
Views1.5M
Еще не так давно казалось, что беспроводная сеть, защищенная с помощью технологии WPA2, вполне безопасна. Подобрать простой ключ для подключения действительно возможно. Но если установить по-настоящему длинный ключ, то сбрутить его не помогут ни радужные таблицы, ни даже ускорения за счет GPU. Но, как оказалось, подключиться к беспроводной сети можно и без этого — воспользовавшись недавно найденной уязвимостью в протоколе WPS.


Читать дальше →

Нейросети для чайников. Начало

Reading time5 min
Views806K


Так получилось, что в университете тема нейросетей успешно прошла мимо моей специальности, несмотря на огромный интерес с моей стороны. Попытки самообразования несколько раз разбивались невежественным челом о несокрушимые стены цитадели науки в облике непонятных «с наскока» терминов и путанных объяснений сухим языком вузовских учебников.

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

Заинтересовавшихся прошу под кат.
Читать дальше →

Проект Lombok, или Объявляем войну бойлерплейту

Reading time6 min
Views57K
Открою не Америку, но шкатулку Пандоры: в Java-коде много бойлерплейта. Типовые геттеры, сеттеры и конструкторы, методы ленивой инициализации, методы toString, hashCode, equals, обработчики исключений, которые никогда не выбрасываются, закрывалки потоков, блоки синхронизации. Проблема заключается даже не в том, чтобы написать всё это — современные среды разработки справляются с такими задачами нажатием нескольких клавиш. Сложность в поддержании бойлерплейта в актуальном состоянии по мере внесения модификаций в код. А в некоторых случаях (многопоточность, реализация методов hashCode и equals) и сам шаблонный код написать без ошибок — далеко не простая задача. Одним из решений проблемы является генерация кода, и в этой статье я расскажу про проект Lombok — библиотеку, которая не только может избавить вас от бойлерплейта, но и сделать это максимально прозрачно, с минимальной конфигурацией и, что немаловажно, с поддержкой на уровне среды разработки.
Читать дальше →

Mosh — SSH 2012 года

Reading time1 min
Views9.1K
Mosh — замена(или дополнение) SSH. Он быстрее и отзывчивее, особенно на линках с высокой задержкой, например, в мобильных сетях. Набираете символ, и моментально видите его на экране, так же, как и в локальном терминале. Почему? Потому, что в Mosh реализован так называемый local line editing, который не дожидается ответа от сервера, а сразу все отображает на экране. Работает даже в полноэкранных приложениях, вроде vim или emacs. И это далеко не единственный плюс!
Читать дальше →

Freeware много не бывает?

Reading time5 min
Views32K

Мы подумали и ответили для себя на этот вопрос утвердительно, поэтому предлагаем оценить подборку бесплатных программ, которые могут пригодиться администратору в его повседневной работе. Все эти программы и многие другие разработаны в компании NetWrix для целей аудита изменений, управления доступом, мониторинга систем и безопасности.

Итак, далее приведен список из 10 бесплатных программ, которые помогут упростить работу системного администратора. Скачивайте и пользуйтесь!
Читать дальше →

За гранью Хабра (список изданий)

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

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

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



Читать дальше →

MS Windows Server 2003, отказоустойчивый кластер

Reading time7 min
Views20K

Введение


Достался нам настоящий динозавр, — HP ProLiant DL380 G4 Packaged Cluster with MSA500 G2, это готовое решение от Hewlett Packard, два сервера с внешним хранилищем, подразумевающее построение кластера. Ну что ж, кластер так кластер, сказано сделано. Ранее опыта создания подобных систем не было, так что постараюсь описать процесс как можно подробней со всеми допущенными нами ошибками.

Читать дальше →

Архитектура Router-on-a-Stick в сети передачи данных

Reading time4 min
Views64K
Если вы испытываете нехватку физических портов на оборудовании сети передачи данных, в то время как перед вами встала острая необходимость завести второго интернет-провайдера или вывести часть серверов в ДМЗ используя оборудование Cisco Systems, тогда эта статья должна помочь с решением многим начинающим системным администраторам, а также тем, кто недавно приступил к работе с сетями передачи данных и с оборудованием Cisco в частности. Речь пойдет об архитекторе под названием Router-on-a-Stick.

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

Учимся писать модуль ядра (Netfilter) или Прозрачный прокси для HTTPS

Reading time19 min
Views33K
Эта статья нацелена на читателей, которые начинают или только хотят начать заниматься программированием модулей ядра Linux и сетевых приложений. А также может помочь разобраться с прозрачным проксированием HTTPS трафика.

Небольшое оглавление, чтобы Вы могли оценить, стоит ли читать дальше:
  1. Как работает прокси сервер. Постановка задачи.
  2. Клиент – серверное приложение с использованием неблокирующих сокетов.
  3. Написание модуля ядра с использованием библиотеки Netfilter.
  4. Взаимодействие с модулем ядра из пользовательского пространства (Netlink)

P.S. Для тех, кому только хочется посмотреть на прозрачный прокси-сервер для HTTP и HTTPS, достаточно настроить прозрачный прокси-сервер для HTTP, например, Squid с transparent портом 3128, и скачать архив с исходниками Shifter. Скомпилировать (make) и, после удачной компиляции, выполнить ./Start с правами root. При необходимости можно поправить настройки в shifter.h до компиляции.
Читать дальше →

Консолидация CAD-систем. Удаленная работа на профессиональных графических станциях

Reading time3 min
Views9.6K
Теперь графические станции DEPO Race доступны в 1U-исполнении, что позволяет консолидировать рабочие станции дизайнеров, конструкторов или проектировщиков в рамках одного ЦОД. Работа на удаленных графических станциях осуществляется через терминальный клиент по протоколу PCoIP, который обеспечивает передачу изображения высокого разрешения и четкости. Используя это решение, заказчик получает централизацию и снижение стоимости владения и обслуживания ИТ-инфраструктуры.

Применение решения DEPO по консолидации графических аппаратных ресурсов может быть обосновано для организаций:
  • имеющих филиальную сеть без возможности местного системного администрирования и обслуживания большого парка графических станций;
  • желающих обезопасить себя от хищения или порчи интеллектуальной собственности;
  • не имеющих возможность установки громоздких и шумных графических станций непосредственно на рабочем месте;
  • являющихся ISP и предоставляющих сервисы по аренде графических станций для работы в ресурсоемких графических приложениях, основанных на проектировании, моделировании, 3D-анимации и обработке графики.
Читать дальше →

Оптимизация рабочего процесса в CAD-системах

Reading time5 min
Views8.3K
Как известно, рабочие станции для профессионального использования подбираются с учетом максимально возможной нагрузки на аппаратную составляющую. Не смотря на то, что эта пиковая нагрузка в среднем не превышает и 20% рабочего времени. Все остальное время основные ресурсы высокопроизводительной станции простаивают, что делает систему неэффективной. Учитывая, что пользователь CAD-приложения ведет проект «от простого к сложному», на разных этапах разработки и проектирования ему понадобятся совершенно разные по производительности вычислительные мощности.
Как создать индивидуальное рабочее место, позволяющее оперативно подбирать необходимую для работы платформу и, при этом обеспечивать удобный доступ к данным пользователя?

На основе предыдущих разработок по консолидации CAD-систем и виртуализации графических станций, компания DEPO Computers разработала ультра плотное решение для оптимизации рабочего процесса пользователей 3D-приложений. Решение состоит из серверной части и клиентской. Серверная часть включает в себя 1U-графические станции, расположенные в ЦОД предприятия. Клиентская часть – это компактные терминальные клиенты, которые подключаются к локальной сети предприятия непосредственно на рабочем месте пользователя. В общих чертах, решение позволяет проектировщику с любого рабочего места подключиться к оптимальной для работы аппаратной платформе. Войдя в домен под своими учетными данными, пользователь получает доступ к своему рабочему столу и всем файлам, которые хранятся на СХД в его личном выделенном пространстве. Таким образом, отпадает необходимость держать парк «топовых» графических станций только из-за того, что у проектировщиков несколько дней в месяц есть в них потребность.

Как это реализовать?

Ulteo — бесплатное решение для доставки рабочих столов

Reading time5 min
Views51K
Сегодня на рынке информационных технологий имеется большое количество различных решений, позволяющих пользователю работать с удаленным рабочим столом — терминальный доступ от Microsoft, XenApp от Citrix, Leostream, Quest Software и т. п., либо же решения с применением средств виртуализации — VMware View, XenDesktop и другие.

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

Мы разворачиваем множество различных продуктов на тестовой площадке DEPO Computers, и среди них было одно бесплатное решение по доставке рабочих столов, которое нам очень понравилось.

Читать дальше →

Уроки Python от компании Google

Reading time1 min
Views120K
Отличный способ освоить Python — учебный класс Python в Google Code University. Уроки для этого класса написал Ник Парланте из Стэнфорда, и прошедшие курс люди отмечают не просто высокое, а фантастически высокое качество уроков.

Курс включает в себя шесть видеолекций на Youtube, где Ник проводит обучение новичков-гуглеров и подробно рассказывает о разных хитростях и фичах Python. Некоторые видеолекции длиной до 50 минут.

Есть ещё скачиваемые задачки. Они довольно простые и созданы специально для начинающих. Курс идеально подходит для изучения Python программистами, имеющими опыт работы с другими языками программирования.

Связываем Active Directory, Asterisk и OpenFire

Reading time16 min
Views68K

Дружим между собой Active Directory, сервер IP телефонии Asterisk и Jabber-сервер OpenFire.



Не буду касаться установки всего по отдельности – все неплохо описано и работает в индивидуальном порядке весьма замечательно. Напишу, как я объединял все это вместе, на что наткнулся и что у меня получилось.

Читать дальше →

Help, my database is corrupt. Now what?

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

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


Обычно повреждения превосходно обнаруживаются при попытке доступа к поврежденной странице. Запросы, бэкапы или процедуры реиндексации завершаются ошибками с высокими уровнями серьезности.
Вот пара примеров системных сообщений при обнаружении повреждения БД:
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.
Основная проблема заключается в том, что если проверки целостности базы данных не производятся на постоянной основе, то повреждение может быть обнаружено спустя часы, дни и даже месяцы, после того, как оно образовалось, в тот момент, когда уже сложно будет что-то исправить.
Читать дальше →

HTML KickStart — еще один способ быстро создать интерфейс своего веб-приложения

Reading time1 min
Views27K
Не один раз в комментариях замечал что народ негодует по поводу того, что веб-разработчики стали злоупотреблять использованием Bootstrap от Twitter. Признаюсь, я и сам успел закончить несколько небольших веб-приложений с использованием этого набора скриптов и стилей. Я не против использования Bootstrap от Twitter, я против злоупотребления этим когда есть столько хороших альтернатив. Я почти каждый день натыкаюсь на интерфейсы, построенные на Twitter Bootstrap, и это начинает напрягать. Последней каплей для поиска альтернативы стало изменение интерфейса биллинг панели моего хостера на шаблон Bootstrap. В этой записи я хотел бы немного рассказать про одну из альтернатив — HTML KickStart.
Читать дальше →

Information

Rating
Does not participate
Location
Санкт-Петербург, Санкт-Петербург и область, Россия
Date of birth
Registered
Activity

Specialization

Backend Developer, Software Architect
Senior
Git
Linux
Java
SQL
Java Spring Framework
Spring Boot
Apache Kafka
Docker
Redis
High-loaded systems