Search
Write a publication
Pull to refresh
11
0
Ролич Сергей @RAMAZAN

Go developer

Send message

Почему JBoss AS 7 такой быстрый?

Reading time3 min
Views12K
Перевод. Оригинал статьи http://in.relation.to/Bloggers/WhyIsJBossAS7SoFast. Статье скоро год, но вопрос все еще актуален.

Если кратко, то ответ следующий: потому что вся проектировка JBoss AS 7 строится на основе закона Эмдейла (эффективная параллелизация задач) в противоположность закону Мура (ждать железа с большей частотой процессора). Почти каждый процессор на вооружении настольных компьютеров, ноутбуков и серверов сегодня имеет не менее двух ядер, при чем тенденция быстро растет. Дни гонок за частотой процессора уже в прошлом. Так что, программам приходится адаптироваться, чтобы выжать все из того железа, что есть сейчас и будет завтра.
Читать дальше →

«Хакера» поймали за сиськи

Reading time1 min
Views17K
image

На прошлой неделе ФБР обвинило Higinio O. Ochoa III во взломе государственных сайтов и выкладывании в сеть телефонов и домашних адресов сотрудников полиции.
Ochoa также известный как w0rmer, член хакерской группы CabinCr3w ответственный за эти взломы, в феврале добавил твит в @Anonw0rmer с ссылкой на сайт где он выложил эти и другие хакнутые данные. Внизу страницы красовалась грудастая девушка с надписью "PwNd by w0rmer & CabinCr3w <3 u BiTch's !".
Читать дальше →

Неограниченый объём облачного хранилища

Reading time2 min
Views9.5K
На сегоднящний день известно множество сервисов, предоставляяющих доступ облачного хранения данных (наиболее популярный из них — dropbox). Почти во всех есть бесплатный аккаунт с ограниченным объёмом данных. В статье Прокачиваем DropBox в режиме «Full auto» рассказывалось как можно увеличить объём вашего dropbox аккаунт а на 8 Гб не тратя при этом никаких усилий.
Однако в данной статье пойдёт речь о получении «неограничнного» объёма в облаке, используя сервисы на основе WebDAV.
Кому интересно – добро пожаловать!
Читать дальше →

OTIXO — Получаем WebDAV доступ ко всем своим хранилищам

Reading time1 min
Views6.1K



Все мы, теми или иными способами уходим в облака ) На просторах интернета набрел на очень интересный и полезный сервис. Идея гениально проста. Регистрируемся, добавляем свои аккаунты (из внушительного списка облачных сервисов) и получаем к ним доступ с одного логина. “Ну и что” скажете Вы. Не торопитесь, теперь самое интересное. Этот сервис позволяет натурально настроить WebDAV доступ ко всему Вашему богатству! Интересно? Прошу под кат…

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

Яндекс.Диск как файловая система

Reading time1 min
Views145K

Недавно Яндекс анонсировал свой новый сервис, подобный DropBox'у. Многие его сразу же начали поливать из ведра, хотя, я думаю, зря.

Один из плюсов лично для меня, линуксоида — не нужно устанавливать дополнительные приложения, как в случае с DropBox'ом. Сервис можно подключить через файловый менеджер Nautilus, используя WebDAV. Что я, собственно, сразу же и сделал.

Однако, я не стал на этом ограничиваться, ведь гуёвый доступ — не совсем хорошо, консольки никто не отменял.

Подключим Яндекс.Диск как файловую систему

Что значат для вас юнит-тесты?

Reading time5 min
Views8K
С технической точки зрения юнит-тесты – это очень простой инструмент, основанный на паре несложных концепций: (1) тестируемый класс, (2) набор тестовых методов, завернутых в некоторый класс и (3) набор методов, с помощью которых можно удостовериться в том, что состояние тестового класса соответствует (или не соответствует) некоторому значению.

