タグ

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

  • Java EE環境における非同期プログラミング - nekop's blog

    Java EE環境では基的にスレッドの生成は許されていません。この制限はEJB仕様書に記述されており、ブループリントなど他のドキュメントにも記載されています。これらの制限はかなり古い時代に考えうる最大の制限を記述したものであり、「ファイルにアクセスしてはならない」など今となってはあまり現実的ではない記述も多くなっています。しかしながら、「スレッドを生成してはならない」というのは依然多くのコンテナに適用される現在も有効な制限であり、実際にスレッドの生成などを行うと誤動作するケースがあります。今回は、なぜこのスレッドの制限があるのか、現実的にどうすれば良いのか解説します。 コンテナは様々なものをスレッドに結びつけて管理しています。様々なものというのは例えばセキュリティ、トランザクション、データソースなどのコンテナリソースです。コードのほうがイメージしやすいでしょうから、以下に擬似コードを挙げ

    Java EE環境における非同期プログラミング - nekop's blog
  • 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
  • コミュニティ版JBoss ASとエンタープライズ版JBoss EAPの違い - nekop's blog

    何が違うのー?って良く聞かれるので少しだけ書いておきます。宣伝っぽくなるのは意図するところではないのでなるべく簡潔に。 簡単に言ってしまえばエンタープライズ版のリリースバイナリはコミュニティ版にさらなるテストを行って修正を積み重ね、より高パフォーマンス&安定化させたものです。 まず目的ですが、コミュニティ版のJBoss ASは、機能開発がメインです。機能開発の途中に取り込まれたバグ修正などはリリースバージョンに含まれていきますが、バグ修正のみを目的としたメンテナンスアップデートや、セキュリティアップデートのようなリリースは基的には行われていません。つまり、メジャーバージョンアップリリースのみであり、メンテナンスリリースが行われるかどうかは不定です。よって、コミュニティ版を利用し、かつバグ修正が必要な場合は、自分で修正のバックポートやビルドをすることが前提となります。 エンタープライズ版は

    コミュニティ版JBoss ASとエンタープライズ版JBoss EAPの違い - nekop's blog
  • 1