Challenge Engineer Life !

エンジニア人生を楽しみたい!仕事や趣味で学んだ技術的なことを書いていくブログです。

ガッツリJava EEで作られたZEEF.COM

少し前にJava EE 8に関する情報が色々まとまっていて、ウォッチするのにいいなぁと思ったページがありました。

javaee8.zeef.com

それで「ZEEF」って単語を何となく覚えていたのですが昨日Twitterで

というのをみて「え!WildFlyで動いてるの!?」とびっくりしました。で、さらにびっくりしたのは、なんとこのサイト、フロントがJSFで作られているっていう。

トップ画面の上段にオートコンプリート付きのテキストボックスあるんですけど
f:id:kikutaro777:20150515225008j:plain

この辺はPrimeFaces使ってるっぽいです!
f:id:kikutaro777:20150515225038j:plain

昔、@aoetkさんが

aoe-tk.hatenablog.com

で色々紹介されていたように、オープンなサイトをJSFで、というのはあるにはあるのですが…(^^;

で、このzeef.comのアーキテクチャについてAdam Bienさんがブログでインタビュー回答みたいな形式で書かれていて非常に興味深いです。

A Java EE Startup: Filtering Information with zeef.com : Adam Bien's Weblog

Java SE 8、Java EE 7の組合せでアプリケーションサーバはWildFly 8.2。そしてアプリはWARじゃなくてEAR形式とのこと。そういえば自分、EARで固めたことないなぁ(^^;

先ほども書きましたが、フロントはJSFで、CDI管理BeanやBean Validationや一部JSFのバリデータを利用してるとのこと。

EJB(Stateless以外にEJBTimerなんかも使ってるようです)やJPA,JAX-RSも使って、ガチなJava EE構成っぽいです。セキュリティはJASPIC(Java Authentication Service Provider Interface for Containers)、ただしJASPIC自身はlow-levelなので、higher levelなのは作る手間もあったようで、それがモチベーションとなってJava EE 8 securityのExpert Groupに参加されてるそうです。って、書くとさらっとしてるけど、すごいなぁ(^^;;

で、JSF周辺ですが

OmniFacesやPrimeFaces、PrettyTimeなどを使っているそうです。

PrettyTimeって初めて知りました(^^;これPrettyFaces作ってるのと同じ所ですね。

www.ocpsoft.org

自分もOmniFaces使ってたり

kikutaro777.hatenablog.com

PrimeFacesもガッツリなので

kikutaro777.hatenablog.com

なんか日本では浮いてる感じなのかなぁ…(そもそもJSFとかね)みたいに結構ネガティブだったのですが、あながち間違った選択してないんじゃー、的な気持ちになって嬉しかったです(^^)

その他、Markdownの処理にはPegDown、HTMLのパーサにJSoup、RSS/AtomはROME、画像周辺はImage4JmgscalrBatik、他にもGoogle API client libraryやキャッシュやJPA以外のエンティティにInfinispanHibernate Searchも使っているようです。

Java技術てんこ盛り!使ったことないライブラリも多々あるので少しずつ触ってみたいなぁ。

パフォーマンスどうなの?って辺りには

Java EE is incredible fast. The website itself is now doing over 120k views a month and as mentioned above is running on a single server basically, which is not even that powerful.

とのことで

ですね。サーバのスペックまでは書かれてないですが、それほどパワフルではないとのこと。

で、JSFにも触れてます。

You occasionally hear that JSF is supposedly not suited for public web sites, since it would be slow and using a lot of memory. We found however that this is absolutely not the case.

これは自分がJSFやり始めた頃にもよく聞いて、「JSFは速度やメモリ的にオープンなサイトにはあんまり向かない」と教えられて育ったので結構衝撃的な一文でした(^^;

あわせてJSF関連のベンチマークも紹介されてたので、読みたいところです。

他にも色々細かい説明書かれているので、Java EEな方々には参考になるのではないでしょうか。英語で細かいニュアンスいまいちわからない所もありますが、めっちゃ面白かったです。

にほんブログ村 IT技術ブログへ
にほんブログ村 にほんブログ村 IT技術ブログ Javaへ
にほんブログ村