Irvineでダウンロードが早すぎてNGとなる

Irvineで複数ファイルをダウンロードしていると、ダウンロードが早すぎてその後のダウンロードを拒否されるケースがある。
普通だとダウンロードの間隔を指定したいところだが、Irvineにはその機能がない。
(1)ひとつにはshで、

wget –wait=4 xxxURL/photo/3/251533/251533-25843-8-75614.jpg; sleep 10;

のようなshellを書いてダウンロードさせるのがひとつ。でもこれで拒否されることもある。
(2)実はダミーで dummy1M.jpg
のようなファイルを作り、交代でダウンロードさせる。これは %home/dummy/300k/[001-999].jpgのようなファイル群を作るとよいと思う。全部シンボリックリンク貼っておけば、分量も問題ないだろう。1k, 100k, 300k, 500k, 1M, 10M ぐらいをサンプルで作った。
(3)結局無難なのは、ダウンロード速度を制限することだろう。default100kとなっていたが、これを10kにするとゆっくりではあるが着実にダウンロードしていってくれる


Amazon EC2を使う

同じくAmazon EC2を使ってみることにする。この目的としては、もし短期間にアクセスが集中するようなコンテンツを提示せねばならないようなときの準備をしておくためである。それから、たとえば週末のみにオープンさせるようなテンポラリなサーバがあってもよいだろう、との考え方による。

基本はAmazonのサイトの記述による。
0.まずアカウントやKey Pairを用意しておく。
1.Amazon EC2 コンソールダッシュボードの Launch Instanceでインスタンスを起動させる(これまで0であることを確認する)。
2.Create a New Instance ページがでるので、オプションを選ぶ。ここではClassic wizardを選んだ。
3.使用したいOSを選ぶ。
4.Security Groupを選んで、セキュリティオプションを選ぶ。quicklaunch-xは以前quickstartを選んだ時のテンプレート、defaultはデフォルトのようだ。セキュリティとは、外部からどのポート・プロトコルを許すかのセットを選択する。デフォルトは22のSSHのみだが、80のHTTPも入れてWebサーバになるようにする。(ひょっとしてこれはLauch後に設定したかもしれない)
5.設定確認後 LAUNCHする
6.Navigation ペインの Instances をクリックすると、稼働中のインスタンスが表示される。緑色のマークになっていたら、稼働中。
+ここでSecurity Groupを選んでHTTP 80ポートを追加
7.このインスタンスを右クリックしてConnectを選ぶと、組み込まれたJavaのコンソールが開く
8.ログインネームに注意!Amazon Linuxだとec2-user.Ubuntuだとubuntu. 他のAMIの例だとrootのケースがあるらしい。パスワードは公開鍵で自分のPCに書き込まれたファイルを指定する。
 (自分の場合はC:\AWS\ec2service と極力簡単にした)
9.これでLAUNCH SSH CLIENTを押すと、仮想サーバの画面が出てくる。

以下もしもapacheを立ち上げる際の手続き
10. sudo yum -y install httpd
11. /etc/rc.d/init.d/httpd start
12. ブラウザでapacheのデフォルト画面がでているかチェックする(これはうまく行かなかった)。
13. コンテンツは/var/www/html/ 配下に入るので、ここにindex.htmlを入れる 
sudo でviが必要かもしれない
  
    
    
     Hello world!
    
    
    

Hello World!!

    
    
  ぐらいで十分
14. 再度ブラウザでチェック。
15. ftpでコンテンツが入れられるようにする。

終わる際には、
16. コンソール動作中のインスタンスのStateを右クリックして、Instance LifecycleをTerminateにする。
17. 確認が来るのでYesを選択する。State がShutting downを経てterminateとなる。
18. EC2 Dashboardを確認し、自分のグループでRunnning Instancesが0であることを確認して終了する。


Amazon S3を使い始めた