Это очень простая штуковина, которая может кардинальным образом повлиять на процесс разработки в целом. С одной стороны существует TDD (“test-first approach"), при котором тесты «драйвят» не только процессом кодирования, но и процессом проектирования (т.е. дизайном системы). С другой стороны существуют разработчики с противоположной точкой зрения, которые считают юнит-тесты пустой тратой времени, потому что они не приносят никакой ценности пользователю.

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

Взлом одного Android приложения

Reading time4 min
Views144K
Недавно я усиленно разрабатывал свое приложение под Android, и в процессе защиты платной версии понял, что довольно сложно обезопасить приложение от взлома. Ради спортивного интереса решил попробовать убрать рекламу из одного бесплатного приложения, в котором баннер предлагается скрыть, если заплатить денежку через In-App Purchase.


В этой статье я опишу, как мне удалось убрать рекламу бесплатно и в конце — несколько слов о том, как усложнить задачу взломщикам.

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

Бесплатный VPN от Comodo

Reading time2 min
Views207K
В свете ожидающегося послевыборного закручивания интернет-гаек в наше стране, хотелось бы рассказать о бесплатном VPN от Comodo Group.
Comodo TrustConnect — простой в регистрации, установке и использовании сервис VPN со 128-битным шифрованием, от солидной компании, которой, в отличие от других бесплатных VPN-провайдеров, вполне можно довериться. Для тех кто не в курсе, такой VPN очень полезен при использовании открытого WiFi в публичных местах (например, при посещении сайтов, у которых до сих пор нет https). Также с помощью VPN предотвращается прослушка и фильтрация трафика провайдером, кровавой гэбнёй или админом на работе.
Читать дальше →

GWT.Начинающим на заметку

Reading time3 min
Views68K
Добрый день дамы и господа,

Эта статья предназначена в первую очередь начинающим и навряд ли принесет какую либо пользу людям бывалым. Но было бы неплохо, если бы люди с опытом привели бы парочку полезных ссылок в комментариях.
Итак, знакомство я советую начать с демо. Тогда вы сможете себе представить, а что GWT вообще может и какие виджеты доступны прямо из коробки. GWT безусловно весьма сильный Фреймворк, но его чуть ли не самая главная беда заключается как раз в том, что этих самых виджетов не так уж и много. Но эта не беда, т.к. есть много различных библиотек, которые эту проблему решают. Особый расцвет пришелся на время 2-3 года назад, когда много чего в GWT просто не было и явных фаворитов среди сторонних библиотек тоже не было заметно. Сейчас ситуация довольно сильно изменилась. Поэтому если вам нужен какой нибудь продвинутый виджет, то советую обратить внимание на SmartGWT и Ext-GWT.
Читать дальше →

Ускоряем процесс сборки с maven

Reading time3 min
Views9.6K
Наверное многие из Вас работают с Maven. Если так, то полагаю каждый из Вас ежедневно собирает свой проект по несколько раз, особенно если Вы сейчас в активной фазе разработки и изменения затрагивают много модулей. В определенный момент времени проект становится довольно большим и билд с каждым днем начинает выполнятся все дольше и дольше… И вот приходит время, когда пора что-то с этим делать.

Мигрируйте с Maven 2 на Maven 3

Вы еще используете maven2? Странно. Одна только миграция на 3-ю версию может значительно ускорить процесс сборки. В моем проекте переход на Maven 3 дал прирост в скорости сборки на 10%. Вероятней всего за счет каких-то фиксов и оптимизаций, что были сделаны в новой версии (так как заявляют разработчики количество кода было существенно уменьшено и сильно отрефакторено). Миграция займет у Вас несколько минут и в большинстве случаев будет безболезненной. Хотя есть шанс, что некоторые конфигурационные файлы все же придется подправить.

Используем ядра и дополнительные потоки

В Maven 3 есть замечательная опция:
mvn -T 4 clean intall
mvn -T 2C clean install

В первом случае мы явно указываем, что хотим запустить процесс сборки на 4 потока. Во втором случае мы указываем, что на каждое ядро должно быть выделено по 2 потока для процесса сборки. Это одна из новых фич нового мавена — Parallel Builds. Эта фича анализирует граф зависимостей Вашего проекта
и распихивает модули по разным потокам, сборка которых может быть выполнена параллельно.
Для моего текущего проекта скорость сборки со вторым параметром (-T 2C) ускорилась на 20%. Правда тут есть один минус. Количество ресурсов, что будет потребляться для билда может значительно вырасти. В моем случае это +30% к потребляемой памяти.
Хочу сразу обратить внимание — если связанность модулей в Вашем проекте очень низкая — то
скорость сборки этой опцией можно увеличить на порядок.
Это, кстати, повод задуматься об Вашей архитектуре проекта. Ведь если билд занимает довольно много времени, то небольшой рефакторинг поможет уменьшить эту цифру. Хотя, конечно, это все очень индивидуально.
Вообще разработчики заявляют, что прирост в скорости сборки может быть 20-50%.
Читать дальше →

Пусть утро станет добрым или Sleep as Android

Reading time4 min
Views158K
Доброго времени суток!
Как известно, утро добрым не бывает, но аудитория хабрахабра знает, что сон можно обхитрить, и проснуться полным сил для нового дня. Выделю три группы высыпающихся людей, кто-то просто много спит, другие правильно готовятся ко сну, третьи пользуются хитрыми будильниками. С недавних пор, я переехал из разряда не высыпающихся в группы пользователей будильников с фазами сна. На переезд было затрачено минимум усилий, потребовалась лишь бесплатная программа для моего android смартфона.

Upd. Владельцы iOS и Windows Phone 7.5 не остались забытыми.
Читать дальше →

Постигаем Git

Reading time6 min
Views56K
От переводчика: в этой статье нет описания команд git, она подразумевает, что вы уже знакомы с ним. Здесь описывается вполне здравый, на мой взгляд, подход к содержанию публичной истории в чистоте и порядке.

Если вы не понимаете, что побудило сделать git именно таким, то вас ждут страдания. Используя множество флагов (--flag), вы сможете заставить git работать так, как по вашему мнению он должен работать, вместо того, чтобы работать так, как git того хочет. Это как забивать гвозди отверткой. Работа делается, но хуже, медленнее, да и отвертка портится.
Читать дальше →

Какие бывают типы OutOfMemoryError или из каких частей состоит память java процесса

Reading time3 min
Views209K
Если вы словили OutOfMemoryError, то это вовсе не значит, что ваше приложение создает много объектов, которые не могут почиститься сборщиком мусора и заполняют всю память, выделенную вами с помощью параметра -Xmx. Я, как минимум, могу придумать два других случая, когда вы можете увидеть эту ошибку. Дело в том, что память java процесса не ограничивается областью -Xmx, где ваше приложение программно создает объекты.

image

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

Android. Обзор боевых приложений

Reading time2 min
Views322K
Доброго времени суток!

Наряду со статьей "iPhone: MiTM атака из кармана", родилась почти аналогичная статья про Android.

Мы уже знаем, на что способен iPhone. Уступает ли ему Android?

Было рассмотрено около 25 боевых приложений. Хочу предоставить вам результат маленького исследования. Многие приложения даже не запустились, некоторые подвесили телефон намертво, но некоторые даже работали!

Весь софт тестировался на телефоне LG Optimus, с версией Android 2.3.

Итак, краткий обзор боевого софта на Android:

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

Онлайн-курсы Stanford University, Berkley и MIT в доступном виде

Reading time2 min
Views54K


На хабре в последнее время неоднократно анонсировались выложенные в онлайн курсы знатных мировых университетов, в том числе и тех, которые перечислены в заголовке.

Пример такого поста: habrahabr.ru/post/139542

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

Уверен, что курсов по данным дисциплинам, информативнее и понятнее выложенных, в природе не существует.

Под катом ссылки и список того, что было выложено, что ещё предстоит выложить…
Читать дальше →

qutIM 0.3: Через тернии к звёздам!

Reading time4 min
Views21K
Забавный день, Хабрачеловек!

Спустя ровно год активной разработки мы — все те, кто участвовал в разработке qutIM, рады вам представить релизную версию 0.3 под кодовым именем Nolwe.
За прошедший год было исправлено огромнейшее количество ошибок, добавлены недостающие фичи и переработаны некоторые плагины.



Осторожно! Под катом много скриншотов и картинок

Настраиваем аудит Active Directory: Краткое руководство [PDF]

Reading time2 min
Views21K
Всем хабровчанам трям!

Когда нужно включить и настроить аудит Active Directory, незаменимым являются всякого рода quick tips, предпочтительно собранные в одном месте. Такое место сейчас и постараемся здесь создать. Сразу оговорюсь и скажу, что материалы поста (одностраничный pdf документ) можно будет скачать и в дальнешем использовать.

Итак, собственно переходим к сабжу.

Изначально небольшой чеклист, показывающий, все ли мы сделали.


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

Проблемы передачи utf-8 из формы в JAX-RS (REST)

Reading time3 min
Views23K

Введение


Для передачи данных от интерфейса веб-приложения есть несколько методов, но, пожалуй, самый распространенный — отправка формы с MIME-type application/x-www-form-urlencoded. Ещё один вариант — multipart/form-data.

В качестве серверной технологии для приема могут использоваться контроллеры в MVC-фреймворках (из основных Java-технологий следует упомянуть Spring MVC, Java Server Pages, Java Server Faces. Но эти фреймворки довольно сильно осложняют жизнь разработчику интерфейса, если он не знаком с Java или нужен шаг в сторону от того, что позволяет фреймворк. В случае же экспонирования REST-интерфейса бэкендом приложения разработкой фронта упрощается: ей может заниматься человек, знающий базовый javascript и jquery, независимый от разработки бэка. Кроме того, даже при использовании шаблонизатора, выбор сильно расширяется: Apache Velocity, FreeMarker (стоит упомянуть, что Spirng MVC неплохо интегрируется с последними). Тогда данные из формы на стороне сервера записываются в бины, с которыми связан данный view/controller. Правда, у JSF тоже наблюдалась генетическая проблема с кодировками, рассмотрение которой — тема для отдельной статьи.

Краткое введение в JAX-RS было дано в предыдущей статье. И экспонированный через JAX-RS интерфейс может принимать GET и POST запросы с данными форм. О проблемах данного подхода при использовании не-latin-1 и пойдет речь в данной статье.
Читать дальше →

Основы JAX-RS

Reading time4 min
Views141K

Введение


Выросло данное API из JSR 311: JAX-RS: The Java API for RESTful Web Services и вошло в Java EE 6 (планировалось в Java EE 5). Как видно из названия, предназначено оно для разработки RESTful веб-сервисов.

Основная цель данной статьи — познакомить читателя с основами JAX-RS API. Изначально я планировал написать о некоторых проблемах работы форм при использование JAX-RS сервиса. Не обнаружив на Хабре почти ничего, касающегося данной технологии понял, что введением к статье отделаться не удастся.

Будут представлены основы JAX-RS API, реализация от JBoss и дано небольшое введение в клиентскую часть фреймворка Resteasy.
Читать дальше →

Пишем сайт на GWT: Часть 1

Reading time4 min
Views46K
Добрый день дамы и господа,

На хабре есть не так много статей на тему GWT (Google Web Toolkit) и в большинстве своем написаны они в ключе «какая это бяка, ничего не умеет, ничего не понятно». Кроме того, как показывает мой опыт, большинство программистов о GWT вообще ничего не слышали, а те кто слышал, думают, что больше чем на „Hello World“он не способен. Я постараюсь показать вам, что с помощью этого замечательного Фреймворка можно делать такие вещи, которые большинству JavaScript программистам просто не по зубам.

Перед началом небольшое отступление, т.к. вопрос «а зачем?» обязательно прозвучит. Этот сайт я написал на GWT, т.к. у меня и выбора то не было. С HTML,CSS, PHP и JavaScriptом я знаком(был) весьма поверхностно( как собственно и большинство Java-программистов), а вот идея и желание были. А потому использовал я что имел и получилось вроде весьма не плохо.

Посмотрите на этот сайт. Да это не шедевр, но он показывает, что GWT может все, что может JavaScript и даже больше. Почему больше? Ответ на этот вопрос полностью совпадает с ответом на вопрос: «почему С++ может больше чем Assembler?». На эту тему я предлагаю подискутировать в комментариях. А мы возвращаемся к GWT. Нет ничего лучше( мое стойкое убеждение), чем объяснять что либо на примере, а посему я предлагаю вам препарировать этот сайт.


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

Information

Rating
Does not participate
Location
Астана, Акмолинская обл. (Целиноградская обл.), Казахстан
Date of birth
Registered
Activity

Specialization

Backend Developer
Lead
Golang