トレード用ブックマークレット

さて、僕も手数料の関係から2,3年使ってきたDからEにと最近乗り換えたわけですが、なにやら素敵なブックマークレットが登場してます。

Uno, dos, tres, quatro!

早速修正。ETRADEの各銘柄の情報画面とYahoo!の各銘柄の情報画面(掲示板を含む)を交互に移動するように変更。また、株のコード(4桁の数字のやつ)を選択した状態でブックマークレットを使うとETRADEにとぶようにしました。

僕のトレードの中ではヤフーの掲示板は結構重要だ。それは書いてあることを信じるって意味ではなくて、RSIを補強する意味っていうか、煽りとかそんなんがどんなもんかとか。というわけで、欲しい株を見てるときはタブとかでEとヤフーを開いているんだが、このブックマークレットを使うといったりきたりできるので非常に便利。さらに、チャートも回ってくれると嬉しいかも(自分でモディファイしろって?)

ヤフーのトレード掲示板に関しては参加者とかもかなり偏っているから、ここの情報はあんま関心がなくて、個人の参加者が多いかなぁとかを観たりしている。書き込みないけど動いてる株(店頭、東証一部)は結構あるし、そういうものはそういうもんとして扱うから結構役立つ。あとは追っかけてなかったけど最近興味がある株が、過去に急沸、急落した場合のそれに対する掲示板の反応がどうだったかみたりとかするのに使ってます。

dynamic_cacheプラグイン

昨日は、負荷がかかったみたいで、サーバーが落ちてたようです。外からblosxomのエントリの編集ができないのも痛いんだけど、もっと痛いのは

davとかsubversionも使えなくなることだ

あーblosxomの負荷を軽くしなければ、というわけでLittleStoryからdynamic_cacheプラグインをダウンロードしてきて入れてみた。

RSSとかトップページにキャッシュが効いてくれるとやっぱ負荷も軽減されるんではなかろうかということで、abでベンチマークを取ってみた。

最初にキャッシュが利いてないとこんなに遅いです。

# ab -n 30 -c 3 /index.rss10 Requests per second: 0.32 [#/sec] (mean) Time per request: 9281.973 [ms] (mean) Time per request: 3093.991 [ms] (mean, across all concurrent requests) Transfer rate: 4.34 [Kbytes/sec] received

dynamic_cacheプラグインを導入すると結構速くなったので、結構満足します。がこれでも、ロボットに大暴れされるとツライよなぁ。

# ab -n 30 -c 3 /index.rss10 Requests per second: 0.93 [#/sec] (mean) Time per request: 3224.369 [ms] (mean) Time per request: 1074.790 [ms] (mean, across all concurrent requests) Transfer rate: 12.50 [Kbytes/sec] received

試しに、RSSを静的に出力してCGIじゃなくてアクセスすると格段に違います。CGIの起動の部分を何とかすればもっと速くなるのか?ってことでSpeedyCGIなんかもそそられます。

# ab -n 30 -c 3 /index.rss10 Requests per second: 223.46 [#/sec] (mean) Time per request: 13.425 [ms] (mean) Time per request: 4.475 [ms] (mean, across all concurrent requests) Transfer rate: 3128.40 [Kbytes/sec] received

ただし、うちだとファイルが存在する場合にはそっちを見にいくように.htaccessを書いているので、うまく静的なレンダリングを織り交ぜてやれば、負荷を下げられるのではなかろうか?

RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ blosxom.cgi/$1 [L,QSA]

試しに、dynamic_cacheのキャッシュ先を、blosxom.cgi/以下に重なるように設定して、キャッシュではなくて半静的なレンダリングをしてみたが、index.htmlがらみでちょっと不具合チックな部分があるようです。あとrecache=allでばっさりrmされたりとか。

なんで、rssなんかは静的レンダリングさせといて、他のは普通にdynamic_cacheに任せつつ、speedyCGIなんかを入れてCGIスクリプトを常駐させて実行するようにするのがいいような気もする。

一番いいのはやっぱCGIが必要ない部分はCGIを使わないことだろうからなぁ。

blosxomのデザインをいじってみた

色々やらなきゃいけないことがたまっていて、現実逃避したくなり、表題どおりデザインを変えてみました。配色とかどうすっかなぁと午前中悩んでいたんだが、CK2でカラースキームの話題に触れてたときに、記事保存してたヨナァということを思い出し、探したらありました。bloglinesの記事保存機能便利だわ。

というわけで、こんな感じの配色にすることにしました。

大体コレでイイやって気分にはなったんだけど、サイドバーのあたりがまだちょっと気に入らない。再度考える必要がありそうだ(サイドだけに)。

taggingプラグインにAjaxな検索フォームをつけた

