タグ

ブックマーク / nekop.hatenablog.com (5)

  • JBoss AS7版 1台のPC上で複数のJBossサーバーを起動する方法 Linux版 - nekop's blog

    JBoss AS7のstandaloneを使って以前書いた1台のPC上で複数のJBossサーバーを起動する方法 Linux版と同じことをする手順を書いてみる。 IPアドレスの追加定義。 sudo /sbin/ifconfig lo:1 127.0.1.1 sudo /sbin/ifconfig lo:2 127.0.1.2 /etc/hostsで名前定義。 127.0.1.1 node1 127.0.1.2 node2standaloneをnode1, node2にコピーして起動。 cd $JBOSS_HOME cp -a ./standalone ./node1 cp -a ./standalone ./node2 cd ./bin NODENAME=node1; ./standalone.sh -Djboss.node.name=$NODENAME -Djboss.server.bas

    JBoss AS7版 1台のPC上で複数のJBossサーバーを起動する方法 Linux版 - nekop's blog
    suginoy
    suginoy 2013/06/05
    「ここまで書いておいてなんですが、このエントリの本質はJBoss AS7はドメイン機能があるのでこんな面倒なことはしなくていいですよ」
  • TomcatではなくJBossを選ぶ○○の理由 - nekop's blog

    java-ja忘年会でharu860さんに聞かれたのでエントリを書くよ。と思ってざっくり書いて放置していましたすみません。この質問へのよくある回答として「EJBを使うとき」みたいなものがありますが、この回答は多くの場合何の役にも立ちませんね。このような回答をする人はJBossをあまり良く理解していない可能性があります。 というわけで、JBossを使っているユーザがどのようなモチベーションでTomcatではなくJBossを使うのか、もしくは完全にJBossに乗り換えているのか、実例ベースの理由をいくつか紹介しましょう。 機能 Tomcatで提供される機能は基的にServlet, JSP, JDBC接続プールのみで、他のものは提供されていません。シンプルですが、他のものが必要になったときに、それらをインテグレーションするコストが発生するなど、少し面倒なことになります。 TomcatになくてJ

    TomcatではなくJBossを選ぶ○○の理由 - nekop's blog
    suginoy
    suginoy 2013/05/20
  • BytemanによるJava黒魔術 - nekop's blog

    クリスマスも近いですね。さて、クリスマスといえばどういうわけか黒魔術への需要が一気に高まる時期のようですので、Java Advent Calendar -ja 2010の12月20日はJavaの黒魔術をお送りします。昨日はid:celitanでした。 今日紹介する黒魔術はバイトコードインジェクションツールであるBytemanです。 この前ですね、お仕事で「HTTPレスポンスのヘッダが勝手に想定外のものに書き換わる」という不思議現象の相談を受けたんですね。Servletの中ではsetHeader("Foo", "bar")ってしてるのに、実際のレスポンスは"Foo: hoge"とか返ってる。アプリのJavaソース調べてもそんなことしてなさそうだし、Tomcatのソース見てもsetHeader()呼び出しでは何のログも出さないっぽいのでログを有効にしても原因がわからなさそう。なんだこれはとか思

    BytemanによるJava黒魔術 - nekop's blog
    suginoy
    suginoy 2010/12/21
  • JVM勉強会でLTしゃべってきました - nekop's blog

    わかる!JavaVM — 2時間でわかる?JavaVM入門 : ATND 主催のゆるよろさん、会場提供のOracleさんありがとうありがとう! 発表スライド http://www.slideshare.net/nekop/classloader-leak-patterns 利用したソースコード http://github.com/nekop/sandbox/blob/master/java/src/main/java/sandbox/ThreadLocalKeyValue.java 僕は緊張しまくって発表中挙動不審でした。もうちょっと落ち着きましょう。でもドラはなくともきっちり5分は守ったぞ! ThreadLocalKeyValue.javaはソースコード上見えない参照が2つあるので結局のところGCされないよ、という問題。Bob LeeのBlogを読んでたりするような人にはきっと既出だった

    JVM勉強会でLTしゃべってきました - nekop's blog
  • OutOfMemoryErrorが発生したときにきちんとJavaプロセスを殺す - nekop's blog

    OutOfMemoryErrorが発生してもスレッドを異空間に葬るだけでJava VMはそのまま動き続ける場合があるけど、当然ながら状態に一貫性のない状態で動いている可能性があるわけで基的にはとっとと死んで欲しいわけである。一般的に言うところの「不定」状態。OOMEはErrorであってふつうの例外ではなく、致命的なJava VMエラーを示すものである。OOME発生後にプロセス再起動しないでそのままどうこうしようというのは絶対に避けた方が良い。 例えばJDBCのコネクションオープンしてDBからデータを読み込んでるときにOOMEが起きた場合、JDBCコネクションは大抵オープンしっぱなしで回収はされなかったりする。OOMEではfinallyブロックが呼ばれる保証はない。JDBCコネクションリークくらいならまだ良い方だが、これは全てに当てはまる。A-B-Cといったセットになっている処理は例外など

    OutOfMemoryErrorが発生したときにきちんとJavaプロセスを殺す - nekop's blog
    suginoy
    suginoy 2010/06/29
  • 1