タグ

ブックマーク / wyukawa.hatenablog.com (7)

  • Garbage Collectionについてちょっと調べてみた - wyukawa's diary

    HBaseのJuliet PauseをきっかけにしてGarbage Collection(以下GC)についてちょっと調べてみました。そういえば長年Javaでお仕事している割にはGCのこと全然知らなかった(汗 GCというのは不要になったメモリを回収することをいいますがそのアルゴリズムにはいくつかあって代表的なものとして以下の2つがあります。 Mark Sweep GC Coping GC Mark Sweep GCはオブジェクトをアプリケーションからたどっていってMarkしていきます。Markが無いのは使われていないオブジェクトなのでSweepします。メリットは実装が簡単なことでデメリットはメモリの断片化、フラグメンテーションが起きることです。 Coping GCはヒープ領域を2つに分けてオブジェクトをコピーしたり移動したりすることです。メリットはスループットが高いことやフラグメンテーション

    Garbage Collectionについてちょっと調べてみた - wyukawa's diary
  • Hadoopはルイーダの酒場 - wyukawa's diary

    昨日の深夜に某氏講師による「JavaエンジニアのためのHadoop入門」 の話題がネタになってましたが、僕はJavaエンジニアとしてキャリアを積んできてHadoopに入門しました。キリ HadoopはJavaで書かれているのでJavaエンジニアのキャリアのひとつとしていいと思いますけどね。 当初はHiveでデータ処理をしていましたがうまくHiveQLが書けず、DBエンジニアからHadooperになった人にSQLやデータモデルについて教えてもらったりしてました。 最近はインフラまわりをやるようになって、HeartBeatわかんねーーーーってなって、インフラエンジニアからHadooperになった人にいろいろ教えてもらったりしてました。 かようにHadoopを使う場合はいろいろなスキルが求められます。 まずインフラ構築、運用ならざっと下記のような作業が必要になるでしょう。 ハードウェア選定 ハー

    Hadoopはルイーダの酒場 - wyukawa's diary
  • 構成管理とは何なのか - wyukawa's diary

    最近職場では構成管理というキーワードが(どちらかというと悪い意味で)ホットなのですが、考えてみるとこれは人によってイメージが違う抽象的な概念ですね。ソフトウェア単体の話じゃなくてインフラ環境まで含めた総合的なソフトウェア、ハードウェア環境の変更管理をイメージする人もいるみたい。なので議論しようとすると発散しやすいのかも。抽象的な話をしても伝わりづらいのである程度具体的な話をしないと噛み合ないのかもね。 ちなみに構成管理でぐぐると チケット駆動開発をRedmineで運用し始めて、SW構成管理(Software Configuration Management:SCM)を強く意識するようになった。 しかし、SW構成管理をきちんと定義している書籍もHPも、日には殆ど存在しない事実を知って、愕然とした。 CMMIでも構成管理プロセスを定義しているけれども、僕の中ではフィットしない。 抽象的すぎて

    構成管理とは何なのか - wyukawa's diary
  • S2Util版BeanUtilの紹介 - wyukawa's diary

    これはそんなに細かくないので伝わりやすいとおもう。^^); プロパティのコピーはこんな感じ。 BeanUtil.copyBeanToBean(src, dest); Seasar2のBeanUtilとは異なりexecuteを呼びません。 特定のプロパティは除外したい場合は、CopyOptionsUtilをstatic importして BeanUtil.copyBeanToBean(src, dest, exclude("aaa", "bbb")); と書けます。 CopyOptionsUtilの各メソッドの戻り値は CopyOptions なので、 copyBeanToBean(src, dest, excludeNull().excludeWhitespace()); とチェーンすることも出来ます。 Mapにコピーする場合はこんな感じ。 Map dest = ... BeanUtil.

    S2Util版BeanUtilの紹介 - wyukawa's diary
  • S2Utilその後 - wyukawa's diary

    以前 S2Utilプロジェクトが始まりました。 - wyukawa’s blog でS2Utilプロジェクトのことを書きましたが、今回は開発インフラやその後の動きを書いてみたいと思います。 まずは開発インフラ面から。 SVNリポジトリはこちらです。興味のある人はのぞいてみるといいと思います。 https://www.seasar.org/svn/sandbox/s2util/trunk/s2util/ 注意点としてはEclipse3.6でチェックアウトしないとコンパイルエラーになることです。 なぜかというと例外のテストをするためにorg.junit.rules.ExpectedExceptionを使っているからです。 Eclipse3.5だと同梱しているJUnitのバージョンが古いためコンパイルエラーになります。ま、jarを追加すれば大丈夫です。 Hudsonのジョブはこちら https:

    S2Utilその後 - wyukawa's diary
    daisuke-m
    daisuke-m 2010/09/23
    Iteratorおもしろいね。
  • Dolteng 0.30.0でSAStruts+S2Daoのプロジェクトを生成すると起動時にエラーがでる。 - wyukawa's diary

    2008-05-15 上記の件、ちょっと調べてみました。エントリに書かれているような現象にはならなかったのですが、とりあえず書いておきます。 Dolteng 0.30.0でSAStruts+S2Daoのプロジェクト生成後にサーバーを起動すると、 org.seasar.framework.exception.ResourceNotFoundRuntimeException: [ESSR0055]リソース(s2jdbc.dicon)が見つかりません といわれる。実際s2jdbc.diconが無いのにapp.diconでincludeしているからエラーになる。Kijimunaでもエラーが出てた。 s2jdbc.diconの記述をはずしてHot Deployで起動するとOK。 ただCool Deployで起動すると、 java.lang.NullPointerException at org.se

    Dolteng 0.30.0でSAStruts+S2Daoのプロジェクトを生成すると起動時にエラーがでる。 - wyukawa's diary
  • ソース斜め読み #0 ContainerElement, ComponentElement - wyukawa's diary

    実際にコンポーネントを登録するのはContainerElement#registComponentElementByKey()。 componentDefMapにputしている。 参考: 2005-10-05 - ryomaのほろ酔い徒然 2005-10-07 - ryomaのほろ酔い徒然 コンポーネントの自動登録に対応するには、DocumentHandler#startElementで、以下のように componentタグを処理しているelseの部分を分けて、AutoRegistor関連だったらS2JSFプラグイン のような処理を入れるのがいいのかな。 IElement element = factory.createElement(project, storage, qName); element.setStartLocation(depth, locator.getLineNumbe

    ソース斜め読み #0 ContainerElement, ComponentElement - wyukawa's diary
  • 1