From: matz@... (Yukihiro Matsumoto) Date: 1998-12-11T14:12:07+09:00 Subject: [ruby-list:11270] Re: shttpsrv-1.0.4 + servlet まつもと ゆきひろです In message "[ruby-list:11264] Re: shttpsrv-1.0.4 + servlet" on 98/12/11, Masatoshi SEKI writes: | |> 使ってみました。面白いです。ruby の module がサーバーのモジュ |> ールになるというのが、とってもおしゃれ。(^_^) ですよねえ. |> 分からないので恐くなって止めました。この module 方式なら、制 |> 限がかけられるのでぐっといいですね。 | |そうなんです。 |完全ではないですが少しだけ安全性を考慮してみました。 |conf.rbを編集してモジュールを組込むので、Webサーバーの管理者に |依頼しないとモジュールを追加できないことになってます。 |# 危険そうなモジュールは運用回避… ふむふむ.セキュリティ機能を使えばもうちょっと安全にできるか も.たとえば $SAFE を4にするとグローバルな状態を変更すること ができなくなります.$SAFEはスレッドローカルなので,このよう なモジュールを実行する前にスレッドを分岐しちゃうんでしょうね. Thread.start do $SAFE = 4 some_module.service(arg) end のような感じ.この機能はまたちゃんと使われたことがないんで, バグありでしょうが,興味があったら使ってみて下さい. |作っていて気になったのですが require はマルチスレッドの |ときにも安全に動くのでしょうか? |心配で Mutex で同期させていますが、その必要ないのでしょうか? 安全に動くように作ってあるつもりです.あんまりクリティカルな テストはしてませんが.変な動きをしたら教えて下さい. まつもと ゆきひろ /:|)