Ржевский Дмитрий Rzhevskiy Dmitry

воскресенье янв 08, 2012

hadoop livejournal

Недавно я установил дома распределённую и масштабируемую базу даных hadoop и в качестве эксперемента я написал задачу для анализа livejournal.com

Ходя по ссылкам я находил сайты с поддоменами livejournal.com

всего обнаружилось 796 тыс аккаунтов. (вообще их должно быть больше). Также посчитал сколько у кого находится в друзьях(ссылки из профилей).

в скаченном множестве такая статистика:

больше всего ссылок у 

http://cheaptrip.livejournal.com   -  на него 9929 ссылок это сообщество.

среди обычных пользователей лидирует http://drugoi.livejournal.com/ на него 8967 ссылок

 

[Read More]

четверг дек 29, 2011

Облачный сервис jelastic

Вчера нашёл прикольное облако PaaS специально заточенное под Java: jelastic.com.

Очень удобное, мне понравилось. Не знаю какая будет ценовая политика (сейчас бесплатно),  насколько оно масштабируется (не пробовал),  деплоймент довольно удобный, есть как SQL базы данных, так и NoSQL(MongoDB, CouchDB).

В отличии от GAE стандартный Java API.

Одно приложение уже в продакшене.

 

 

 

понедельник окт 24, 2011

lucene

Сегодня изучал lucene - это библиотека на основе которой можно сделать текстовой поиск по множеству файлов.

сначала поисковик индексирует файлы, потом ищет по ним - получается такой мини-гугл.

начальную статью для ознакомления я рекомендую 

http://www.avajava.com/tutorials/lessons/how-do-i-use-lucene-to-index-and-search-text-files.html

на примере с исходным кодом всё хорошо описано.


пятница июл 29, 2011

java 7

Итак прошло "всего"  5 лет и компания Oracle выпустила новую версию  JDK 7.

Всех  java программистов поздравляю c обновлением платформы.

Изменился как сам язык (проект Coin) и jvm,  так и  библиотеки.  см полный список изменений

PS у меня на archlinux уже скачалась новая версия через пакетный менеджер pacman. скорость реагирования мантейнеров впечатляет!


среда дек 08, 2010

scala tutorial

для тех кто интересуется языком Scala представляю перевод статьи A Scala Tutorialfor Java programmers:
Руководство
по Scala для Java программистов http://www.rzhevskiy.info/journal/dima/resource/2010/scala.html

пятница окт 01, 2010

maven: exclusion добавляет dependency

Сегодня на работе мы обнаружили необычную вещь с мавеном:

есть библиотека,  у которой были ненужные зависимости, которые мы изключали эксклюдом:

                <exclusion>
                    <groupId>org.jboss.ejb3</groupId>
                    <artifactId>jboss-ejb3-core</artifactId>
                </exclusion>
              

 После добавления эксклюда, джарников в дистрибутиве оказалось больше. Такое странное поведение нас заинтересовало, в результате мы обнаружили что org.jboss.ejb3:jboss-ejb3-core содержит зависимость с эксклюд jboss-metadata а org.jboss.jpa:jboss-jpa-deployers содержит туже зависимость, но без эксклюда.

Добавив 

                <exclusion>
                    <groupId>org.jboss.jpa</groupId>
                    <artifactId>jboss-jpa-deployers</artifactId>
                </exclusion>

 ненужные зависимости снова исчезли.




среда авг 18, 2010

scala swing

В последнее время изучаю язык программирования Scala. Программа написанная на Scala компилируется в java байт-код, может использовать библиотеки java которых огромное количество.

В языке много классных вещей, и чтобы их использовать для многих API сделаны обёртки. Вчера смотрел обёртку для Swing: Scala Swing. Впечатлило то что вложенность контейнеров swing наглядно видно.


 
import swing._


object HelloWorld extends SimpleSwingApplication {
def top = new MainFrame {
title = "Hello, World!"
contents = new Button {
text = "Click Me!"
}
}
}

Конечно до удобства сравнимого с zk далеко, но учитывая что в scala нативная поддержка xml, то я думаю можно сделать удобную вещь на scala.
Жаль что поддержка сред разработки языка Scala пока не такая мощьная как в java...


 

пятница мар 26, 2010

GWT: компилятор вешает компьюер

У нас на работе для создания приложения используется GWT. Мы установили на сервер для разработчиков subversion, wiki, teamcity+buildagent для автоматической сборки проекта.

