Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
GroovyServ                高速起動Groovy                JGGUG スペシャルG*ワークショップ                      2010/7/24                  N...
自己紹介                上原潤二                NTTソフトウェア株式会社                JGGUG運営員                ブログ「Grな日々」                「Gr...
目次            概要編                       使ってみよう編                GroovyServって何?         インストール                起動が速いと何がうれしいの?...
GroovyServ                高速起動Groovy                  <概要編>2010年7月27日火曜日
GroovyServって何?                スクリプト起動速度が爆速に!                (x10 ∼20)                Groovy処理系を常駐起動(groovyserver)         ...
起動が速いと何がうれしいの?                dankogai氏曰く                       そんなわけで、現存の言語では最も美人な Scala な                       のだが、Scal...
どのぐらい速い?(Win編)                   groovy -e println hello world                                                      実行時間(s...
どのぐらい速い?(Mac編)                  groovy -e println hello world                                                       実行時間(s...
GroovyServ構成図                    Shell Environment                                 User Groovy                            ...
通常のGroovy実行                            User Groovy                   Shell Environment                                    ...
スクリプト開発                Groovyは本来、PerlやRubyにも拮抗しうる                強力なスクリプト言語                ワンライナー                フィルタ、パイプ ...
効果が薄い用途                サーバ開発                 起動が頻繁ではない                GUIアプリケーション                 起動が頻繁ではない               ...
GroovyServ                高速起動Groovy                <使ってみよう編>2010年7月27日火曜日
インストール                http://kobo.github.com/groovyserv                展開したフォルダのbinにPATHを通す                HOMEを設定する(0.3まで...
使い方                コマンド、2つ。                groovyclient                groovyserver2010年7月27日火曜日
groovyclient                groovyコマンドの代わり                 初回起動時にgroovyserverがバックグラウ                 ンド起動                 ...
groovyserver                groovyserv本体                使い方                 groovyserver             明示的な起動               ...
デモ2010年7月27日火曜日
GroovyServ                高速起動Groovy                 <その他編>2010年7月27日火曜日
制約について                CWD問題                 異なるカレントディレクトリを持                 つような複数スクリプトを同時に                 は実行できない       ...
セキュリティについて                何もしないと何でも外部から実行でき                てしまうため防御が必要                 秘密のcookieファイルによる認証                 ...
ロードマップ                Groovyserv 0.4リリース…8/4                 多くのbugfix、win設定簡易化                将来希望                 Native ...
まとめ                groovyservをよろしく                 是非お試しください                 バグ報告大歓迎です2010年7月27日火曜日
Upcoming SlideShare
Loading in …5
×

GroovyServ concept, how to use and outline.

3,112 views

Published on

about groovyserv

Published in: Technology, Education
  • Be the first to comment

GroovyServ concept, how to use and outline.

  1. 1. GroovyServ 高速起動Groovy JGGUG スペシャルG*ワークショップ 2010/7/24 NTTソフトウェア株式会社 上原潤二2010年7月27日火曜日
  2. 2. 自己紹介 上原潤二 NTTソフトウェア株式会社 JGGUG運営員 ブログ「Grな日々」 「Grails徹底入門」2章執筆 kobo(工房)プロジェクト groovyserv, kobo-commons, String#tr() 目的: 日本発のGroovyへの貢献2010年7月27日火曜日
  3. 3. 目次 概要編 使ってみよう編 GroovyServって何? インストール 起動が速いと何がうれしいの? 使い方 どのぐらい速い?(Win,Mac) groovyclient GroovyServ構成図 groovyserver 通常のGroovy実行 デモ スクリプト開発 その他編 効果が薄い用途 制約について セキュリティについて ロードマップ まとめ2010年7月27日火曜日
  4. 4. GroovyServ 高速起動Groovy <概要編>2010年7月27日火曜日
  5. 5. GroovyServって何? スクリプト起動速度が爆速に! (x10 ∼20) Groovy処理系を常駐起動(groovyserver) Groovyスクリプト実行は、処理を groovyserverに移譲する小さなCプログラム で行う(groovyclient) groovyserver-client間はsocket通信2010年7月27日火曜日
  6. 6. 起動が速いと何がうれしいの? dankogai氏曰く そんなわけで、現存の言語では最も美人な Scala な のだが、Scala の最大の特長である「Java上で動 く」というのは、最大の欠点でもある。(中略)最も それを強く感じるのは、Scalaをスクリプトとして 使ったときだろう。 たとえば、上の Hello, World! のサンプルは、今時の パソコンでも実行に一秒を要する。Java VMを立ち 起動0.27秒じゃ 上げ、Scala環境を初期化するのにそれだけかかるの 遅いyo!! だ。(中略) コンパイルした場合でも、0.27秒。ワン ライナーを書くのにも最適な Scala なのに(後略) http://blog.livedoor.jp/dankogai/archives/51275491.html2010年7月27日火曜日
  7. 7. どのぐらい速い?(Win編) groovy -e println hello world 実行時間(sec) 比率 normal groovy 3.041 1.0 Installer版groovy 1.262 2.4 groovyclient(C版) 0.155 19.6 groovyclient(Ruby版) 0.193 15.8 •Groovy 1.7.3, GroovyServ 0.4-SNAPSHOT, WinXP SP3,Core2Duo 2GHz,JDK1 •timeコマンドでreal時間を計測。10回実行した平均。2010年7月27日火曜日
  8. 8. どのぐらい速い?(Mac編) groovy -e println hello world 実行時間(sec) 比率 normal groovy 1.112 1.0 Mac Ports版groovy(1.7.2) 0.321 3.5 groovyclient(C版) 0.031 35.8 groovyclient(Ruby版) 0.041 27.1 •Groovy 1.7.3, GroovyServ 0.4-SNAPSHOT, MacOSX 10.6.3, MacBook Core2duo 2.53GHz, JDK1.6.0u20 •timeコマンドでreal時間を計測。10回実行した平均。2010年7月27日火曜日
  9. 9. GroovyServ構成図 Shell Environment User Groovy Srcipt C LA SS cm PA System.in TH d. System.out lin en e v SYstem.err ar gs Ctrl-C groovyclient TCP/IP groovyserver i n s td de t st d o u rr JavaVM st exit status File System Authentication Cookie File2010年7月27日火曜日
  10. 10. 通常のGroovy実行 User Groovy Shell Environment Srcipt C LA System.in SS cm PA System.out TH d. SYstem.err lin en e v ar gs Ctrl-C groovy i n s td de t st d o u JavaVM rr st exit status File System2010年7月27日火曜日
  11. 11. スクリプト開発 Groovyは本来、PerlやRubyにも拮抗しうる 強力なスクリプト言語 ワンライナー フィルタ、パイプ コンパイル不要 でも、レスポンス悪いとやる気が出ない トライ&エラーを繰り返すため そこで、GroovyServですよ2010年7月27日火曜日
  12. 12. 効果が薄い用途 サーバ開発 起動が頻繁ではない GUIアプリケーション 起動が頻繁ではない CUIアプリでシェルのように起動して操作するもの 起動が頻繁ではない cronで定期的に起動 起動レスポンスが重要ではない2010年7月27日火曜日
  13. 13. GroovyServ 高速起動Groovy <使ってみよう編>2010年7月27日火曜日
  14. 14. インストール http://kobo.github.com/groovyserv 展開したフォルダのbinにPATHを通す HOMEを設定する(0.3まで) GROOVY_HOMEを確認 好みにより、aliasを設定 (DOS窓ではdoskeyで設定可)2010年7月27日火曜日
  15. 15. 使い方 コマンド、2つ。 groovyclient groovyserver2010年7月27日火曜日
  16. 16. groovyclient groovyコマンドの代わり 初回起動時にgroovyserverがバックグラウ ンド起動 引数・オプションはgroovyserverにそのま ま渡される エイリアス/マクロ定義が便利 alias groovy=groovyclient (U*IX,cygwin) doskey groovy=groovyclient (windows)2010年7月27日火曜日
  17. 17. groovyserver groovyserv本体 使い方 groovyserver 明示的な起動 groovyserver -r groovyserver -k 再起動 停止 } win/非cygwin で利用不可 groovyserver -v 詳細ログ ログ出力先: /.groovy/groovyserv/groovyserver.log2010年7月27日火曜日
  18. 18. デモ2010年7月27日火曜日
  19. 19. GroovyServ 高速起動Groovy <その他編>2010年7月27日火曜日
  20. 20. 制約について CWD問題 異なるカレントディレクトリを持 つような複数スクリプトを同時に は実行できない 非cygwin版では-r,-kが利用できない Permgen問題2010年7月27日火曜日
  21. 21. セキュリティについて 何もしないと何でも外部から実行でき てしまうため防御が必要 秘密のcookieファイルによる認証 ファイルシステムベース localhostからの接続のみに制限 どうしても分散実行したい場合、今のと ころssh port forwarding + NFSで。2010年7月27日火曜日
  22. 22. ロードマップ Groovyserv 0.4リリース…8/4 多くのbugfix、win設定簡易化 将来希望 Native Installerに組み込んだ上で Windows Installer版で提供 groovy --with-groovyserv2010年7月27日火曜日
  23. 23. まとめ groovyservをよろしく 是非お試しください バグ報告大歓迎です2010年7月27日火曜日

×