クラウドをもっと暮らしに利用しよう、という言葉を標榜したくなり、手始めにまずAmazon S3の利用から始めようと思った。もちろんStorageはDropboxやMicrosoft SkyDriveがあって使いやすく人気もあるわけだが、もう少し素なサービスで自分が管理するようなサービスをやってみたいと思い、S3をそのまま利用してみることにした。

management consoleにSign inして、そこからS3のメニューを選ぶ。まずBucketをCREATEする。それからCREATE Folderで、Bucket配下にフォルダを作成する。
このとき、どこのエリアに作成するか聞いてくるので選ぶ。注:小文字しか許されないようだ。
これからアップロードを開始する。単一ファイルなら簡単だが、フォルダ全部を入れる場合には、βで、Enable Enhanced Uploader (BETA)があるのでそれを選ぶ。JAVAがインストールされるのが条件。+ダウンロードに2分ほどかかるようだ(失敗することもあった)。

これでuploadを選び、開始させると転送が開始される。何かクラウドだととても早く転送されるイメージがあるが、そんなわけではない。TCPのウィンドウのせいか、転送速度はどんどんと変化する。光アクセスでもせいぜい数百kbyte/sec – 数十kbyte/secの転送速度だ。N-americaとTokyoを比べてみたが、心なしかTokyoの方が早いような印象があった。


Thunderbirdのインデックスを削除

先の方法でもいまいち高速化できなかったので、この際、インデックスを削除してみた。Thunderbirdを停止してから
Windows 7で
%home\Appdata\Roaming\Thunderbird\Profiles\xxx.default\
フォルダの中の
global-messages-db.sqlite
を削除してみる。ファイルサイズが大きいと動作が遅くなるらしい。自分の場合、130Mほどあった。消去しても再構成されるのだが、
自分の場合、56M程度に収まっている。


Thunderbirdが重くなった

このしばらくThunderbirdがとても重くなってきた。調べてみるとインデックスデータが膨らむのが原因の一つと書いている。golden-monkeyさんのサイトを参考にしてDBの最適化を実施してみた。
・アドオンでSQLite managerをインストール
・「ツール」よりSQLite manager起動
・フォルダを選択し、そこから
 %User%Appdata\Roaming\Thunderbird\Profiles\XXXX.default\ をアクセスし(Windows 7の場合)
 places.sqlite を選択

あとは、

「SQL実行」タブを選択
「SQLを入力」に「vacuum」と入力
「SQLを実行」をクリック

でOK.

みかけのファイルサイズは変わっていませんが、実際これでThunderbirdを再起動すると、確かにアクセスがスムースになった。


Thunderbirdの受信メール内容を修正

いやメールを受け取ったのだが、本当に何らかのやんごとなき事情により、メール本文をやむなくちょっと修正して保存しておきたいことがある。Thunderbirdでは次のようにするとよい。
1)Thunderbirdを終了する
2)%User\AppData\Roaming\Thunderbird\Profiles\xxxxx.default\Mail\Local Folders\(対象フォルダ).sdb に移る。Windows 7だとライブラリに移しておくとよい。
3)配下の対象フォルダをeditorで開く
4)必要な文言を修正する。 引用のための”>”などは、文頭において整合をとる。対象フォルダ中のすべてのメールが参照されるので、小さくしておくのがコツ。
5)Thunderbirdを起動する。対象フォルダを開けてみると、文言は修正されています。
これをプリントアウトするなり、転送すればOKです。お疲れさま。


RSR to PNG converter

POSERを使っていて、せっかく新規購入したアイテムのアイコンが出てこなくて幻滅していたことがあった。調べるとあるアイテムは画像が.rsrで作成されており、poser8以降はサポートされていないようだった。それで ここを参照して、コンバータをダウンロードしたら、きれいに出てくるようになった。


Arduinoをswfからコントロール

ArduinoをFlash(swf)からコントロールしてみた。

”Flashから使う”がすごく参考になった

1.FlashDevelopで作成する。
2.上記サイトにあるように、シリアルポートのみ注意してテンプレートを調整する。
3.画像を読み込みたい際には、SWFが吐き出される場所と同じところに画像を配置する
 (下記サンプルでは、test.jpg)
