トップページ⇒tech
121コメント29KB

EJBの真相

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさんNGNG
Enterprise JavaBeans(EJB)について情報ください。

雑誌等での取り上げられ方(利用推進傾向)と
実際に利用したことある者(巨大プロジェクトのみ利用推奨)の意見に
食い違いがあり、EJBの真相を捉えられない状況だ。

EJB利用によって成功したプロジェクト・失敗したプロジェクト等を
教えて貰い、真相究明と行きたい。
実際はどうなの?
0002デフォルトの名無しさんNGNG
>>1
ズザー
0003デフォルトの名無しさんNGNG
4層以上のC/Sなんて、技術者のオナニーでしかないでしょ。
0004名無しさん@お腹いっぱい。NGNG
オナニースレ
0005デフォルトの名無しさんNGNG
EJBを使うという感覚よりはAPサーバのツールを使うという感覚だよなあ。
0006デフォルトの名無しさんNGNG
>>3
いやマジで 4 階層くらいにしなきゃ収拾つかんシステムもあるよ。
マンセーじゃないけど。
0007デフォルトの名無しさんNGNG
アプリ鯖の、標準規格
0008デフォルトの名無しさんNGNG
しゃなくて、分散トランザクション鯖の拡販と、RDB負け組の敗者復活戦が狙い
0009デフォルトの名無しさんNGNG
>>1
おまえは何が知りたい?
実際に利用した者が巨大プロジェクトのみ利用推奨と言ってるんだから
そういうことにしとけよ。安易に雑誌は信じるなボケ。
中小規模のサービスでEJBを使用せにゃならん理由なんてねぇだろ。
EJBコンテナ自体のコスト、人員(スキル)、開発難易度、中小規模の
プロジェクトにゃとてもじゃないが採用できんよ。
だいたいコンポーネントとしての再利用つっても、個別案件に対する
カスタマイズの手間は避けられないじゃない?
新規でも既存のソースの修正でもコンポーネントのカスタマイズでも、
中小規模のシステムならたいして手間はかわらんて。
0010デフォルトの名無しさんNGNG
雑誌は業界の営業活動をやりやすくするためのもん
OOで、とか、EJBで、とか、コンポーネントで
とかいう言葉だけでだまされる馬鹿なお客をつくるための記事だよ
0011デフォルトの名無しさんNGNG
J2EEをHotSpot Clientで動かすアフォは氏んでください
0012デフォルトの名無しさんNGNG
>>11
ダメなの?サーバはどうせメモリ沢山乗っけてるんだろうから、
最新のHPClientVMが一番速いんじゃないの?
それとも、HotSpot技術のバグの話?
0013デフォルトの名無しさんNGNG
実際のところどっちが速いんだろう
0014デフォルトの名無しさんNGNG
>>11
もしかしてIBMのClassicVM使えっていう話け?
001511NGNG
最新版のVMは-serverの方が速い。(GUI除く)
0016デフォルトの名無しさんNGNG
おちがないぞ
0017デフォルトの名無しさんNGNG
実際誰も使ってないから判断のしようがない。
0018デフォルトの名無しさんNGNG
>>15
http://pc.2ch.net/test/read.cgi/tech/1012728608/253

