10万円以内で揃える amazon fire tvとその周辺で良かった組み合わせ
4k環境は機器の相性がいろいろあるみたいなので鉄板の組み合わせをまとめてみました
FIRETV本体
4kモニタ
リクライニングチェア
FireTVに合体させる学習リモコン
サブウーファー付きサウンドバー
光デジタル分離器
日本のamazon.co.jpでお買い物
周辺機器はアメリカのamazon.comからお買い物がオススメ送料込みでも断然comからのほうが安い
学習リモコン Sideclick-Remotes-SC2-FT16K-Universal-Attachment
スピーカー AmazonBasics-Channel-Bluetooth-Built-Subwoofer
HDMI光デジタル分離 Avantree-Extractor-Splitter-Converter-Optical
4kディスプレイとスピーカーはsideclickで学習させられるのでまとめてコントロール可能です
音声分離機器は相性があるのでサポートしていると明記してあるAvantreeのやつがおすすめです
PS.
amazonのウーファー付きサウンドバーはお手軽で日本人向けなので日本でも購入できるようになるといいな。
以下の切替器はfiretvをいちいち再起動しないとTVが点滅して認識しないのでオススメしない
HDMI2.0、HDCP2.2対応でもうまく対応できない機器があるのでこの辺が相性がでる。
keianのモニタはモニタアームで癖があるのでアームに取り付けるなら以下のものをチョイス
fire tvはプライムに入会するのがオススメ
nodejsをプロジェクトで適用してメンバーに使わせてみた話
node.jsを1からプロジェクトメンバーに教えてみて思ったことを書いていきます
チームのメンバーはC++使える新卒4人とPHPを扱う中堅3人といった構成です。
それぞれ知識のバックエンドが違うのでそれぞれ教える方法も変えました。
■JavaScriptについて
自分の認識ではPHPを使ってる人たちはJavaScript(jQuery)もある程度使えるという認識だったのですが
その考えは間違っていたようで文法から教えました。(マークアップとサーバで分業していたようです)
文法だけみるとPHPとJavaScriptは一対一で対応する関数が多いので対応表を用意しておいたのでそれほど大変ではなかったです。
クラスについてはクラスラッパを使って擬似的に対応させました。
■PHPでは当たり前にやっていたノウハウを忘れさせる
apacheを使うところにこだわるので忘れさせる
■イベントドリブン
ブラウザ側のJavaScriptや他のGUIライブラリを触ったことがあればよかったのですが
ないようなので概念から教えました。
■非同期処理
非同期でのDBのトランザクションではパイプライン処理の概念を教えました。
asyncなどのフロー制御で非同期処理ごとに関数を分けることで対処するようにしました
やりかたをレールをしいてしっかり教えないとここで躓きます
■データをメモリに保持させる
PHPではデータを保持するときは選択肢がなくてシェアードメモリ、memcached、mysqlなど言語で扱うメモリの外に確保するしかないのですが
nodejsではデータをメモリ中に確保し続けられるのでデータにアクセスするコストが圧倒的に低いことを教えました
新卒のゲームプログラマー
■JavaScriptについて
JavaScriptは触ったことがないようでしたがオブジェクト指向はかなりしっかりしてました
関数型について知識がなかったようなのでそのあたりを教えました
・クロージャ
・高階関数
・ラムダ
gcに慣れてないと普段アンマネージドなコード書いてるからか混乱する場合もありました。
■イベントドリブン
ゲームプログラマはリアルタイム処理をやっているので簡単に覚えられるのではないかと思ってました。
サーバーのプログラムはゲームのプログラムに似ているところを伝えて、相違点を覚えてもらう方式で教えました。
メインループがありタスクシステムがあり、ゲームではすべての処理を16msで処理を終わらせれば良いのを
サーバーでは例えば1000人同時にアクセスさせる(一秒間に一回リクエスト)なら1ms以内に返せないとならない。
■非同期処理
非同期についてはゲームでは普通に行なっているので特に教えることはなかったです(Nowローディング画面などでやってるから)
■データをメモリに保持させる
普通にやってるので教える必要がありませんでした
■その他
ネットワークについてはIPとポートの概念をさらっと教えただけで適当に流しました。
データベースに馴染みがないのでSQLのクエリーやトランザクションについて重点的に教えました
教えてみた感想
nodejsはゲームプログラマ向きだと思いました
必要なスキルがかぶってます
早い人は一週間くらいで使いこなせるようになるし、一番最初の導入の敷居が低いから
自宅とかで勉強したりしやすいのだと思います。
node.jsとか求人出しても経験者はほとんどいないわけですし、本格的に普及させるには既存の人材に教えていくことも考えないといけない時期なのかなとおもい書いてみました。
node.jsのセキュリティ
nodeの脆弱性について
http://www.ustream.tv/recorded/40193490
node学園のLTでコレをみて思い出したのだけれどHTTPの脆弱性を直してもバックエンドが遅い場合
nodeの場合いくらでもリクエストを受けてしまってバックエンドのリクエストをキューにためてしまう場合に結局メモリ不足で落ちてしまう
それに対する一つの解として以前qiitaに記事を書いた↓
一つのセッションあたりの秒間リクエスト数がキャパシティプランニングから導き出せていれば秒間あたりのリクエスト数を絞ることで回避できるかなと。
東京node学園祭2013行ってきました
東京node学園祭2013行ってきました
■基調講演
印象に残ったのは
・strongloopのように優秀なモジュールを組み合わせた環境を用意したりするのもkernelとdebianみたいな関係でnodeコミュニティとしては問題ないと。
・小さなコアを維持する
・モジュール機構は完成している
・stream2は後方互換性を維持
・node.jsは後方互換性を重視する
特に後方互換性を重視する姿勢はプロダクションレベルのソフトをつくる基準にたっしているとおもう。
■Grunt, yeoman, bower
YOおじさんがテンプレートから自動生成して開発を助けてくれますよという話で
generator-generatorつかえば自動生成機能も簡単に作れますよという感じでした
gruntやbowerはそこそこ使われてるけどyeomanはまだあまり使われてないみたい。
自分はyeoman使ってないけれどrailsみたいなイメージでした
■JSXネタ
前半は@kazuhoさんの話でした
DeNAでたくさん使われているかといえばそうではなくて新規プロジェクトで条件が合えば使うみたいな感じでした。
後半は@wasabizさんの話でした
コンパイラを担当されているようで今後C#のasync-waitの構文をいれてみるとかそういう話をしてました
JSの問題点である、オブジェクト指向言語、最適化、コールバック地獄の解決をやっているようで
JSX使ったゲームフレームワークとかも公開してくれると使いやすいかもなぁとおもったりしたのですがその辺どうなんだろうなぁ
普及するかしないかはフレームワークがあるかどうかにかかってるとおもうし。
(ノウハウは金になるから公開しないだろうなぁとおもいつつ。)
アフィン変換で行列をあつかっているスライドがあったけど、JSで行列の速度まともにでるならつかってみたいかなと。
この辺、自分で実装してテストしたのだけど普通に実装するとメソッド呼び出しでかなり時間が取られることがわかってるのでインライン展開使いたいなぁ。。。
■ES6で変わるNode.jsプログラミング
プリミティブな型の整理が言語として行われているという話でした
・generatorとpromise
・クラス
・イミュータブルな値
・変数スコープのブロック化
・引数や配列など基本的なところ
JSの構文がついに整理された感じです
■ロボットの外部脳としてのnode.js
Bluetoothによるシリアル通信でセンサーからのデータをうけとりnode.jsで制御するという話だった。
・組み込みは通常コンパイルしてROM焼き込みという手順をするのだがjavascriptでは手直しして再起動という手順ができるので楽。
・フィジカルとネットワーク(スマートフォンなど)のつなぎ込みはお金の匂いがします。
(実際センサーからのデータ使ってzabbixやfluentdと組み合わせたりスマートフォンでモニタリングしたりいろいろできそう)
■総括
nodeはフレームワークとか使い道とか多様性(WEBに限らない)が出てきていて
一つのプラットフォームになりつつあるなぁという感じです
■以下資料
録画
http://www.youtube.com/playlist?list=PLuLCOB9HcrT0ZeWiyddLVNR93QdGmtW57
基調講演
Grunt, yeoman, bower
https://speakerdeck.com/yosuke_furukawa/yeoman-grunt-bower
Rendr入門
http://www.slideshare.net/mshk/rendr
JSXネタ
http://www.slideshare.net/kazuho/jsx-oct-26-2013
http://www.slideshare.net/yuichinishiwaki/jsx-generatorimpl
Node.jsを選ぶとき,選ばないとき
http://www.slideshare.net/tricknotes/nodejs-27589695
WebRTCを始めよう
http://www.slideshare.net/mganeko/2013-web-rtcnode
#台風の開催ポリシーがしっかりしてたのでとても良いと思いました
運営サンGJ
懇親会のピザパーティもアドリブだったのによかったです
VMWARE ESXi 5.5 その1
VMWARE ESXi 5.5 が公開されていたので試してみた。
構成は前の記事参照のこと
とりあえず確認することは5.0、5.1ではパッチが当たるたびに使えたり使えなくなったり迷走していたUSB3のPCIパススルー関連から。
結論から言うとまったく問題なくなっていた。
再起動するとUSBだけPCIパススルーのチェックが外れる不具合もなおってる。
GPUのパススルーもすこし試したぶんには特に問題はない。
vSphere Clientのインストール時にwindows xpだとインストール時に警告画面が出た。
(XPでは接続できないかもしれない。)
特に問題なく使えるが、vSphere Clientを使っている限り新機能がまったく使えない。
新機能を使うにはweb clientをインストールしなければならないがvCenterの機能のため無料のライセンスで使えるのか試したことがないのでよくわからない。
ネットワークカードでintel82579lmのドライバはまだ同梱されていなかった
他についてはまた次回へ。
#追記
フリーのライセンスで登録した情報
メモリ制限がなくなっている
#追記2
蟹チップの入ったマシンにインストールしようとしたら認識されなくなっている模様
http://www.tinkertry.com/install-esxi-5-5-with-realtek-8111-or-8168-nic/
GPUとUSB3のPCIパススルーができるESXiのバージョンはどれ?
簡単になったGPUパススルー
富士通のFMVじゃなくてprimergy tx100 s3pという安鯖をいまさら買ってみた。
メモリはなんか3月に比べて倍近くになってるようで円安に加えかなり供給を絞ってるから急な値上がりになってる模様。
買う時期が悪いように見えるがそれでも安いと思える安鯖。
primergy tx100 s3p:ヤフオクで6000円(送料込み)
Xeon e3-1230v2(4core8thread):アマゾンで23500円
ECC DDR3 8GB*2=16GB:アマゾンで18500円
pci1:radeon 6570ファンレス
pci2:usb3
pci3:空き
pci4:pt3
OS:VMWARE ESXi5.1
ちなみにヤフオクだと4core*2のハイパースレッド16コア機がたまに3万で出てる。
この安鯖構成のなにがいいかというとGPUパススルー(VGAパススルー)がとても簡単であること。
ハイパーバイザー用のグラボをささなくてもよいことがあげられる。(オンボードがある)
ESXi使いにはやさしいNICが2つあること。
NIC二枚あるといろんなネットワークの実験がやりやすい。
そしてAMD機についてたハードディスク付け替えただけで再インストール無しで環境移行がすんだこと。(esxiすら再インストールいらず)
当然esxi上で動いてたVMもそのまま動く。
簡単すぎて泣けてくる。
GPUパススルーのなにが大変だったかというと
以前の環境ではパススルーしてもドライバ入れたりするとBSOD
パススルーできたと思ってもGPU使う処理(dxvaなど)すると画面が乱れたり崩れたり。
kvmとかだとkernelに渡すbootパラメータ調整とかすれば直ったりしたけど
esxiでは対処の仕様がなかった。
USBのパススルーにまだ少し問題があるとはいえその辺乗りこえれば普通に使えるレベルに達したのがよい
#部材選定に当たって以下のWIKIがとても参考になりました
http://wiki.nothing.sh/page/%C9%D9%BB%CE%C4%CC%20PRIMERGY%20TX100%20S3p
#GPUパススルー上で問題なく使えたアプリ
League of Legends
MPC-HC(dxva)
#アイドル時の消費電力
120w が 50wへ。(グラボささなければもう少し減る)
#サウンド
以前はUSBサウンドを使用してたけど今はhdmiからspdifをとってる。USBと違って音飛びしない
http://item.rakuten.co.jp/donya/84480/
#ESXiの個人的なTIPS集
https://gist.github.com/you21979/6098759
Intel CPU Xeon quad core 3.3GHz 8MBキャッシュ LGA1155 BX80637E31230V2 【BOX】
- 出版社/メーカー: インテル
- 発売日: 2012/08/29
- メディア: Personal Computers
- この商品を含むブログを見る
- 出版社/メーカー: サンマックス・テクノロジーズ
- メディア: エレクトロニクス
- この商品を含むブログを見る
富士通 PRIMERGY TX100 S3 OSレスタイプ PYT10PZD2X
- 出版社/メーカー: 富士通
- メディア: エレクトロニクス
- この商品を含むブログを見る