1 名前:デフォルトの名無しさん [04/10/27 22:54:13] 一部で話題になっている国産オープンソースDIコンテナSeasar V2(略してS2)。 ってどうよ?みんなもう使ってるの? 最近、気になるのでスレ立てました。 使用経験とか、実戦配備情報とか、つかえねーよボケ、とかいろいろ書いてね。 あと、開発プロセス「くーす」の話題もこちらでどうぞ。 本家 seasar.org www.seasar.org/ Seasar Projectグループ seasarproject.g.hatena.ne.jp/ ひがやすをのここだけの話 d.hatena.ne.jp/higayasuo/ 関連スレ(なのか?) Java Spring Frameworkを語るスレ pc5.2ch.net/test/read.cgi/tech/1077465099/
730 名前:デフォルトの名無しさん mailto:sage [04/11/23 02:49:54] >>726 ひが氏はAsIsをER分析してモデル構築で事足れり、と判断しているように見えるけど、モデル屋から見たら異論が出そうな点ではあるな。 まあ、モデル屋が考えたToBeなんかまともに機能するか分からない、顧客のAsIsなら非効率的だとしても現状業務通りに確実に動くと考えてるのかも知れん。
731 名前:デフォルトの名無しさん mailto:sage [04/11/23 03:12:43] ttp://d.hatena.ne.jp/shot6/20041122#p3 SeasarをSpringに完全に置換可能な罠。 「英語化=競合フレームワークの目に触れる」 ことを意識しなくていいのかな。 i18nとは関係なかったね。ネタにしてスマソ。>中の人
732 名前:デフォルトの名無しさん mailto:sage [04/11/23 03:16:48] 確かに。 S2.1+S2Dao+S2JSFの統合フレームワークとして世に問うのが差別化としては一番有効か。
733 名前:デフォルトの名無しさん mailto:sage [04/11/24 02:10:13] ttp://d.hatena.ne.jp/shot6/20041123#p3 > # higayasuo 『それは、結構ありますね。 > エンティティの設計書(テーブル設計)がきちんと > してれば普通にできます。 > ユーザには、エンティティ設計書は(一応)見せますが、 > レビューという観点ではないです。 > だってレビューできないですから。』 ひが君は下っ端も顧客も馬鹿にし過ぎだと思う。 馬鹿にしたほうが当面の仕事が回るのは百も承知。
734 名前:デフォルトの名無しさん mailto:sage [04/11/24 02:52:31] システム側の文法でかかれた設計書を納品して とにかく承認だけ取らせてそれを担保にして 後で変更があれば別見積りふっかけるって方が 顧客をバカにしてる、という言い方もあるな。
735 名前:デフォルトの名無しさん mailto:sage [04/11/24 03:08:18] >>734 みたいな脊髄反射荒らしはいらない。
736 名前:デフォルトの名無しさん mailto:sage [04/11/24 06:16:28] どっちが脊髄反射か傍目にはよく分からない
737 名前:デフォルトの名無しさん mailto:sage [04/11/24 10:01:09] ここには脊髄反射の荒らししかいない
738 名前:デフォルトの名無しさん [04/11/24 10:34:36] 仕様で一言も触れていないアイコンのサイズと色が気に食わないと バグだバグだと騒ぐからまったくダメだね。
739 名前:デフォルトの名無しさん mailto:sage [04/11/26 11:52:06] >>738 スレ違い?
740 名前:デフォルトの名無しさん mailto:sage [04/11/27 05:29:29] Seasar 2.1.xからservlet.jarが必須になったのでWEBアプリ以外で意味も無く必要になるのはどうか? って、前にも書いてるやついたけど、 フレームワークなど使う場合、 フレームワークで必要とされているが、用途によっては必要ないライブラリなんてほかにもいくらでもあるんじゃないか? と、思うのだが何故servlet.jarに関してだけ過敏になるのかなあ? まさか、 servlet.jar=WEBアプリ専用 って認識なのかな?
741 名前:デフォルトの名無しさん mailto:sage [04/11/27 11:52:52] >>740 あんまりキモチよくはない。
742 名前:デフォルトの名無しさん mailto:sage [04/11/27 12:56:19] >>741 servlet.jar以外のクラスだったら関係ないのが紛れ込んでてもキモチ悪くはないのですか? 私はあんまり詳しくないのでservlet.jarもcommons-logging.jarもlog4j.jarも自作を含めたその他のライブラリもただのライブラリとして扱っているんで何が混ざっていても特に気にならないんだけど... どの辺がキモチよくないのかスキルのある人の考え方を聞かせて欲しいですね。
743 名前:デフォルトの名無しさん mailto:sage [04/11/27 13:52:20] >>742 微妙に煽り調子イクナイ いい話だと思うから冷静に行こう
744 名前:デフォルトの名無しさん mailto:sage [04/11/27 15:30:29] servlet.jarでweb専用じゃないの?
745 名前:デフォルトの名無しさん mailto:sage [04/11/27 17:05:12] servlet.jarの話 まあ、 WEBアプリでも C/Sアプリでも スタンドアロンのアプリでも使えるライブラリを提供すれば、 必然的に無駄と思われるライブラリを含んでしまうんだからしょうがないじゃん。 俺もライブラリに何があってもそれほど気にしないし、 DIコンテナやらフレームワークが欲しい機能を提供してくれるんだったら どんなクラスをimportしてても気にならないけどね。 それで信頼性や処理性能を損なうのであれば問題だけど。
746 名前:デフォルトの名無しさん mailto:sage [04/11/27 17:41:22] ばかでかいわけでもあるまいし。
747 名前:デフォルトの名無しさん mailto:sage [04/11/27 19:29:32] servlet-api.jarのサイズは91,627 バイトでつ
748 名前:デフォルトの名無しさん mailto:sage [04/11/27 20:58:05] 俺のところのは75,126 バイトだ
749 名前:デフォルトの名無しさん mailto:sage [04/11/28 01:44:31] >>742 主観の話を議論しても意味はない。 気持ち悪いモンは気持ち悪い。
750 名前:デフォルトの名無しさん mailto:sage [04/11/28 08:54:43] >>749 なんだ、理由は無いのか
751 名前:デフォルトの名無しさん mailto:sage [04/11/28 23:27:50] そりゃ理由なんてねえだろ。 servlet.jarがあるのが気持ち悪いんだったら前のバージョン使ってりゃいいんだよ。 前のバージョンだって十分使えるんだから。 それか、自分で機能削除してservlet.jarを使わないようにすればいいだけ。
752 名前:デフォルトの名無しさん mailto:sage [04/11/29 00:17:07] servlet.jarから必要なクラスだけぶっこ抜いたらいいんでは。 どれが必要なクラスなのか知らないけど。
753 名前:デフォルトの名無しさん mailto:sage [04/11/29 00:53:47] >>752 そっちのほうが気持ち悪くねーかw
754 名前:デフォルトの名無しさん mailto:sage [04/11/29 01:25:32] 理由はないが、気持ち悪いね。
755 名前:デフォルトの名無しさん mailto:sage [04/11/29 03:22:08] くーす3連発。 ttp://d.hatena.ne.jp/akon/20041127#p1 ttp://d.hatena.ne.jp/akon/20041127#p2 ttp://d.hatena.ne.jp/akon/20041128#p1 思わせぶりで煙に巻くテクニックは年の功。
756 名前:デフォルトの名無しさん mailto:sage [04/11/29 07:22:23] >>755 思わせぶり≠自分が理解できない
757 名前:デフォルトの名無しさん mailto:sage [04/11/29 20:33:49] 「思わせぶり」って忘れたころにやってくるっていう意味じゃないの? ほら、3年ぶりとか、久しぶりとか、そういう「ぶり」
758 名前:デフォルトの名無しさん mailto:sage [04/11/30 02:47:20] 面白い!
759 名前:デフォルトの名無しさん mailto:sage [04/11/30 13:53:04] S2JSFはまだかいな。 他と比べて「まだ出来てないこと」以外は最高だと思うので 早く欲しいですよ。
760 名前:デフォルトの名無しさん [04/11/30 18:56:44] S2Daoで配列を永続化しようとしたらだめだったorz ●DBのDDL CREATE TABLE member (...., area_id SMALLINT[], ....); ●永続クラスとそのDao public class Member { public static final String TABLE = "member"; public static final String areaId_COLUMN = "area_id"; private int[] areaId; /* * 以下アクセサー */ } public interface MemberDao { public static final Class BEAN = Member.class; public void insert(Member member); }
761 名前:デフォルトの名無しさん [04/11/30 18:57:24] 続き ●dicon <?xml version="1.0" encoding="euc-jp"?> <!DOCTYPE components PUBLIC "-//SEASAR//DTD S2Container//EN" "www.seasar.org/dtd/components.dtd "> <components> <include path="dao.dicon"/> <component class="MemberDao" > <aspect>dao.interceptor</aspect> </component> </components> って感じだとINSERT文のarea_idの値にareaId.hashCode()の値('[I@8c5488')が入ってだめだった。
762 名前:760 mailto:sage [04/11/30 19:30:08] JDBCドライバのせいだった...orz ごめんよS2Dao....
763 名前:S2Dao mailto:sage [04/11/30 23:20:00] >>762 まあ、気にするな。
764 名前:デフォルトの名無しさん mailto:sage [04/12/01 00:12:24] ttp://d.hatena.ne.jp/khi/20041129 ttp://www.kakutani.com/20041129.html#p01 ttp://lists.sourceforge.jp/mailman/archives/seasar-user/2004-November/001244.html コミュニティ粘着の皆様、本格的な出番ですよ。
765 名前:デフォルトの名無しさん mailto:sage [04/12/01 00:24:31] はぶさんの発言力をひがさんにインジェクションできれば問題なしなんだろうけど。 ひがさんの技術力をはぶさんにインジェクションしたら、たちが悪そう。
766 名前:デフォルトの名無しさん mailto:sage [04/12/01 00:45:34] >>763 オメエ、いいやつだな。さすがS2Daoだ。
767 名前:デフォルトの名無しさん mailto:sage [04/12/01 01:12:52] >>764 takaiさんていい人そうだw
768 名前:デフォルトの名無しさん mailto:sage [04/12/01 02:01:43] >>767 S2NazoWebの人だしな。Groovyマンセー!
769 名前:765 mailto:sage [04/12/02 02:18:25] えー、最強はぶっちを目指しましょうよ。
770 名前:デフォルトの名無しさん mailto:sage [04/12/02 02:20:27] 真面目にキャバクラとかすんのバカバカしいですよ。
771 名前:デフォルトの名無しさん mailto:sage [04/12/02 12:34:13] >>770 もれも同じ読み違いしたw
772 名前:デフォルトの名無しさん mailto:sage [04/12/02 21:21:25] S2StrutsのActionのPOJO化自分でやろうかと思ってたらキム氏がやるらしいな。 S2JSF待つ余裕もないし早くリリースして欲しいな。 とはいえ、自分でやろうと思ってたからわかるけど 結構面倒なんだよなあ。テストが...
773 名前:デフォルトの名無しさん mailto:sage [04/12/02 23:37:05] 失敗... orz
774 名前:デフォルトの名無しさん mailto:sage [04/12/03 00:44:06] servlet.jarが入ると気持ちが悪いのは、プレゼンテーション層がないアプリで プレゼンテーション層に依存してしまうからだろう。 階層化を意識している人は気持ち悪く思うのは当然だ。
775 名前:デフォルトの名無しさん mailto:sage [04/12/03 02:37:24] rt.jarの中に入ってるswingは気持ち悪くならないのかな
776 名前:リリース情報 mailto:sage [04/12/03 04:09:34] S2.1.3 リリース d.hatena.ne.jp/higayasuo/20041202#1101990683
777 名前:デフォルトの名無しさん mailto:sage [04/12/03 08:11:04] JDBC使わないアプリで以下略
778 名前:デフォルトの名無しさん mailto:sage [04/12/03 11:29:24] >>775 それはわざわざ後から入れなくてかまわないだろ。選択の自由がない。 それが気になるならJava2ME使いなされってことだし。
779 名前:デフォルトの名無しさん mailto:sage [04/12/03 12:24:04] ttp://d.hatena.ne.jp/masataka_k/20041201#p1 ttp://d.hatena.ne.jp/habuakihiro/20041203#1102003235
780 名前:デフォルトの名無しさん mailto:sage [04/12/03 16:28:03] 動くものが出てれば、少なくとも失敗ではない。
781 名前:デフォルトの名無しさん mailto:sage [04/12/03 16:30:08] Seasar3が出るなら、Seasar2は成功だし、Seasar4が出るならSeasar3は成功。 Seasar4が出ないということになれば、Seasar3は失敗。 次につながるかどうかだと思うな。
782 名前:デフォルトの名無しさん mailto:sage [04/12/03 17:49:08] 予言するけど、Seaserは全てからスルーされて終わりだと思うよ
783 名前:デフォルトの名無しさん mailto:sage [04/12/03 22:56:13] かわいそうなSeaser…でも漏れが応援してるのはSeasarだからいいや。
784 名前:デフォルトの名無しさん mailto:sage [04/12/04 00:29:01] 予言というか、seaserがスルーされていることには実績があるね
785 名前:デフォルトの名無しさん mailto:sage [04/12/04 00:41:34] おれいま仕事でSeasar2使ってるけど。
786 名前:デフォルトの名無しさん mailto:sage [04/12/04 02:35:33] >>780 > 動くものが出てれば、少なくとも失敗ではない。 ( ´,_ゝ`)プッ
787 名前:デフォルトの名無しさん mailto:sage [04/12/04 10:11:28] >785 おれも仕事で何本か書いてみた。全体の見通しがいい作りになる。 S2のルールさえ覚えれば、特別な知識がいらないってところがいい。 仕事の道具としては相当使える部類だと思う。
788 名前:デフォルトの名無しさん mailto:sage [04/12/04 11:56:36] いびつな変質を遂げたユーザーコミュニティーも こうした日本に特有な部分はユーザー会の活動にも見られる。 日本には「*ユーザー会」といったものが多数存在しており、世界に例を見ないほど発達している。 日本のなかでもさらに地方支部みたいなものが生まれるユーザー会もあるようだ 問題なのは、本流とかい離し、日本独自の動きをしてしまっていることである。 こうしたケースでは本流との開発グループとの関係は希薄であることも多く、全体として開発、 普及の促進が阻害されるケースことにもつながる。 *-jpといった感じで本流と離れてしまうことは、開発者から見ればよいことではない。 また、離れることで利権を得ようとする人たちも現れてくる。 かつてDebian Projectのリーダーとして活動していたブルース・ペレンスと話をした際にこうした状況について話したところ、 それはFake Open Sourcerだね(だから排除すべき)という結論に達した
789 名前:デフォルトの名無しさん mailto:sage [04/12/04 13:58:13] >>788 S2の英語圏コミュニティができたとしても、それはfakeだから排除すべきだな
790 名前:デフォルトの名無しさん mailto:sage [04/12/04 15:01:38] 日本人なんか、fakeニダ
791 名前:デフォルトの名無しさん mailto:sage [04/12/04 15:16:06] >>789 S2の2chコミュニティができたとしても、それはfakeだから排除すべきだな
792 名前:デフォルトの名無しさん mailto:sage [04/12/04 19:48:49] >>788 出典は書いておけよ 日本におけるOSSの幻想――OSS界のガラパゴス諸島、ニッポン www.itmedia.co.jp/enterprise/articles/0412/01/news009.html
793 名前:デフォルトの名無しさん mailto:sage [04/12/04 20:04:40] >>791 S2のNPOができたとしても、それはfakeだから排除すべきだな
794 名前:デフォルトの名無しさん mailto:sage [04/12/05 13:16:01] 本家から離れることで利権を得る状況がFakeだって事なんだから、 特に利権を得てない2chコミュニティは違うだろ。NPOはそもそも本家の話だし。
795 名前:デフォルトの名無しさん mailto:sage [04/12/05 14:58:24] Fakeな「日本〜ユーザー会」の例キボン
796 名前:デフォルトの名無しさん mailto:sage [04/12/05 14:58:30] そもそも2ch自体がfake
797 名前:デフォルトの名無しさん mailto:sage [04/12/05 15:00:04] >>795 ブルース・ペレンスが言ってるんだから本人に聞け
798 名前:デフォルトの名無しさん mailto:sage [04/12/05 15:11:50] >>797 むちゃゆうなよ 代わりに、「日本 ユーザー会」でGoogleに聞いておいた 12/5付 Googleの選ぶ日本〜ユーザー会 1) Samba 2) MySQL、 3) PHP 4) OpenOffice.org 5) PostgreSQL 6) KDE 7) UNIX 8) Apache 9) Zope 10) Python どれがFakeだ?
799 名前:デフォルトの名無しさん mailto:sage [04/12/05 15:26:04] おもしろいから漏れもググってみた。オプソとは関係ないがこんなのもあるのな。 ttp://www.asahi-net.or.jp/~WT8Y-SGWR/jws.hp/index.html ttp://toughbook.jp/ ttp://www.infosta.or.jp/kagaku/index.html 何となく日本*ユーザ会って名前をつけたがる国民性なんじゃないかと感じたよ。
800 名前:デフォルトの名無しさん mailto:sage [04/12/05 15:33:37] 9) Zopeに一票
801 名前:デフォルトの名無しさん mailto:sage [04/12/05 18:35:47] >>798 1)と5)は本家に影響を与えているからFakeではない。 他のユーザ会は知らん。
802 名前:デフォルトの名無しさん mailto:sage [04/12/05 19:24:39] >>798 2)と8)は純粋に「ユーザー」会な希ガス。 他も日本語化とかi18nがらみでcoreな部分に携わってるひとはいないよね。 こういう状況がfakeだといっているのかな。 なんかスレ違いかも。
803 名前:デフォルトの名無しさん mailto:sage [04/12/05 22:58:15] たしかにZopeはうさんくさいな。 あと、SambaもI18NでTAX食ってたぞ。 IPAだ。あまりしられてないことだが。
804 名前:デフォルトの名無しさん mailto:sage [04/12/05 23:22:41] それは税金の正しい使い方なので無問題。
805 名前:デフォルトの名無しさん [04/12/05 23:30:36] S2Strutsはスレッドセーフにできてなかったのか。 驚いた。 マルチプロセッサの環境での実務使用を考えていたのに、白紙に戻ってしまった。 S2JSFも初めはそのレベルなのかな。 WEBアプリでスレッドセーフじゃないってのは相当ヤバイ問題じゃない? がっくりだ。。。orz まあ、俺は提供されるもの使う側で作るスキルも無いから、 作ってる人間の苦労がどの程度のものかわからないまま言いたいこと言ってるけど。 S2Strutsが改善されるとふんで突っ走る。。。わけにもいかねえしな。 シングルプロセッサ環境での使用だったら突っ走ってもよかったんだけどなあ。 あ〜頭痛ぇ。どうしよう(泣) 冒険しようとした自分が悪いんだけどorz しかし、オープンソースの品質保証ってのは難しいね。
806 名前:デフォルトの名無しさん mailto:sage [04/12/05 23:46:16] >>805 アイタタタ・・・ どこがどう問題なのか理解してる?
807 名前:デフォルトの名無しさん mailto:sage [04/12/05 23:56:38] >>805 話の流れがよく分からないんだけど。 S2Strutsがスレッドセーフじゃないってのは、どの部分を指していっているのかよく分からない。 スレッドセーフの話で言えば、そもそもServlet自体自分で同期化しないとスレッドセーフじゃないし、 S2のコンポーネントもSingletonでロードする限り、ちゃんと同期化しないとスレッドセーフじゃないわけ だけど、そういう話じゃないんだよね?
808 名前:デフォルトの名無しさん mailto:sage [04/12/06 00:02:48] マルチプロセッサとスレッドセーフ性は直接関係ないだろ。 Double Checked Lockingとかでビミョーに関係あったりするけど。
809 名前:デフォルトの名無しさん mailto:sage [04/12/06 00:03:50] ttp://d.hatena.ne.jp/higayasuo/20041205#1102211983 はぶ君はハゲヅラかぶってチチロー役やりなさい。
810 名前:デフォルトの名無しさん mailto:sage [04/12/06 00:05:53] >>807 ttp://d.hatena.ne.jp/khi/20041205 ↑嫁
811 名前:デフォルトの名無しさん mailto:sage [04/12/06 00:09:40] よくわかんないけど、 この二つの日記に書いてあることのことかな? d.hatena.ne.jp/khi/ d.hatena.ne.jp/skimura/searchdiary?word=%2a%5bSeasar%5d 勉強中の俺には何言ってるかよく分からないんだけど。 つーか、フレームワークってその辺も特に意識しなくてもちゃんとできるもんじゃないの?
812 名前:デフォルトの名無しさん mailto:sage [04/12/06 00:27:32] おれはS2 + S2Dao + Struts環境で仕事してるが、S2Strutsは採用せずにAction内で getComponent()してる。ActionはView層にしてるんだが、View層の人にまでDIの仕組みを 説明するのがどうもな、と思っただけなんだけど、結果的には良かったってことか。
813 名前:デフォルトの名無しさん mailto:sage [04/12/06 00:30:16] > ttp://d.hatena.ne.jp/khi/20041205 なんつーか、お粗末の一言だな。 マルチスレッドでアクセスされるオブジェクトプール的なものによくある 典型的なバグパターンじゃねえか。 こんな問題が今の今まで放置されてたのかよ。 まあ、こういう問題でパフォーマンスとスレッドセーフを両立させるのは 確かに難しいがね。 J2SE 5.0が使えるんなら、java.util.concurrent.ConcurrentHashMapの putIfAbsent()メソッドとかでかなり楽が出来るんだが。
814 名前:デフォルトの名無しさん mailto:sage [04/12/06 00:43:04] >>813 > J2SE 5.0が使えるんなら、java.util.concurrent.ConcurrentHashMapの > putIfAbsent()メソッドとかでかなり楽が出来るんだが。 元ネタのDoug Leaのutil.concurrentで代用とか。
815 名前:デフォルトの名無しさん mailto:sage [04/12/06 00:47:42] ソースの前に「............................................」が続くのには意味があるの?
816 名前:デフォルトの名無しさん mailto:sage [04/12/06 00:50:05] S2Strutsのスレッドセーフ対応早速リリースしたね。 そりゃそうだよね。 インパクトでかすぎだもん。
817 名前:デフォルトの名無しさん mailto:sage [04/12/06 00:54:15] >>815 動いてるの確認するだけでしょ
818 名前:デフォルトの名無しさん mailto:sage [04/12/06 00:54:34] プロセスがドタバタしたけどオプソの良さがでたんじゃないのかな〜。
819 名前:デフォルトの名無しさん mailto:sage [04/12/06 01:09:36] >>814 > > J2SE 5.0が使えるんなら、java.util.concurrent.ConcurrentHashMapの > > putIfAbsent()メソッドとかでかなり楽が出来るんだが。 > > 元ネタのDoug Leaのutil.concurrentで代用とか。 いや、util.concurrentのConcurrentHashMapやConcurrentReaderHashMapには putIfAbsent()のようなメソッドがないのよ。 だから、痒いところに手が届かないことがよくあるんだよね。
820 名前:デフォルトの名無しさん mailto:sage [04/12/06 07:05:19] で、新しいのでちゃんと直ってるの?
821 名前:デフォルトの名無しさん mailto:sage [04/12/06 07:51:22] >>820 マルチプロセッサ環境が無いから俺には確認できん。 つい最近まではあったんだけど。。。 誰かレポよろ。 khi氏の書き込み待ちになってしまうのか? 彼は書いてる文面はむかつくが(性格も悪いんだろうけど)、 指摘してるポイントは正しいからね。
822 名前:デフォルトの名無しさん mailto:sage [04/12/06 11:22:00] >>821 だから、マルチプロセッサとスレッドセーフと、どんな関係があるのかと。
823 名前:デフォルトの名無しさん mailto:sage [04/12/06 12:11:53] MP構成でなければなかなか再現しないので実際に修正されたという確信がもてない、という関係 まあMPで試して大丈夫ならOKというものでもないんだけど。 論理的な正しさをソースコードで検証しないとどうしようもない。
824 名前:デフォルトの名無しさん mailto:sage [04/12/06 22:26:35] khi氏という高スキル開発者がSeasarプロジェクトへ合流か。 順風過ぎて少し妬ましいね。
825 名前:デフォルトの名無しさん mailto:sage [04/12/06 23:03:12] >>824 あまりやる気あるようには見えないけどね。 まあ、脇から問題見つけて文句言う人間がいるだけで全然違うからね。
826 名前:デフォルトの名無しさん mailto:sage [04/12/06 23:35:18] >>808 マルチプロセッサだと、スレッドセーフまわりのバグに当たり易くなる。
827 名前:デフォルトの名無しさん mailto:sage [04/12/07 00:21:00] >>826 つか、シングルプロセッサだと当たりにくいよね。 昔、貧乏プロジェクトでテスト環境にマルチプロセッサの環境準備できなかったことがあて。 負荷テストで相当の多重度かけて数日動かして問題なかったのに、 マルチプロセッサの本番サーバでリリースしたら初日にいきなりAccessViolationしやがったし。 負荷テストの1/10程度の同時アクセスしかなかったんだけど出やすいんだよね。 当然だけど。 自前のものならまだしも、下請けに作らせたものだったから、 大問題になっちゃったよ。 しかも、仕様変更だとかふざけた事言いやがって! ああ、嫌なこと思い出したなぁ。 だからうちは下請けに仕事やらせるときはマルチプロセッサ環境での負荷検証してから納品させるようにした。 下請けにとってはやな客なんだろうなあ。
828 名前:813 mailto:sage [04/12/07 00:56:06] つーか、マルチプロセッサ以前の問題でしょ。 ttp://d.hatena.ne.jp/khi/20041201#c ↑ここら辺りの頓珍漢なやりとりを見りゃ、skimura氏が HashMapクラスのAPI仕様すら理解してなかったってのは明白だ。 > ttp://java.sun.com/j2se/1.4/ja/docs/ja/api/java/util/HashMap.html > この実装は同期化されません。複数のスレッドが同時にこのマップにアクセスし、 > それらのスレッドの少なくとも 1 つが構造的にマップを変更する場合には、 > 外部で同期をとる必要があります。構造的な変更とは、1 つ以上のマッピングを > 追加または削除するオペレーションのことです。 こんなの、ちょっと知識のある人がコードレビューすりゃ一発で 指摘されるもんなのに、今まで放置されてたってのは異常。 ……って思ってたら、 > なんていうか、「オープンソース」よりも「(ソースコードの付いてる) > フリーソフト」に近い雰囲気を感じないといえば嘘になります。 って記述を見て納得。
829 名前:デフォルトの名無しさん mailto:sage [04/12/07 01:01:44] S2Daoを仕事で使おうとしてるんだけど、これ、EntityManagerが惜しい! SQL自動生成とEntityManagerの両立ができたらいいんだけど、出来ないのかな。 というのは、QUERYアノテーションで基本的なメソッドについてはSQL自動生成させて おいて、それとは別にEntityManagerの findObjectを使いたいんだよね。 それができれば、もしDaoによいメソッドがなければ、findObjectにQUERY アノテーションと同じ文法でWHERE句を渡してやれば好きなようにデータを取得できる。 HibernateのHSQLみたいな使い方ができる でもEntityManagerを使うためにはAbstractDaoを拡張した実装クラスを作らないとい けない。そうするとインターフェースへの自動生成ができない(実装しないと コンパイルできないし)。自動生成はしたいけど、EntityManagerのfindメソッドも一部 では使いたい。EntityManagerだけ生成できるのかJavaDocもないから良くわからん。 あとふと思ったが、H2Daoは楽は楽だが、一方でO/R Mappingフレームワークが普通に 提供している「DBから読み込んだデータのキャッシング」は提供しないね。まあ機能的に あたりまえなんだろうけど、この辺りを自分で実装する場合の負荷を考えるとどうなんだ ろか。
830 名前:デフォルトの名無しさん mailto:sage [04/12/07 01:07:36] H2Dao(・∀・)イイ