К сожалению возникла трудность связанная с компилятором GWT: он не только работает медленно но и вешает всю систему: страницы wiki и  teamcity стали грузиться секунд по 20.

У меня возникло предположение что это из-за того что GWT очень интенсивно использует дисковую подсиситему.

Что было сделано: я создал виртуальный диск (ramdisk), и сборку проекта стал проводить на нём. это не только ускорило сборку приложения но сделало что  wiki и  teamcity сталои грузиться без задержек.


понедельник дек 07, 2009

extGWT vs ZK

На работе с которой я уволился мы писали программу на extGWT -  это GWT компилятор из java  в javascript + библиотека extj.

 

На работе в пронто-москва  я использовал для этих же целей ZK.

В этой таблице я выпишу достоинства и недостатки фреймворков.

[Read More]

среда окт 28, 2009

тестовое задание с собеседования

что выведет на печать программа?


public class Qqq {
public static final Qqq instance=new Qqq();
private static int A=2;
private static final int B=3;
private Integer i;
private Qqq() {
i=A+B;
}
public static void main(String[] args) {
System.out.println(""+instance.i);
}
}



 

вторник сен 22, 2009

Singlton and AspectJ

Раз уж тут речь зашла о синглтонах и AspectJ а статья в интернете http://www.christianschenk.org/blog/singletons-with-aspectj/ (я её приводил в комментах) показалась мне написанной неразборчиво, то я решил сам написать статью:

http://www.aspectj.ru/articles/SingltonPattern.html

среда сен 16, 2009

Singleton и AtomicReference

Сегодня в интернете обнаружил прикольную вещь

классический Singleton 

public final class Singleton {
private static Singleton _instance = null;

private Singleton() {}

public static synchronized Singleton getInstance() {
if (_instance == null)
_instance = new Singleton();
return _instance;
}


}

[Read More]

пятница авг 07, 2009

Jetty DataSource and MSSQL

Сегодня переводили приложение с glassfish на jetty. При этом нужно было определить  Datasource для jetty. Из этого получилась целая история документация с багой :).

В доке описано как подключить datasource.



<New id="DSTest" class="org.mortbay.jetty.plus.naming.Resource">
<Arg></Arg>
<Arg>jdbc/DSTest</Arg>
<Arg>
<New class="net.sourceforge.jtds.jdbcx.JtdsDataSource">
<Set name="User">user</Set>
<Set name="Password">pass</Set>
<Set name="DatabaseName">dbname</Set>
<Set name="ServerName">localhost</Set>
<Set name="PortNumber">1433</Set>

</New>
</Arg>
</New> 


После дебага выяснилось что конструктор класса org.mortbay.jetty.plus.naming.Resource

содержит только дава параметра поэтому строчку <Arg></Arg> нужно выкинуть.

Сижу и пишу багрепорт.

UP: Вот что значит использовать старые версии программ (6.1.10, текущая 6.1.19)


вторник июн 30, 2009

О работе

Про работал на работе уже 3 недели. Проект производит  довольно странное впечатление.

... 

Пока на работе работал с хадупом нашёл первую багу

... 

[Read More]

пятница апр 17, 2009

j2me: MIDlet-Version

Сейчас пишу приложение для мобильного телефона (Nokia 6110 Navigator).

Пишу и тестирую в эмуляторе. Потом переодически заливаю на телефон. И вдруг с некоторого момента приложение перестало работать, вернее пререснтало даже инсталлироваться. пишет: "отсутствуют обязательные атрибуты" (или "неверный файл jar" при инсталлировании jar) . Долго разбирался почему. Потом подсказали: если номер версии больше 99 то возникает такая ошибка. Причём такое поведение в спецификации не описано. и как я понял такое справедливо не только для нокии то и для телефонов других производителей.

Вот такая заподлянка.


Дмитрий Ржевский

Тэги:
cloud eagle experiments hadoop jelastic jelastic.com livejournal paraglider вычисления облако облачные орёл параплан

Calendar



Google Friend Connect.
Возможно через несколько лет не будет отдельных социальных сетей.
Они объединятся в одну открытую и распределённую систему.
Друзья Нравится

Feeds

Search

Links

Navigation


  • Я в ЖЖ    
  • MirTesen.ru
  • Я в "Linked In"

  • Мои друзья
  • Алекслёха
  • Latron

  • Links:
    log4j.ru
    Apache Maven
    моё родовое имение
    Виндсёрфинг


    Моё резюме
    My resume


    XFN Friendly

    Поиск