4.SWFのサイズや高さも調節できる(SWF[…を参照)

作ったのはこの程度のサンプル。これをFlashDevelopでテストしてビルドすると良い。

package {
import flash.display.Loader;
import flash.display.Sprite;
import flash.events.TimerEvent;
import flash.net.URLRequest;
import flash.utils.Timer;
import net.eriksjodin.arduino.Arduino;

[SWF(width="500", height="500", backgroundColor="0xFFCC00")]

public class Main extends Sprite {
private var arduino:Arduino;
private var pin:int;
private var timerEvent:Timer;

public function Main() {
timerEvent = new Timer(100);
timerEvent.addEventListener(TimerEvent.TIMER, onTick);
timerEvent.start();
//Insert Picture
var img1:Loader = new Loader();
var theUrl:URLRequest = new URLRequest("test.jpg");
img1.load(theUrl);
img1.x = 0;
img1.y = 0;
addChild(img1);

pin = 13;
arduino = new Arduino("127.0.0.1", 5334);
arduino.setPinMode(pin, Arduino.OUTPUT);
arduino.writeDigitalPin(pin, Arduino.LOW);
}

public function onTick(event:TimerEvent):void {
if ((timerEvent.currentCount % 3) != 0) {
arduino.writeDigitalPin(pin, Arduino.HIGH);
} else {
arduino.writeDigitalPin(pin, Arduino.LOW);
}
if (timerEvent.currentCount > 30 ) {
arduino.writeDigitalPin(pin, Arduino.LOW);
timerEvent.stop();
}
}
}
}

動かし方。

1.PCでArduinoを起動。StandardFirmataを選んで読み込む(自分の場合はUNOだったのでUNOを読み込んだ)。
2.PCでSerproxy.exeを起動
3.上記のSWFをたたいて起動。


poser V4 WM用服コンバート

基本的に、
http://www.renderosity.com/mod/forumpro/showthread.php?thread_id=2843403
に記述してある通りに実施したらうまくいった。
2015注)やる前にEdit/General Preference/Misc. でUser external binary morth targets をOFFにしておくこと

(1)WM4 figureをロードする
(2)Pythonスクリプトを実施(POSER12の/Runtime/Python/poserScripts/ScriptsMenu/PoserPlace/Wight_Pose_Applicator5h.py)
パラメータ
a)Figure to have weights injected(.cr2 path)
V4WMに着せる服の.cr2をフルパスを入れる。(pz2のケースもあるかも知れない)
 b)Wight injection pase(.pz2 path)
V4vmについてきたWeight poseを入れる
  /Runtime/Libraries/Pose/(格納場所のフォルダ、自分は!V4/!V4VM)/Victoria4.2_weight_pose.pz2
c)Optional pose containing new actors(.pz2 path)
V4VMについてきたHelper Bonesファイルを指定(.pz2)
/Runtime/Libraties/Pose/(格納場所のフォルダ、自分は!V4/!V4VM)/V4WM_helper_bones.pz2
(3)服をV4WMにComformingさせる
(4)ジョイントゾーンをフィギュアからコピー(重要!)
  Figure->Copy Joint Zone from で Victoria4-WMを指定する
(5)できあがった服をライブラリにSAVE
 


CoreserverへGitをインストール

CoreserverにGitをインストールしてみた。
ここを参考にしました。
はじめにソースをここ↓からとってくる。(現在の最新は1.7.11)
http://git-scm.com/

$ tar xvzf [tar.gzファイル名]
$ cd [解凍してできたディレクトリ名]
$ autoconf (./configure.ac しかなかったのでautoconfしてみたら./configureできた)
$ ./configure –prefix=$HOME/local
$ make
$ make install

であとはここ
通りにGit動作を確認すればOK。Viが最後立ち上がるようなので、終わらせるために
コマンドモード(Escを押した後)で「:q」と入力して「Enter」を忘れないよう。