というわけでAjaxですよ。javascript関連の本を読んだら、早速実践。一回はいじってみたいなと思っていたのだ。

まぁ、いろんなサイトの字面だけ眺めると、要するにXMLHttpRequestオブジェクトとDHTMLでしょなんてのは頭ではなんとなく理解した気になるんだが、実際にサンプルを自分で書いてみる要するにの重さが違う、っというかちゃんと理解した(Javascriptの本も読んだから、コードの内容もわかるし)。

というわけで、軽くウォーミングアップを終えたら、前から気になっていた、taggingプラグインにAjaxな絞込みフォームをつけます。

mizzy.orgさんのとこのソースを眺めて、xmlhttprequest.jsとblosxom2.jsのfindTag関数をパックンチョさせてもらいました。で、findTag関数のHTMLをGETするところでflav=tagという部分を見て

あー、僕はフレーバー切り替えるプラグイン入れてないからとりあえず削っておこ

#req.open('GET', path + '?flav=tag&find_tag=' + tag); req.open('GET', path + '?find_tag=' + tag);

とか考えて、修正して実行したらえらい事に、、、、

Ajax Error Capture

無限連鎖だ。コレはコレでおもろいが、失敗してふと気づいた。そういえば、確かblosxomそのものにフレーバーの切り替えあったような。

やっぱ、ありました

というわけで、tagのリストだけが表示されるように中身が空のフレーバーをいくつか作って解決。

そして、かなり満足気。仕事をやり遂げた気分。

  • ポイント
  • xmlhttprequest用のjavascriptと問い合わせ用の関数
  • divにid属性つけとく
  • listのみを返すフレーバーを作っておく

flav=でフレーバー切り替えてAjaxな仕組みを使うのはなかなか新鮮だった。というか面白いのでもちっと色々やってみたくなったヨ。

kwikiプラグイン

wikiwyg絡みでkwikiプラグインを入れてみようと。で、若干はまるというかすぐにおかしいじゃろっていうことに気づく。

クゥオートのとこと、メタの呼び出しのとこを修正してから、ググって見たら、結局、chromeGraphics::blosxom とまったく同じことをやっていた。

PubmedでRSS配信

やっとPubmedがRSS配信するようになったのね。

pubmed rss

というわけで、PubmedのRSSをbloglinesfeed on feedsでチェックすればよいんだけど、既読と未読の管理をしないと効率よく捌けないので、なにか作らないといけないな。

Catalyst使うときが近づいているのか?

なんて。

Bio::Biblio

PubMed ID から論文のリファレンスを作成して表示するプラグインが欲しいのでbioperlにいい感じのスクリプトが転がってないか調べていたのだが、どうもナサゲ。というより、実はちゃんとみたのが初めてだが、EBIとbless多め、サンプルスクリプト少な目な感じです(biblio関連だけ?)。

半日ぐらい費やして眺めていたらBio::Biblio*あたりはなんとなくわかったが、フェッチするとopenBQSに行ってしまう。-accessでNCBIに変えられるみたいだがイマイチいいサンプルがない。

bioperlに頼らずEutilsのRESTとXML-Parserでゴリゴリやったほうが早かったが、ワンライナーは便利だ。

$ perl -MBio::Biblio -e 'print new Bio::Biblio->get_by_id ("15931766")'

というわけで、週末にでもblosxom用のpubmedリファレンス用のプラグインを作ります。

pubmedプラグイン

blosxomでpubmedの文献リストをってことで、

<pubmed> 12368254 15949046 15942029 </pubmed>

みたいに書くとpubmedからタイトルとかとってきて表示してくれるプラグインを作ってみた。

12368254 15949046 15942029

結局NCBIのEutilsを使ってリストを作ってそれをキャッシュするようにした。後は、NCBIの文献情報にリンク張ったり、表示のおかしいとこなおしたりせねばならんが、、、、、

最近眠い。

bioperlでproxy

こんな感じに設定する。環境変数設定しとけばいいみたいな気もしたし、そういう記述も多かったので、ちょっとはまった。

use Bio::DB::GenBank; $gb = new Bio::DB::GenBank; $gb->proxy(['http'],'http://proxy:port');

HOT! HOT! - CO-FUSION

今週のiTMSのフリーダウンロードはHOT! HOT!なので早速落として聴いてます。こういったベタな曲も好きだ。まぁ、なんつーかわかりやすい。

で、ジョンつながりというか、強引にもっていきますが、朝霧にSURGEONきやがりますな。 強がってイカネーヨとか言ってはみたもののちょっと後悔したかも。でも追加駐車券が本栖湖はナイだろうに。

SURGEONだけだったら強がってられたけど、smith & Mightyと琉球ディスコもくるもんなぁ。

まぁ、みんな楽しんできてくださいってことで。でも最近結構寒くナってきてるヨ。