タグ

2009年7月28日のブックマーク (9件)

  • Talkedbun - 日本語テキストトゥースピーチサーバー - komagataのブログ

    URLにひらがなを指定すると、そのひらがなの音声がmp3で得られるwebサーバーを作りました。 komagata’s talkedbun at master – GitHub インストール/起動 $ sudo gem install komagata-talkedbun -s http://gems.github.com $ talkedbun http://localhost:4567/ にwebサーバーが立ち上がります。 例えば、http://localhost:4567/うえからくるぞ、きをつけろ! にアクセスするとmp3が開く、という感じです。 SayKana – Mac音声合成プログラムを使っていて、Mac専用です。 しかも、ffmpegにパスが通っている事を要求するなど、お手軽感がいまいちです。 AquesTalkのWin版dllは組み込むのもFreeなので、当は “Win

  • 一緒にいく人のスペックから店が探せる「サグルメ」をオープンしました : ロケスタ社長日記

    先月までリクルートという会社で働いていたりしたんですが、そこで作ってたサービスがリリースされました。サグルメっていいます。 どんなサイト? 誰かと飲み会とかお事とかするときってありますよね。 そんな時、ぐるなびとかべログとかよく使うんですが、いつも地域とかジャンルで絞り込ませるのが違和感があって。 個人的には、飲めればいいわけで、和か肉か魚か、とかはどうでもよいわけです。 だいたいお店を予約するときに決まっているのは「だいたいの場所」と「一緒にいく人」くらいだなあ、と思って、一緒にいく人から検索できるサービスがあればいいなー、というわけで作ってみました。 どうやってるの? 仕組みとしては結構単純です。 Hotpepperとかドコイク?とか、リクルートが持っている飲店系のサービスに、アクセス解析を仕込みます。 仕込むアクセス解析は「ユーザーインサイト」。 ユーザー

  • やる夫がFiberパフォーマンス測定してみたそうです その2 - サイログ。

    (前回の続き) Benchmark.benchmark (" "*11 + Benchmark::CAPTION) do |bm| (略) fib = bm.report("fiber: ") do outer.times do fiber = Fiber.new do array = Array.new(size){|i| i} idx = 0 ret = true while ret ret = Fiber.yield array[idx] idx = (idx + 1) % array.length end end sum = 0 inner.times do sum += fiber.resume(true) end fiber.resume(nil) end end end ______ /  \    /\ /  し (>)  (<)\ | ∪    (__人__)  J | 

    やる夫がFiberパフォーマンス測定してみたそうです その2 - サイログ。
  • HTML5 Web Database向けのO/R Mapper「AlexRecord」を書いてみました。 - IT-Walker on hatena

    詳しいドキュメントとダウンロードはこちらから。 オンラインデモはこちらから(要WebDatabase・・・つまりSafari4で見てください) AlexRecordってプロダクトをリリースしました。 HTML5 Web DatabaseをベースとしたO/R Mappingフレームワークです。 コーディングに要した作業時間は1.5日くらいなんで、テストは甘甘で、ソースは汚いです。。 が、一応いろいろできるようにはしてあります。 テーブルの作成/削除 レコードの保存/削除 ActiveRecordパターンの実現 参照先テーブルもプロパティとして取得できる(現在のところ、one-to-many関連や遅延フェッチには対応してません) クエリの抽象化と流れるようなインターフェース イベントハンドリング AlexRecordを用いると、文字列操作をガリガリ行ってSQLを組み立てる手間が必要なくなり、オ

  • RubyKaigi 2009 の資料まとめ - まきもと@ねっとわーく

    ちょっと前の話になりますが、日 Ruby 会議 2009 に参加しました。プログラミング言語関係の大きなカンファに参加したのは初めてでしたが楽しかったです。何より制作意欲をかきたてられました。ぼく個人の行動は当時の Twitter を辿っていただくとして *1、某所で RubyKaigi の参加報告的なことをやることになったので、復習の意味を含め、各講演ごとの資料や動画などをまとめることにしました。*2いずれ RubyKaigi から正式な動画などが公開されると思われますが、それまでのつなぎになるかと思います。今回、まとめるにあたって、様々な方の様々な記述を参考にしました。特に、id:wayaguchi さんの RubyKaigi 2009 の 不完全ustリンク集 と、takeshinoda さん の 日Ruby会議2009資料あつめ はとても役に立ちました。(以下敬称略)2009年

  • 全文検索サーバ: これからSolrを始める人のためのApache Solr概要と便利な情報リスト集

    はじめまして。 プロダクト&サービス事業部 リーダーの久保です。 今日は、当社で利用しているOSSの全文検索アプリケーションであるApache Solrについてご紹介したいと思います。 GoogleでSolrを検索しても、日語圏のコンテンツはまだまだ少ないようです。 当社がSolrを使い始めた昨年は現在よりもさらに少なく、結構苦労しました。 今回はやや雑多な内容となりますが、新しくSolrを使う際に必要と考えられる情報をまとめてみました。 エントリーでは、Solr1.3を対象としています。 Solr1.3が現在の安定版で、Solr1.4-devが開発版となります。 目次 Solrとは 機能一覧 実績/事例 Solrを使ったシステムの開発方法 おすすめする方 データ量/性能とハードウェア マルチコア構成 様々な検索 スケールアウト 検索と更新 Solrを始めるための情報リスト 全

  • hadoopとかsolrとかの実験 - Solrのインストール - myfinder -redMine-

    何はともあれ動かしてみないとどんなものかわかりません。 JavaとTomcatのインストール すでにやってあるものとします。 JavaはどこでもいいのでPATH通しておいてください。 Tomcatは/usr/local/apache-tomcat-5.5にインストールしたものとします。 solrの初期設定 solrはJavaで書かれてるので、JettyやらTomcatの上で動きます。 アーカイブは適当にftpサイトから持ってくる 超参考サイト 超参考サイト 配備 ~/apache-solr-1.3.0/dist/apache-solr-1.3.0.warを、solr.warとしてTOMCAT_HOME/webappsに配置。 TOMCAT_HOME/conf/Catalina/localhost/solr.xmlを作成 <Context docBase="solr" debug="0" c

  • Apache Solrを使ってみた。

    Apache Solrというのは、Javaベースの検索エンジンシステムです。 「ソーラ」と呼ぶそうです。どうしても覚えられません。 Solr - Wikipedia 実はモバツイッターにも、秘かにツイッターのログ検索なる機能が追加してありまして、モバツイのエゴサーチなどをして、不具合がないかを調べていたりします。 検索エンジンはmysql + sennaを使っているのですが、自分のマシンのスペックよりも、データ量が増えてしまった状態らしく、ヒット数が多い「tinyurl」などの文字列で検索すると、めっさ遅いという状態になってしまいました。 おそらくmysqlの設定などはまだまだ余地があるんでしょう、と、いろいろ工夫しようとしたのですが、どうせならsenna以外も使えるようになりたいなぁと思って、こちらのtwitter検索で使われているSolrってのがあるというお話を聞いたので、Java久々

  • [ThinkIT] 第6回:データベースの負荷分散とまとめ (1/3)

    Webサーバーも順調に増えた、となると次はデータベースが悲鳴を上げる頃です。データベースの増設と行きましょう。 はてなではデータベースにはMySQLを利用しています。MySQLは組み込みでレプリケーションをサポートしているので、これを使わない手はありません。レプリケーションを行い、マスターDBのコピーであるスレーブDBサーバーを作り2台構成にします。 レプリケーションは、データベースを複数台に増やし、且つその複数のデータベースが保持するデータを同期させるための仕組みです。レプリケーションされたデータベースのうち、元々あったデータベースが親、それ以外が子という親子関係になります。 親はマスター、子はスレーブと呼ばれ、マスターへの更新処理と同じ処理をスレーブに伝播させることでデータの同期が行われます。実際にはマスターからスレーブへ処理が伝播するのではなく、スレーブがポーリングを行ってマスターと