AWS micro instance に JIRAをのせてみた
きっかけ
- JIRAが好き
- JIRAをプライベートのタスク管理でもつかいたい
- 依存関係とか管理できて樂
- スマホアプリもあるので、実用性ありそう
- 契約中の、さくらインターネットスタンダードは、Java使えない
結論
- 実用に耐えない
- レスポンス遅すぎ。ページ開くのに、30sかかる
- いろいろチューニングしてみたけど、だめ
- 多分メモリ
- レスポンス遅すぎ。ページ開くのに、30sかかる
$ free total used free shared buffers cached Mem: 1020140 955752 64388 0 1796 13000 -/+ buffers/cache: 940956 79184 Swap: 0 0 0
top - 09:41:36 up 2:52, 4 users, load average: 0.01, 0.02, 0.05 Tasks: 75 total, 1 running, 74 sleeping, 0 stopped, 0 zombie Cpu(s): 0.0%us, 0.0%sy, 0.0%ni,100.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st Mem: 1020140k total, 948276k used, 71864k free, 552k buffers Swap: 0k total, 0k used, 0k free, 9764k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 2214 jira1 20 0 3097m 854m 0 S 0.3 85.8 4:48.10 java
Detecting JVM PermGen support... PermGen switch is supported. Setting to 512m If you encounter issues starting or stopping JIRA, please see the Troubleshooting guide at http://confluence.atlassian.com/display/JIRA/Installation+Troubleshooting+Guide Server startup logs are located in /opt/atlassian/jira/logs/catalina.out Using CATALINA_BASE: /opt/atlassian/jira Using CATALINA_HOME: /opt/atlassian/jira Using CATALINA_TMPDIR: /opt/atlassian/jira/temp Using JRE_HOME: /opt/atlassian/jira/jre/ Using CLASSPATH: /opt/atlassian/jira/bin/bootstrap.jar:/opt/atlassian/jira/bin/tomcat-juli.jar Using CATALINA_PID: /opt/atlassian/jira/work/catalina.pid Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=512m; support was removed in 8.0 Java HotSpot(TM) 64-Bit Server VM warning: INFO: os::commit_memory(0x00000000d0000000, 134217728, 0) failed; error='Cannot allocate memory' (errno=12) # # There is insufficient memory for the Java Runtime Environment to continue. # Native memory allocation (mmap) failed to map 134217728 bytes for committing reserved memory. # An error report file with more information is saved as: # /tmp/hs_err_pid3313.log The stop command failed. Attempt
示唆
- JIRAつかいたいなら、メモリ2GBは必要っぽい
- micro インスタンスのような、バースト系で高いパフォーマンスを保つには、CPU使用にlimitかけてつかうのがよさそう
- 仮想環境特有の、steal
- インスタンスの起動は時間かかる上に、インスタンスのステータスチェックで原因不明で時々こけるのがめんどい
- システムログが空っぽになる。原因不明。カーネルいっちゃった?
- ってか、メモリが問題なら、DBを別マシンにしてすればマシか・・・
ぶつかったこと
- ダウンロードしたjiraのbinが展開できず
- ポート指定でアクセスするも、jiraのトップページ出ず。
- jiraの初期セットアップ、こける
- CPUが低速モードに入ったため
- タイムアウト
- 続きやろうとするにも、jira locked
- 遅い・・・タスクのページ開くのに、30sかかる・・・
openFrameworksでユニットテスト
きっかけ
過去に書いたカオスなopenFrameworksのコード
覚悟を決めて向き合おう、メンテしようと思い立ち、
とりあえずunit test入れるところから始めることにした。
やったこと
CppUnit, googletest, Boost.Test等様々なフレームワークがあるが、
そのなかでも、ヘッダオンリーでつかえるお手軽簡単なCatchをいれてみることにした。
作業メモ
- Catchのダウンロード
- libraryのpathが通ってるところに配置
- /usr/local/includeなど
- テストを追加したいXcodeのプロジェクトを開き、File / New / Target / OS X / Application / Command Line Tool
- 名前を適当に。Test[ProjectName]とかにしておく
- サンプル配備
- 各ファイル、TargetMembershipを適切に設定
- test ファイル(Test[ProjectName]/*:Test[ProjectName]のみチェック
- testしたいファイル(src/*):Test[ProjectName] & ProjectNameにチェック
- (★ハマりポイント) bin/[ProjectName].app/Contents/MacOS/libfmodex.dylibを、bin/にコピー
とりあえず動くはず
あとはコツコツリファクタ
openFrameworksで、 visualizerをつくってみた 2
[openFrameworks] visualizer をつくってみた 2 - YouTube
・外部の音を拾って、映像を切り替えたり、動かしたりするソフトです。
・映像素材は、openFrameworksで書きました。
・使ったaddonは、ofxPostProcessingです。手軽にエフェクト使えて、おすすめです。
・映像では全くわかりませんが、オーディオインターフェース経由で、楽器別の入力に応じてオブジェクトを動かすように実装してます。機会があれば撮影して、upします。
openFrameworksで、 audio FFT visualizer
[openframeworks,FFT] audio Visualizer - YouTube
やったことは、
・低、中、高音域別に、音の大きさを取得
・音域別に、音の大きさに反応するオブジェクトを作成
・音域別に、閾値を超えた時の処理を作成
キックとスネアに応じて動く気持ちよさを、目指していきたいです。
ノイズのバリエーションも欲しい。。。
Oculus Rift で、Visualizerをつくってみた
[OculusRift] visualizerをつくってみた - YouTube
ofxOculusRiftを、自分のプロジェクトに突っ込むも、コンパイルが通らない・・・
そんなときに、こちらのサイトが大変参考になりました。
HR2_blog: ofxOculusRift をemptyExample に入れる場合のメモ
つくったものに関しては、Oculus Riftを通してみないと、よくわからない気もする。
わるあがきで、Oculus Riftを装着した頭の動きをのせてみました。
つくり方に関しては、とりあえず球に対し、音との色々な連動の仕方を試して、色塗ってライトあてただけです。
シェーダーを本格的に勉強しなきゃいけないと感じる、今日このごろ・・・
Kinectで、Visualizerを作ってみた [kinect, openFrameworks]
Kinectでvisualizerをつくってみた [openFrameworks, kinect] - YouTube
[使ったもの]
・kinect
- hand tracking
・openFrameworks
- tracking情報とオブジェクトの衝突判定、audio情報とオブジェクトとの結合、描画など
・iMac
・iTunes
・Final Cut Pro
など
[所感]
・生成した光を光源として、後ろにある建物を照らすとかやりたい・・・シェーダーと向き合う時がきたようだ
・光を生み出す契機について、色々試したが、hand trackingがシンプルだし、精度高いので採用
- kinectの深度センサーで、特定の距離以内&特定の色を持った情報をフックにする(蛍光の緑とか)
→参加が手軽じゃない
- openCV&背景分離法
→精度低い。というか、ある程度広くて物がない場所じゃないと難しい。自分の部屋では上手く行かず
- kinectが検知できると言われている、手のClickジェスチャー(前に押し出す動作)
→Listenerに登録して拾うも、RaiseHandしか拾ってくれず・・・
・ofxOpenNIに相当手こずる
- サンプルが動かない!
→プロジェクトをコピーしないと、addon内から軌道できる構成になっていない
- readme通りにしたけど、やっぱり、サンプルが動かない! (https://github.com/gameoverhack/ofxOpenNI)
→libのpathが、どこからかわからないが bin/dataではなく、bindataとして参照され、linker command failedが出る。
→しかたなく、bindata/libを作成し、しのぐことに・・・
[今後]
・シェーダーかプロジェクションマッピングか、Max/MSP