タグ

ブックマーク / tasukuchan.hatenablog.com (4)

  • どーしてもFTPサーバを立てなければいけない時に使う、使い捨てFTPサーバ - グニャラくんのグニャグニャ備忘録@はてな

    「最近ブログ書かないんですか?」と客先で聞かれることがあったので、生存確認の意味でブログを書いてみたいと思います。 FTPといえば、最近着目を浴びたプロトコルですね。FTPは、そもそもセキュアではないプロトコルです。追い撃ちをかけるように、FTPクライアントがローカルに保存したパスワードを盗むコンピュータウイルスが発生しました。ローカル保存されたパスワードが盗まれたことについては、FTPというプロトコル自体の責任ではありません。しかし、世間でのFTPの印象は悪くなったようです。僕も、普段はFTPを使うことはありません。 しかし、外部の方とやりとりする場合に、「どどどーーしてもFTPじゃないとヤダー!!!」と言われるケースがあります。そのような場合、FTPサーバを必要なときのみだけ起動するという方法を取ることができます。具体的には、以下のような方法ですね。 ファイルの受け渡しをしたいという連

    どーしてもFTPサーバを立てなければいけない時に使う、使い捨てFTPサーバ - グニャラくんのグニャグニャ備忘録@はてな
    taro-maru
    taro-maru 2010/04/21
    pyftpdlib
  • SennaによるN-gramインデックスで注意すべき挙動 - グニャラくんのグニャグニャ備忘録@はてな

    追記:以下の文書について 現在リリースされているSenna 1.0.7では、 N-gramで1文字の日語を検索する場合は 直接部分一致検索を動作させるようにしました。 というわけで、以下で説明している挙動は今現在当てはまりません。 1文字の単語について uchiuchiyamaさんのブログにあった、Sennaのクエリ書式に対する質問 http://d.hatena.ne.jp/uchiuchiyama/20070317/senna_query_problem この問題ですが、 おそらくN-gramでインデックスを作成している場合に起こっていると考えられます。 SennaのN-gramインデックスはbi-gram、 すなわち2文字を1つのトークンとみなし、 インデックスへの登録を行っています。 ということは、文書の末尾を除いて、 すべてのトークンは2文字となり、 1文字のトークンで検索をし

    SennaによるN-gramインデックスで注意すべき挙動 - グニャラくんのグニャグニャ備忘録@はてな
  • 全文検索エンジンgroongaをテストリリースしました。 - グニャラくんのグニャグニャ備忘録@はてな

    全文検索エンジンのgroongaをテストリリースしました。 groonga 日開催された、key-value store勉強会で発表させていただきました。 今まで、Sennaには Tritonn経由で使った場合、MySQL側のインデックスとの併用が難しく、Senna来のパフォーマンスが発揮できなかった。 従来のインターフェースでは、トークナイザの切り替えなどの柔軟性がなかった。 といった問題がありました。 groongaは、それに対する返答です。 自分でデータベース書けばいいんじゃね? 柔軟なAPI用意すればいいんじゃね? ってことですね。 データベースは、key-valueストアを組み合わせたcolumnストア的な感じになっています。 詳細については、今後別エントリやドキュメントで述べます。 今後は、Sennaはバグ修正のみ行うメンテナンスモードに移行します。 実際使ってみよう 今回

    全文検索エンジンgroongaをテストリリースしました。 - グニャラくんのグニャグニャ備忘録@はてな
  • memcachedを時刻巻き戻りに強くしてみる - グニャラくんのグニャグニャ備忘録@はてな

    昨日のダサい失敗エントリが注目を集めているようで恥ずかしいお… 今後ダサい失敗で困らないために、memcachedのパッチを書いてみようと思った。 時間が巻き戻った瞬間に障害が出るのはしょうがないけど、 巻き戻ったあとにその影響が残り続けるのは嬉しくない。 昨日起きた現象を考えるに、 「memcached内部での時間は、絶対時間で保持しているのではなく起動時間からの相対時間で保持されている」のだろう、と予想していた。実際そうみたい。 current_timeという変数に、現在の起動時間からの相対秒が記録されている(set_curent_time())。 realtime()では、各種コマンドで与えられるexptimeを起動時間からの相対秒に変換している。 #define REALTIME_MAXDELTA 60*60*24*30 typedef unsigned int rel_time_

    memcachedを時刻巻き戻りに強くしてみる - グニャラくんのグニャグニャ備忘録@はてな
  • 1