>>17
昨晩困ってたんですが、
00191NGNG
EJB使って成功したプロジェクトって無いの?
0020デフォルトの名無しさんNGNG
成功って何だよ。
EJB で動いているシステムならいくらでもあるぞ。
0021デフォルトの名無しさんNGNG
>20
うそをつけ。いくらもないね。J2EEとかいって、ServletとJSPしか使ってないだろうが。白状しろ。
0022名無しさん♯NGNG
>>21
セショーンBeanはけっこう使ってるよん。
でもエンティティBeanはほとんど使わない...。
CMPなどもってのほか...。(;´Д`)
0023デフォルトの名無しさんNGNG
いくらは言い過ぎたかも。俺が知ってるだけで銀行 2 社。商社4 (6?) 社
ある。いずれも Web サービスのバック用で。
0024デフォルトの名無しさんNGNG
セッションBeanはパフォーマンスのペナルティがあると聞きましたが、本当ですか?
0025デフォルトの名無しさんNGNG
>>22
そういう形態でのEJBを使ったメリットとは何ですか?
EJBである必要が余り感じられないんだが。
0026デフォルトの名無しさんNGNG
>>24
SessionBeanでパフォーマンスはそれほど問題にはならないのでは?
パフォーマンスでダメなのはエンチチBean。
0027名無しさん♯NGNG
>>25
EJBを使ってみたかっただけと(以下略 ってのもカナーリあるけど、
アクセスコントロールを再発明せずに済んでよかった部分もあるよん。
0028デフォルトの名無しさんNGNG
おまえ1人が使いこなせても他が使いこなせれば意味がない
そしてだれが買うんだ。APPSERVER?
いくらするとおもってんだ
0029デフォルトの名無しさんNGNG
>>28
それはタダ
0030デフォルトの名無しさんNGNG
>>28
今どきEJBぐらい使えて当然だと思うが。

と煽ってみる。
0031デフォルトの名無しさんNGNG
巨大って、どれくらいなの?
0032デフォルトの名無しさんNGNG
オレのは最大で27cmになるけど巨大かな?
0033デフォルトの名無しさんNGNG
>>32
ともっちにたべさせやれ。
0034デフォルトの名無しさんNGNG
28>>ばか?
WEBSPHEREいくらするか知ってるの?
おまえの言ってるのはJEEのおまけサーバだろ
0035デフォルトの名無しさんNGNG
jboss・・・
0036デフォルトの名無しさんNGNG
>>34は>>29宛てではないようだ。
0037デフォルトの名無しさんNGNG
Linuxでjboss動かしてんだけど、
バックグラウンドで動いているjbossを停止させるには、
今のところ関連するプロセスを一つづつ潰してくしかないですか?

J2EEのおまけサーバのようにコマンドラインオプションで
停止させるようなことはできないですよね?

自分でスクリプトなり書くか...
0038デフォルトの名無しさんNGNG
0039デフォルトの名無しさんNGNG
HPのアプリケーションサーバ、無料になったじゃん。
0040デフォルトの名無しさんNGNG
ホント?
0041デフォルトの名無しさんNGNG
無料になってからもうすぐ3ヶ月になりますよ
http://www.jpn.hp.com/software/hp-as/down/index.html
0042デフォルトの名無しさんNGNG
英語よめない
だれが使いこなせる?
0043デフォルトの名無しさんNGNG
無料にしなきゃ誰も使ってくれないもんな、J2EE。。。。(w
0044デフォルトの名無しさんNGNG
俺のやってる規模だと使ってもStrutsかCocoonですねえ。
自慢にならんが。
0045デフォルトの名無しさんNGNG
Strutsはフレームワーク?
サーバじゃないような
0046デフォルトの名無しさんNGNG
あーサーバじゃないです。EJBと縁がないと言いたかっただけ。
0047デフォルトの名無しさんNGNG
で、オレの27cmは巨大なのか?
0048デフォルトの名無しさんNGNG
27cmの足なんていくらでもいるぞ
0049デフォルトの名無しさんNGNG
>>48
チンコが27cmなんですが・・・
0050デフォルトの名無しさんNGNG
>>49
オレのは30cmあるけど、巨大かな?
0051仕様書無しさんNGNG
おれは鼻はデカイんだけど10cm、、、泣
手もデカいんだけどあんま関係ないみたい。
0052デフォルトの名無しさんNGNG
オレのはサイズそんなに大きくはないが、黒くて立派です。
0053デフォルトの名無しさんNGNG
黒くて立派で未使用です
0054デフォルトの名無しさんNGNG
ボクのは黒くはないです。
どちらかといえば白いですが、立派だと思います。
0055デフォルトの名無しさんNGNG
        ∩
 \      ( )                 ∩         /
           | |               (ヨ )
     ( `Д)|               \ (Д´ )
     /⌒   |    \   男祭り  /   (  ⌒ヽ
_    < く\ \   \     /    ノ ).ノ\\___
     \( ヨ 、 つ             ⊂  )  \   ) ─
       / //     ヽ(`Д´)ノ     ω \     ̄
     / / ./       ( ∩ )       ヽ\ \
 /  (  ̄)  ̄).     /ω\     ( ̄( ̄  )  \
0056デフォルトの名無しさんNGNG
ひだりのやつがいちばんグレートだ・・・
微妙に反ってるし
0057デフォルトの名無しさんNGNG
漏れの物は良い物だって、爺ちゃん言われてたけど、
あんまり使ってないんだよ。
0058デフォルトの名無しさんNGNG
真中のモナーが最高だな
0059デフォルトの名無しさんNGNG
モナーじゃねーな
0060マジレスNGNG
27cmや30cmのチンコではEJBは必要なし。
ちんちんがズボンからはみ出して、
ネクタイになる場合にのみ使用すること。
0061デフォルトの名無しさんNGNG
>60
ワラタ
00621NGNG
>>31
俺も大規模プロジェクトがどれくらいな規模を言うのか良く分らないが
「アプリケーションサーバーをクラスタリングして使用しないといけないような
規模」を指すらしい。曖昧でスマソ。
「巨大」はちょっと大袈裟だったかも。

とりあえず、チンコの大きさではない。
006331NGNG
> アプリケーションサーバーをクラスタリング
あー、だいたいイメージわきました。どうもです。
0064デフォルトの名無しさんNGNG
>>1は巨根ではないということですか。
0065デフォルトの名無しさんNGNG
>>1 は粗珍ってことさ。
0066デフォルトの名無しさんNGNG
>>1は童貞ですか。
0067デフォルトの名無しさんNGNG
>>1のティムポは黒くはないな。
0068デフォルトの名無しさんNGNG
オレのはビンビンだよ。
0069デフォルトの名無しさんNGNG
メリット

* サーバが落ちても復旧を可能にする機能がついている
* アプリケーションサーバ側に負荷分散機能があれば、それをノーリスクで(プログラミングの中で意識することなく)使える
* 一つのパッケージにするので分かりやすい

開発もそんなに難しくないしね。
ある程度は単なる Singleton オブジェクトとして、開発終盤でEJBに
マッピングすることもそんなに難しくない。XPでいうところのインフラ
の問題も解決しやすいと思う。
0070デフォルトの名無しさんNGNG
>>69
こういうメリットって実際に使用した人じゃないと聞けない意見だね。アリガト。
デメリットは何ですか?
0071デフォルトの名無しさんNGNG
>>70

意味もなく使いたがる人が多いことかな・・・。
単純なケースでわざわざ EJB 作るのはムダだと思うよ。
スクリプト言語で十分。

「まず最初に EJB 環境整えなきゃ・・・」といって、延々と EJB 環境、
XML 環境つくっちゃって、インフラの問題を引き起こす。

(技術者にプライオリティを渡したら最期、止まらないから・・・)

Java を使うほど複雑なケースでも、最初から EJB 環境を作る必要も
無いはずで、簡単なオブジェクトを作るところからスタートすればいいのに。

あーだこーだど技術的なところに萌えてしまわないように注意することが大事。
0072デフォルトの名無しさんNGNG
>>71
痛いよ。

耳が。
0073デフォルトの名無しさんNGNG
>>72

書いているボクも耳痛いですがね。(そりゃ新しい技術使いたいし、
もしいいっていうなら Ruby 使いたい!)

実体験でも、XP本とか読んでても、どんなことでもプライオリティは
顧客に決めてもらうのがベストだと思うよ。
0074デフォルトの名無しさんNGNG
おそらくEJBつかうメリットは
(1)規模が大きい(ECサイト)
(2)複雑なトランザクションがある
などが考えられるが

他にある?
0075デフォルトの名無しさんNGNG
>>74
(3)包茎でも使える。
0076デフォルトの名無しさんNGNG
>(1)規模が大きい(ECサイト)
>(2)複雑なトランザクションがある

この二つとも意味が分かんない。具体的にはどういうこと?
0077デフォルトの名無しさんNGNG
規模が大きいとは?
アイテム数が多い・同時処理数が多い
0078デフォルトの名無しさんNGNG
ちんぽが大きい。
0079デフォルトの名無しさんNGNG
あーーーーーーーーーーーーーーーーーーーーーーーーーーー
あーーーーーーーーーーーーーーーーーーーー
あーーーーーーーーー
あーー
0080デフォルトの名無しさんNGNG
77>>掲示板など作るのにEJBは大げさということで
0081デフォルトの名無しさんNGNG
EC サイトだの、トランザクションだの、わけわかんない言葉つかわないで
欲しいな、、、。

要するににネットショップだろ。

複雑なトランザクションとかいって、要するにリモートオブジェクトが使えて、
その間でのメッセージのやりとりの方法が決められているってこった。

そんなのは別に、EJB が優れているポイントでも何でもないと思うんだけど。
0082デフォルトの名無しさんNGNG
トランザクションを知らんのか…
0083デフォルトの名無しさんNGNG
ネットショップって言葉あまり聞かないけどな。 (w

トランザクションに関しての知識・理解が無いのね・・・
0084デフォルトの名無しさんNGNG
大規模 ≒ 社会的重要度が高い ≒ お金いっぱいかかる ≒ (負荷が大きい + フルタイムで稼働)

みたいなのがEJB向けなのかな。
0085デフォルトの名無しさんNGNG
負荷が高いなら、なおさらEJBを使わずに軽くすべきだと思うが・・・
0086デフォルトの名無しさんNGNG
>>85
いいこと言った。
0087デフォルトの名無しさんNGNG
つまりEJBは使い道がないと
0088デフォルトの名無しさんNGNG
負荷が大きいから EJB 使わなくても専用鯖や負荷分散が必要になってくる
システムという意味だろ。負荷の度合いが違うよ。
0089デフォルトの名無しさんNGNG
トランザクション管理を隠蔽されたレベルでやってくれるところに意味があるわけで、トランザクションを知らないといっている人には、逆にお勧めだと思うけど。
フリーのAppServerを使って、納品した人いる?


0090デフォルトの名無しさんNGNG
tomacat+postgresqlまでだな。
jbossはちょっと怖い。
0091デフォルトの名無しさんNGNG
トランザクションを知らずに EJB 使いこなせるか?
まぁコーダーレベルという話だろうが、アフォな SE が鵜呑みにすると
いけないので一応ツッコミ。
0092デフォルトの名無しさんNGNG
EJBだと負荷が増えてきてからボトルネックになってるBeanを別マシンに移動とか
複数台に分けて分散とかしても、EJBコンテナまかせでいーから楽チン。



ってくらいの感触だが、実際に運用するとどーなんだろ?
0093デフォルトの名無しさんNGNG
J2EE付属の鯖(j2ee)って運用に使えないの?
0094デフォルトの名無しさんNGNG
>>93
J2SDKEEの鯖は、負荷分散機構が付いていないし、
速度や負荷のチューニングもなされていないと思う。
0095デフォルトの名無しさんNGNG
>>94
アリガ�d。

だから、各メーカーがこぞってAppServer作ってるのね。
0096デフォルトの名無しさんNGNG
J2EEのツールって使いこなせても実戦であまり役に立たないよなあ・・・
0097デフォルトの名無しさんNGNG
Jakarta って EJB 対応アプリケーションサーバ作らないのかな…
0098デフォルトの名無しさんNGNG
>>95
だからAppServerベンダーはEJBマンセーとなる。
この辺りが現場としては困りもの。
0099デフォルトの名無しさんNGNG
んで、TOMCATが増殖する、と。
オープンソースマンセーって事で。
0100デフォルトの名無しさんNGNG
ECサイトって言葉も知らんのね・・・
ネットショップって言葉ははじめて聞いた。
0101デフォルトの名無しさんNGNG
んー、「平たく言えよしゃらくせぇ」っていうんなら、まぁ理解はできる。共感はしないけど。
でも、「トランザクション?ECサイト? ハァ?」 ってんならちょっと痛いかな。
0102デフォルトの名無しさんNGNG
>>100-101
(´-`).。oO(まだ彼はこのスレに潜んでるのかな・・・)
0103デフォルトの名無しさんNGNG
>>94
最近の賢い負荷分散装置は、ユーザーコネクションの維持(最初に
接続したサーバに振り分けてくれるってことね)も してくれる。
だもんで、EJBを使用すると言われる規模のプロジェクトでも、
EJBを使う必然性が無くなってしまうのではないかな。
0104デフォルトの名無しさんkNGNG
>>103
ビジネスロジックを全てのサーバーに実装するってこと?
それで何か問題あったりしないのかな?
あと、その賢い負荷分散装置は各サーバーの状態をどんな風に
監視してるんだろ。
0105デフォルトの名無しさんNGNG
負荷分散装置=レイヤー4スイッチ のことね。
CookieとかURL中の、パラメータの値を使って、セッションを識別して、同じサーバに処理を割り振るらしいよ。

サーバの負荷状態取得方法については、なんかRFCにも出てるみたいですけど、どうなんでしょね>>設定担当されてる方

>>100
そっかもねー。ご自身で必要性をご検討された上で、必要ないとおっしゃるのなら、
貴方の御用途では要らないのでしょうねー。
0106デフォルトの名無しさんNGNG
↑>>100 でなくて >>103 の間違い
0107デフォルトの名無しさんNGNG
>>104
>ビジネスロジックを全てのサーバーに実装するってこと?
そうなりますね。
1台で動かしていたAppサーバを単純に複数台用意して、作成したプロ
グラム全部を単純にコピーして、DB接続数を単純に頭割りにして、管理を
その負荷分散装置にお任せするって感じですかね。
115氏が説明してくださっていますが 負荷は、装置内で管理している
各サーバのセッション数 や、ハートビートにより取得した各サーバの
負荷率 が元になっていると説明を受けました。
もちろん、この装置に頼れるかは用途や規模によるわけですが、以前は
数台のAppサーバを立てるだけでもセッション管理用のバックエンドを
用意する必要があったわけで。で、ハードにより解決できるのであれば、
AppSvrSoftware, プログラマ とも要求使用を下げることができるわけで。

本当に必要なプロジェクトでは使い続けられるのでしょうが、以前ほどは
選択されないのではないかと思います。> EJB
0108デフォルトの名無しさんNGNG
>>107
セッション間の状態が独立してるようなアプリケーションなら
いけるかもね。他の状態に依存してるような場合は依然として
EJBだとも言えるけど。
0109デフォルトの名無しさんNGNG
>>107
たしかに、javax.servlet.http.HttpSession で対処できないものは
EJBで対応することになりますね。
0110デフォルトの名無しさんNGNG
> たしかに、javax.servlet.http.HttpSession で対処できないもの

例えば、どういうもの?
0111デフォルトの名無しさんNGNG
> 例えば、どういうもの?

自分では、よく判らないのですが……。
108氏には自信がありそうでしたので、謙虚に答えてみました。
間違っても、皮肉や当て擦りだとは解釈しないでくださいね。
0112デフォルトの名無しさんNGNG
EJBつかうと、
OOが活きるんだよね。
0113デフォルトの名無しさんNGNG
EJBつかうと、
チンコがイキルンダヨネ。
0114デフォルトの名無しさんNGNG
>>107
EJB使う使わないに関わらずサーバが複数あるときはスティッキーロードバランシングが主流なんですかねえ。
スティッキー使わないとするとcookieかhiddenかDBか…

商用APサーバ買う人の大半はDBコネクションプーリングだけが目当てだったりして。
DBコネクションプーリングなんて簡単に実装できるのに。
なんならオラクルのJDBCドライバのOracleConnectionCacheImplクラス使うとか。

ベタだがiPlanetWebServer(Sun+Netscape)+Oracleがベストチョイスなのでは?
iPlanetWebServer(iWS)てのはtomcatに仮想ホストとフェールオーバーと認証用
LDAPサーバー接続機能がついたような代物だが。
0115デフォルトの名無しさんNGNG
>>114
コネクションプーリングって、コネクションインスタンスを
起動時に一定数作っておいて使いまわすってこと?

そんなのだけのために数百万も払う馬鹿がいるの?すごい、馬鹿だ。
0116デフォルトの名無しさんNGNG
バカにはそれ以外の機能は使えない
0117114NGNG
さらにフレームワークは「JATO」で。
2ch的には萌えないかも知れんが。
0118デフォルトの名無しさんNGNG
>>115
まぁ、貧乏人に莫迦な選択肢はできないってこと。数百万の裏にあるものが
見えないなら仕事やめたら?
0119デフォルトの名無しさんNGNG
とりあえずage
0120デフォルトの名無しさんNGNG
>>118
ごめん、言ってることがさっぱり分からない。
0121おNGNG
>>120
うん、>>118 は >>114-116 の流れが読めないおば加算。
徹夜明けのオネボーさんかな?
>>115 が言っているのは「もっと他の機能もあるのにつかわないのはバカだ」でしょ
■ このスレッドは過去ログ倉庫に格納されています