dT*blog

design and programming

ロープ・データ構造

ロープ: 理論と実践

String や StringBuilder に代わる効率的なデータ構造「ロープ」。java で大量文字列を処理する場合の、新しい解だ。ストリングに対してロープとな。なるほど。

意味が理解できたところで、さて何に使ったら良いもんか。「顕著なパフォーマンスの改善が期待できるのは、大規模なストリングを大々的に変更するような場合のみです」と言われても、それこそ例として挙げられているテキスト・エディタのようなものしか思い浮かばない。そもそも、単一のストリングがそこまで大規模になったケースを知らない。うーん。

ま、アイデアとしてストックしておけば、他でも使えるかな。

ちなみに、「O(n)」とか「O(log n)」とかをビッグオー記法と呼ぶのを、この記事で初めて知りました。これ、意味は分かるんだけど、どのくらいのオーダーの差があるのか直感的に分かりづらい…。早く自然数と対数がサラッと比較できるようなビジネスマンになりたいです。

Posted by dT by 14:15 | Comments (0) | TrackBacks (0)

tomcat6 のログ出力を Log4j で行う方法

これで、かなり快適なロギング環境を構築することができました。すごい便利。

事の始まりは、tomcat6 のログローテションを自前で行おうとしたことだった。tomcat6 では、デフォルトで日付付きのログファイルを出力するのだけど、それだと自前のローテーション処理とぶつかってしまう。これはどげんかせんといかん、と言うわけで、公式マニュアルを見たら、Log4J を使う方法が書いてあったので、「これだ!」と。

しかし、Log4J の効果はローテーションに留まらず。ログ出力内容の細かなコントロールも可能になったことで、運用上必要なログのみを出力するようにできたり、かなり嬉しいことに。やってて良かった公文式。(違う)

以下、Log4J 導入までの流れ。(ほとんどマニュアルと同じですが)

続きを読む "tomcat6 のログ出力を Log4j で行う方法"

Posted by dT by 22:25 | Comments (0) | TrackBacks (0)

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30