くまりゅう日記

もっと過去の日記
[.NET | BeOS | Blender | COLLADA | fossil | mono | monotone | NPR | OpenGL | PeerCastStation | Riko | Ruby | Silverlight | TRPG | XNA | ゲーム | ゲーム作り | ]

2020-01-23

日記

何もやっていない……?

いやほんと何もやってないな。ピアキャス見てるだけで時間が過ぎていった。

あとぼちぼちプラモ作ったり。 といってもそんなに新しいの作ってるわけじゃなくてスミ入れしてみたりデカール貼ってみたりしてる程度だけど。

イベントサイトのDBをDynamoDBに移行しないとといいつつ全然できてなかったのをなんとか進めた。 一通り動くようにはなった気がするので、あとは既存のデータをマイグレートして動けば適用できそう。 ただコードはしっちゃかめっちゃかなのでそのうちなんとかしたい。

まあいつもそのうちと思ってるだけで時間が過ぎ去ってしまうんだが。 あと1ヶ月しかないので告知とかもちゃんとやっていかないとなあ。


2020-01-06

日記

年末年始の休みが終わってしまった。

28日から休みだったんだが、28日は何してたっけかな……あ、プラモ作ってた。 29日は夕方から飲み会だったので、その前に本買いに行ったくらい。 30日は軽く(ほんと軽く)掃除して午後の新幹線で帰省した。これが去年。

帰省先でだらだらしてて、4日の夜中に帰ってきた。 5日はプラモと工具が欲しかったのでうろうろしてた。 秋葉原とか混んでそうで嫌だなあと思ったんだが、むしろ空いてるくらいだった。 もちろん人は多いがいつもよりだいぶ少なめだ。 帰りに電車乗ったら架線に凧がひっかかってるのでしばらく運転停止してますとかなってて正月を感じた。

で、今日は仕事始めです。まだだらけてるので普段の生活に早く戻らんとなあ。

[PeerCastStation] RPC

PeerCastStationの本体とUIを切り離したいなあとずっと思ってて、RPCなんとかできねえかなと調べたりしてた。

ASP.NET Coreでは今後gRPCを猛プッシュみたいな話だったので調べてみたんだけど、HTTP2が前提になっているようなのでPeerCastStationでのホストはむずかしそうだ。

Apache Thriftは.NET Standardベースの実装が追加されてた。まあ悪くないけど、NuGetで入れると使わない依存関係までいろいろひろってくるな。

今HTML UIからの操作はJSON-RPCてのを使ってるが、これはほんとシンプルな取り決めしかないものなので、今時はOpenAPIとかSwaggerとか使った方がいいんだろうか? てかJSON-RPCでSwaggerみたいなのあればそれでいいんじゃねえかな……。

と、調べてたところOpenRPCというそのものズバリなものが見つかった。ふーん、じゃあこれ試してみるか。

で帰省中になんとかOpenRPCのスキーマというかインターフェース定義的なものを生成できるようにしてみた。 最初はインターフェース定義からサーバー側(C#)のコードを生成しようと考えたが、OpenRPCのツールはC#のコード生成には今のところ対応してないしここから自分で作るのはめんどいなー。 しかし、よく考えたら今はC#のクラスからリフレクションでJSON-RPCしてるので、それと同じ方法で逆にサーバーの実装からインターフェース定義を生成すりゃいいのであった。やった。できた。

あとドキュメントとJavaScriptのクライアントくらい生成できればいいけど、そこまで生成するには情報が足りないな。 戻り値とかが手動でJSON組みたててやってるんだが、これもクラスにしてシリアライズ/デシリアライズするようにした方がドキュメントにもう少し詳しくできそう。

結構大規模に変わっちゃうけどやった方がいいかな……。


2019-12-26

日記

加湿器、使って一週間くらいで結構カルキ的なのが付いてるんですけど大丈夫なんですかねこれ。 1ヶ月毎くらいにお手入れしろって書いてあったんでいいんかな。

最近またプラモを作り始めた。

ちょっと前から最近のSDガンダムはかっけーなと思い、CSのザクとかBB戦士のHi-νとかを作ってみてた。安いし。 どちらも出来は良いんだが、BB戦士のHi-νはほんとすごくて感動した。これでも2013年発売だと。 CSのザクも悪くはないんだが、CSシリーズの売り方がひどすぎて他のも買おうという気が起きねえのが残念だ。 本体の他にCSフレームとシルエットブースターで+1200円てさすがにしんどい。シルエットブースターに至ってはジム用改造パーツとかいうゴミを除けば単色ランナー半分くらいしかないのにこれで600円もするのはなめすぎ。

そのあとMGのF90が出たのでこれは買わねばなるまいと注文して届いてほっといたのを、2つめのミッションパックが届いてしばらくした今になって作り始めたのだ。 で、ここ2週間くらいでぽつぽつ作って昨日あたりでミッションパックのMとFまで作り終えた。

F90本体はさすがによく出来てるなあ感。これが最近のMGかー。 しかしやたらパーツが細かく、これここまで作る必要あるか?という気にはなった。 上半身に比べて脚作るのがしんどい。 あと手のパーツがちょっと残念でビームライフル持ってもちゃんと固定できん。 その時はまあいいかと思ったが、後々ミッションパックを作ったら大変なことに。

次にミッションパックのSとEも作った。しかしF90本体と比べて安いからか、パーツ分けが明らかにおおざっぱになっており、赤い部分はシールで対応などと昔のガンプラの記憶が蘇える。 出来上がってみると見た目はそんな気にならんかったのでよかったが、作ってる最中にシールの貼り方がよくわからんところがあり、箱絵も説明書もモノクロなので見てもわからんのはつらい。 Sタイプの腕パーツは手が隠れるが、手をつけてると干渉しやすくて入らなかったりとむずい。これは手首取っちゃえばいいんだが。 Eタイプがひどくて、だいぶでかいジャミングライフルがあるんだが、F90の手の保持力が全然無いのでジャミングライフル持たせられん。絶対落ちる。どうすりゃいいんだこれ。

MとFも作った。こっちも結構シールで色分けになっててかなしい。箱がでかいわりに出来るものはそうでもないのが不思議だ。 ランナー構成がわかりやすいのがうれしかった。 Mはまあいいんだけど、いまいち地味だな。色は派手だが。相変わらず銃型の武器を保持させるのがむずい。 Fはすげえパーツも少なくて雑かこいつ?すげえめちゃくちゃな武装で笑うしかねえ。なぜか腕パーツの突起が少なくてすぐ外れちゃうのと、サブアームの自由度がもうすこし欲しいあたりが残念。 M&Fセットはちょっと魅力が微妙じゃないですかね……。でもまあ他のタイプと適当に組み合わせると良い感じになったりするのでそれがF90の良いところだ。脚のハードポイントがミサイルつくくらいしかないのでもうちょっと派手な何かが欲しいところ。

Fタイプとかいや何考えてたんだこのとんちき武装は……と思ってしまうが、でもF90はデータ取るための試験機なのでこれでマジに戦うわけでないですしって考えて納得させられてしまうので良い。

全体的には満足してるが武器持てない手だけなんとかしてえな。なんか替えの手パーツセットみたいなの売ってるようなので今度それを買ってみよう。

パーツとか調べてたらガンダムとは全然関係なく30 MINUTES MISSIONSてシリーズが最近出てるのを知った。どうも2種類の素体的なロボにちょっとしたパーツを組み合わせて好きにするやつで、F90より好きかもなーと思った。全体的に安いしよさそうなので今度買ってみよう。


2019-12-19

日記

特になにもしていない。

加湿器を買った。 一昨年買ったのがありはしたのだが、超音波式のやつでフィルターとやらを取り替えないといけないし、入り組んだ構造になってるおかげで掃除も難しいのでもっと手軽に手入れできるやつが欲しいよなあと思っていた。 で、象印のポットみたいな加湿器が楽だという話を聞いたので調べてみると確かに楽そう。でも店で見てみたら1.5万円くらいとちょっと高い。 しかし家に帰ってから調べたら通販で1.2万円くらいであるじゃないですか。 これはまあ出せないことはないなと思って買ってしまった。

めちゃめちゃお湯沸かすので電気食いそうだけどまあいいか。 入り組んだパーツもないから手入れは楽そうだし、あったかい湯気が出るので自然と室温も上がるのは良い感じだ。

残りどんだけ水入ってるのか外から見れないのはちょっと不便。大き目のモデルを買ったのでそうすぐには切れないが。

タイマーが2時間後に自動でOFF、6時間後に自動でON、その両方、しかないんだが、寝てる間はOFFにしておくって機能なんだろうか。 寝てる間に乾燥してるのを防ぎたいから設定が微妙な気がする。

ほぼポットみたいなもんなんだし、もうこれにお湯出してくれる口付いてくれねえかなとも思ったが、俺はそんなにお湯使わんな。

そんな感じ。

PeCa勉強会

PeCa勉強会てのをやっていた。 配信でなんかプレゼンしようぜってだけ。

4人で2時間だったが時間的にはこんなもんが丁度よさそうかな。あんま長くなると大変なので、次回以降人が増えたら分割でやるのがいいかもしんない。 全体的に評判もよかったので次回もやりたい。 やっぱなんかアウトプットするイベントってのはあるといいと思うんだ。

俺はIPv6環境でPeerCastを配信・リレーするにはという話をした。内容はだいぶはしょってるので正確でないところもかなりあるんだが、正確な話をするとかなりややこしくなるので嘘つかない程度ではしょりまくった。が、やっぱりややこしい気はするのでもうちょっとはしょった方がよかったかな。

スレの方でつっこみ入りまくるのに反応する前提で内容は薄くしたんだが、時間的にちょうどよかったので上手くいった。

今回資料作るのに苦労した。 PowerPoint Onlineで作ろうとしたらアウトラインモードがないし、フォントもMSゴシックとかしか選べないし、全ページにいちいちフォント指定してまわらないといけないと、こりゃ真面目に資料作る環境じゃねえなと諦めた。 LibreOffice落としてみるかと思ったらどう頑張っても寄付しろってページにしか行けず、寄付しないと落とせないのかな?とわからなくなったので諦めた。 OpenOfficeは普通に入ったんだが、テンプレが貧弱すぎるのでしんどい。 最終的にOpenOfficeで作ったファイルをPowerPoint Onlineで開いてなんとかスタイルをつけてみた。

なんかもうちょっとやりようあったかもな……。次回以降への課題ということで。

[PeerCastStation] 2.9.0リリースした

2.9.0をリリースした。

けっこう中身を変えたおかげで、あちこちデグレってるところがあったようだ。しかしそれでもなかなかIssue上げてくれないのつらい。

直したつもりではあるので週末くらいにはまたリリースしたいかなあ。

Owinもなんとかして.NET Coreに移行もできるようにしたいところ。


2019-12-11

日記

インフルエンザをくらった。

木曜は普通に休みを入れてたんだが、ちょっとおなかの調子が悪いので出掛けるの微妙だな~と思いつつ、でもせっかく休みにしたんだしということで遊びに行ってた。 まあおなかの調子はおちついたので大丈夫だったのだが、夕方にだいぶ疲れて帰ってきて飯食ったところやけに寒気がする。ふとんに潜り込んでうとうとしていると今度は暑くなってきて……ていうか熱あるわこれ。計ってみると37.7℃となかなかの高熱。いつも35℃台しか出ないのでちゃんと計れてるのか不安だったんだが、熱出すとちゃんと高いので計れてはいるんだな。 仕方ないし、動く気も全くおきないのでそのまま寝るが、熱あるから朦朧とするし、関節がめっちゃ痛いしでろくに眠れはしなかった。

金曜はちょっと落ち着いた気がするが、計ったらまだ37℃はあるしそもそも動く気がおきないので素直に休むことにした。一応インフルエンザだとまずいから医者行っといた方がいいよなあと思いつつも動く気がおきないので行くのしんどいな……。結局午前の診察には間に合わなくて、午後の診察もすぐでは混むだろうとしばらくしてから行ってみたんだがこれが裏目に。めちゃめちゃ混んでて15時くらいに着いたんだが呼ばれたのは17時半過ぎてた。しかも行ったらまた熱上がってて37.8℃とかなってるし~。 で、熱と関節痛があるくらいなんですけど、あとちょっと胃の調子も悪いかも~と伝えると鼻になんかつっこまれてインフルエンザの検査をされた。まあそれを受けに来たんだが。 それからまたいくらかして呼ばれると、インフルエンザのAB両方出てるとのこと。まじかー。検査結果見ても全く出てるようには見えなかったがうっすら出てるらしい。まあ熱出てるしな。 いやー堂々としばらく休めるなーとか思いつつ薬貰って帰ってきた。薬は2錠1回だけ飲めば終わりなやつでそんなんあるんだなーとちょっとびっくりした。あと解熱剤も貰ったんで飲もうとしたが、見たら38℃以上熱あるときに飲めって書いてあったのでやめといた。帰ってきたころにはいくらか下がってたし。 そのあとはまた寝たんだが、薬が効いたのか関係ないのか、いくらか熱は下がっていたので眠れたわ。

土曜日にはもう結構熱は下がってて、夜にはもう普通に36℃割るんじゃねえのくらいになってた。平熱低くない? 日曜には胃の調子が悪い感じあったけど、月火はもう元気でインフルエンザ消化試合で休みま~すて言いながら遊んでいた。

まあ仕事も今のところ暇だし、有給消化しきれそうにねえぞと思ってたところだったので、結果的にそんなに悪くもなかったかな。 ゆっくり休めてインフルエンザかかる前よりも元気になったし。


2019-11-11

日記

なんだかすげえ疲れててやべえ。

着る毛布を買おうかなと思って探しに行ってみたが、高いのと安いやつの差がいまいちわからんので悩んでいる間に本当にいるかこれ?となって諦めてしまった。 ただ寝具売り場を見てたら良さげな枕があったのでそれだけ買ってきた。2000円だったし……。

イベントサイトのDBをPostgreSQLからDynamoDBに移行している。 HerokuのPostgreSQLを使ってたんだが無料分から溢れたので。

DynamoDBてAzure Table Storageと同じようなもんかと思ってたんだが、予想より高機能で便利だった。 ただDBはアカウントに一つしか持てなくてテーブル名でなんとかしろとなってるのはちょっと微妙。 Azure Table Storageだといっぱい作れるのにな。

DBは普段あんま使わないので全然慣れてなくて設計に手間取るが、ドキュメントDBはRDBよりわかりやすくていいな。 まあ集計するようなのは難しいんだが今回は集計とかしないし。

ただインターフェースも結構変わっちゃうので対応はめんどい。めんどいだけなんだが。

とりあえずせっせと進めて、もうちょっとというところまではいった。 急ぎではないんだが毎月無駄にDBのお金取られていってるから、早めに移行はしたいところ。

本日のツッコミ(全2件) [ツッコミを入れる]

_ たけし [元気????]

_ kumaryu [生きてる]


2019-11-06

日記

熱海に行ってきた。いやもう2週間も前ですけど。

保養所があるあたりは断水の影響を受けなかったようで、無事営業中だよという告知が出てた。

日曜昼頃に家を出て東京駅から快速アクティーのグリーン車で熱海へ。時間は大してかからんので特急とか新幹線とか程高くないしグリーン車いいね。 結構混んでたけど東京からなら問題なく座れた。

熱海着いてから、まず翌日分のバスのフリー切符を買うべと東海バスの案内所に行ったんだが、当日分しか売ってないので明日また来いと言われる。 は?明日宿から乗るのに使うのに?セブンイレブンだと一ヶ月先のでも買えるのに?ということで近くのセブンイレブン行ってセブンチケットで買った。使えねえやつだなおい。 あとで気付いたんだが、東海バスはSuica等は使えないのに、すぐ近くを走ってる箱根登山バスはSuica使えるようだ……。

駅から宿までは5kmくらいなので初日は歩いてみるべと思ってたんだが、いざ着いてみるとすごい山だ。なんとなく予想はしていたがそれ以上に勾配がすごそう。 でもまあ時間はあるしきっとなんとかなるだろうと思って歩き始めて、最初は海沿い歩いてるだけなので良かったんだが、本格的に登り始めたらものすごい急勾配。 うわこれやべえな、でもきっともう少し、と思ってスマホのナビを見るとあと40分。は?まだ半分も行ってないんだが? まあでもいつまでもこんな勾配があるとは……いやあったわ。結局宿までずっと急勾配で、その日はちょっと気温が高めではあったとはいえ汗びっしょりになって宿に到着した。 意外にも時間的にはそんなかかってなかったが。

宿は思ったより広くてすごかった。ある程度広いのは予想してたが、それどころでなくめちゃくちゃ広いぞ。うちより広い。そして一人で泊まるっていうね。 こんな広い温泉宿は普通一人で泊まれないし、保養所は便利だなあ。 早速風呂に行ってると、風呂も十分広いし露天風呂もあって楽しい。混んでもなかったし。 朝夕食付きで、6時頃に食堂で豪華夕食。一人でこんなところ泊まって良かったんかなあという感じ。

ただ問題はネットが使えねえ。一応WiFiはあるけどロビー周辺だけだし、それもだいぶ詰まるので接続性はひどい。多少詰まるのは我慢できるが、部屋で使えないのはやっぱ不便だな。 まあケータイの電波は問題なく入るのでテザリングでもいいんだが。

とりあえず初日は疲れたので飯食ったあとはロビーでちょっとネット使ったりして、飽きたら寝た。

2日目は朝食を食って10時頃に宿を出る。バス乗って駅まで行くが文明の利器は便利だな。20分ちょっとくらいで駅に着く……って結構かかるな。 それから城ケ崎海岸まで電車に乗ろうとするが、普通電車で行こうとすると黒船電車とかいうなんだかすごいのが止まってる。え、電光掲示板には普通電車って書いてあるけど、これ?これに乗っていいの?としばらくうろうろして確認しまうが良かったようだ。おもしろい。

城ケ崎海岸までは1時間弱くらい?結構遠いんだよな。そこからさらに30分程歩いてねこの博物館に行った。ここもまた山だったが、急勾配の区間はそれほど長くなかったので助かった。あんま歩いて行く想定の場所ではないな。というか伊豆の辺りは歩いて移動するような場所ではないようだ。

ねこの博物館はあんま期待はしてなかったし、そんなに広くもなくてやっぱそれほどでもなかったんだが、いろんなねこが触れるようになっててそこそこ良かった。 1階のいろんなネコ科動物の剥製コーナーも言うだけあってなかなか珍しいのも見れたし。だがほこりくせえのはなんとかした方がいいのでは。

放し飼いコーナーは子供連れが入り浸っていたのであんまり触れなかったのが残念。抱っこするなって書いてあるのに、高いところから降りられなくなってる!とか言って抱っこして降ろすやべえ父親とか居て治安がアレだった。降りられねえわけねえだろ!!子供が抱っこしたい~とか言い出すしほらー!

どのネコも触らせてはくれるものの、ちょっと触っても怒りはしないという程度で基本ツンだ。ネコだしそりゃそうだわな。 ただ毛の長いネコが籠の中で急に起き上がって触ってみたらなでろおらっ!と言わんばかりに身体を押し付けてきたのでグリグリといじってやった。 籠の中なんで大して触れなかったが、たまになでてほしい気分のやつも居るようだ。ネコだしな。

あとはまた歩いて帰る。下りは楽だ。途中でアイス買ったりしながら伊豆高原駅まで向かった。城ケ崎海岸の方が近いんだが、駅前何も無かったし、弁当でも食いながら電車で帰ろうかなあと思ったので。途中で飯食ってもよかったが、朝食いすぎたのでそんなにおなか空いてもなかったし夜もあるので軽めにしたかった。 駅まで歩いてる途中でネコカフェとかあって、実はこれでよかったのでは……?と思ったのは内緒だ。しかし犬と泊まれるホテルだのペット関連の施設多いぽいな。

伊豆高原駅はそこそこ店があるものの、駅ビルでは弁当的なものはあまり買えないぽい。駅弁売ってるけど1000円~だし高すぎるよお。近くを探すと駅前にスーパーがあった。ここで買おう。 適当に弁当を買おうと思ったが、伊豆名物 箱寿しなるものが売ってて、値段も高くないしせっかくなのでこれにした。 電車で食おうかと思ったけど、帰りはあのすごい電車が来るとは限らんしロングシートにしか座れん可能性もあるなーと思いつつ、次の電車まで20~30分程時間があったので駅のホームで食ってた。期待はしていなかったが、予想以上においしかったのでとても良かった。量もちょうど良かったし。

あとは熱海まで電車で戻って(結局ロングシートに座った)、バスで宿まで。 よくこんなところ登れるなあというような坂道を走っていくが、昨日はこれを歩いて登ったのか。 地元の人は大変だろうなあ。 しかし、フリー切符買ったけど他には寄らなかったのでいらんかったな……。

16時前に宿に着いて、汗もかいたのですぐ温泉へ。昨日より空いてる。って一応平日だからか。夕食とかもこころなしか先日より空いてるようだった。 温泉を出たところにマッサージチェアが置いてあるのを今になって発見したのでやってみる。ふくらはぎを押し潰されるのが怖かったが、気持ちよかった。

しばらくごろごろして18時に夕食。平日なので炊き込みご飯にもできるよって言われたのでそれにしたが、おひつに来た分全部食ってしまった。そりゃ食うでしょ。食いすぎだ。 夕食後、すぐに風呂はしんどいかなーと思ったんだが、行く気になったのでまた風呂に入ってきた。遅くなると動くのおっくうになって寝ちゃうからな。 そろそろぽつぽつ雨降ってきてる中で露天風呂に入ってた。屋根が無い完全露天なので楽しい。 あとはごろごろして寝た。

3日目は朝飯を食って、すぐ風呂。誰も居ねえー。 夜中は雨すごかったけど朝にはあんまり降ってなかった。が、まだ雨ぽつぽつしてる中で露天風呂に入る。 10時にはチェックアウトなので出る準備しないと!と思ったが、べつに大して持ってきたものもないので準備はすぐ終わるのであった。 着替えと充電器ぐらいしか持ってきてなかったわ。

10時前にチェックアウトしてバスで駅へ。風呂入った頃はあんまり雨降ってなかったが、またそれなりに降ってきていた。下りだし晴れてれば歩いて駅まで行ってもよかったが、傘さして狭い道を歩く気はしねえな。

電車まで時間あるし適当にお土産買おう、と思ったんだが、お土産もすぐ買えてしまった。もう無くなったのでよく覚えてないんだが、熱海の梅なんたらっていう小さいケーキ?饅頭?みたいなの。名前に反して梅っぽさは全然なかったが適当に選んだわりにはおいしかったのでまあ良かった。

11時過ぎの快速アクティーに乗ろうと思ったんだけど10時半過ぎの普通に乗れるし、こっちの方が早そうなのでこれにしよう。熱海始発なのでグリーン車にも余裕で乗れてまったり帰りましたとさ。

保養所はこれだけ豪華で一泊7000円とビジネスホテル素泊りくらいの値段で泊まれるし、一人でも問題なく泊まれるしほんと便利だなー。 また使いたい。上総一宮にも保養所があるので、今度はそっちの方に行ってみたいかな。 そっちは6000円とさらに安いし、家からだと熱海よりほんのちょっと近い。

観光はなかなか難しいな。車があればまた違うんだろうが、車無いし、バスだとそう何度も乗るのがめんどい。 歩くのは好きなんだが、伊豆のあたりはどこも急勾配なので歩くのもしんどい。あと見たいところあんまない。

宿は朝夕の2食付きだったが、昼も別料金で頼めるので、もうどこも出歩かずにごろごろしてるってのも良さそうだ。 ただネットがなー。部屋でネット使えればひきこもっても良かったんだがなー。


2019-10-15

日記

台風は無事でした。

台風は無事だったが前後で体調を崩して風邪気味。鼻喉がやられた。台風の前からちょっと怪しげだったが、台風で外に出られなくておとなしく寝てたら治ったぞ、と思ったら暑くなって寒くなってまたダメですよ。そんなに酷くはないのが救いだ。

健康組合の保養所使ってみようと来週熱海に泊まりに行く予定で予約入れてたんだが、どうも台風で断水しているようだ。 すぐ直ればいいけど長引いたら無理だろうなあ。しばらく様子見。

技術書典の在庫確認をしたが新刊は21部しか減ってなくて、うち3部程は見本に使ったので18部くらいしか捌けてないようだった。 ダウンロード版を確認したら1部も売れてなかった。まあそんなもんよね……。

書いてくれた人にまだ現物送ってなかったので送ろうとして、こないだ100円ショップで厚紙封筒が売ってたのを見かけたので買いに行ったら売り切れてた。 じゃあ文房具屋にあるかな……と見に行ったら近くにはLoftとかいうシャレオツ文房具屋しかないため、厚紙封筒とかいう実用品は売っていないのであった。 ちょっと先まで足を伸ばすしかねえか。

[PeerCastStation] 通信で失敗した

Owinベースに作りかえてからいろいろ動きが怪しいところがあったので調べたり直したりしている。

もしかしてデータ送信しきる前に切れちゃってるんじゃないかと思うところがあったので、ちゃんとGracefully shutdownをしようと思った。日本語で言うとなんだろう。上品なシャットダウン? .NETであまり考えずにTCP通信するとNetStreamてクラスを使うことになるが、こいつはStreamの一種でShutdownのインターフェースがなく、中身的にはCloseすると切る直前で送受信両方のShutdownをするだっけっていう乱暴なシャットダウンしかできない。

それはあんまりだろうということでSocketを直接使って上品なシャットダウンを実現することにした。

まあそれ自体はできたんだが、従来のコードが乱暴なシャットダウン前提でコードを書いちゃってるので互換性が怪しくなってしまった。 こっちが送信をシャットダウンしても従来のコードは受信と送信は別物です!と言わんばかりに受信スレッドが終了しても送信スレッドが延々とデータを送ってきて、こっちはいつまでも受信しきらないので終われないのであった。

送信終了前にちゃんと通信終了コマンドを送ってあげれば上手くいったけど、他の場所でも同じようなこと起きそうな気がするなあ。

書いてて思ったけど、送信シャットダウン後は受信も一定時間で強制シャットダウンすればいい気がしてきた。本当に上品にはシャットダウンできないかもしれないが、相手が乱暴者の可能性もあるので仕方あるまい。

.NETのStreamでのI/O抽象化はソケットに対応できてなくて残念だから、ソケット使う場合にはあんまりあてにしない方がいいなあ、と今更思った。いや何度もそう感じてはいたんだが、あらためてな。 Windows自体がソケットとその他I/Oの抽象化が上手くできていないので仕方ないということもあるんだが、.NETなんてその問題が分かりきった時代に設計されたもんなんだから上手いことやってほしかったなあ……。


2019-10-03

日記

技術書典だのイベントだので忙しかったのがやっと落ち着いて好きな作業できる余裕が出てきた。

仕事?仕事は何もしてないですね……。

DBを移行したい

イベントのサイトでDBの構成を大幅に変えてみたんだけど、テーブルを分割したら行数が増えてHeroku Postgresの無料分に収まる1万行を越えてしまった。 なんとかする時間もなかったので有料プランにしたけど、$9/月はちょっと痛いのでなんとかしないといけない。年に6日くらいしかアクティブに使われないサイトなので。

兼ねてからこれべつにRDBの必要全然無いんじゃないの?ということでAzureのTable Storageに移行できないかと考えてはいたが、ちょうどいいタイミングなのでそうするべきだな。 AzureのTable Storageを考えてたのは仕事でAzureを使ってて馴染み深かったからなんだが、イベントのサイトではAWSのS3を既に使ってるのでDynamoDBの方がよさそうね。

WindowsのVMさくっと使えると便利なこともあるし、家でもAzure使えるようにしたいこともあるんだが、それはそれとして分散するのもよくないしな。

次のイベントはまだ半年近く先だが、毎月DBにそこそこお金をとられるのは痛いので早いところなんとかしたい。 RDBのホスティングサービスって高いよなー。

[PeerCastStation] Owinで失敗した

最近PeerCastStationのHTTPサービス部分をせっせとOwinベースに作り直してて出来てきたんですよ。

まだなんか使ってて怪しいところはあるものの、それは直すとしてまあまあ動いてるんですよ。

で、.NET Core 3.xへの移行も見据えて、そもそもどの程度すんなり移行できるのかと試しにやってみたんだけど……Owinがねえ。 OwinとかMicrosoft.Owinていうパッケージを参照してたんだけど、こいつらの.NET Coreとか.NET Standard版がない。 どういうことかと調べてみると、どうもOwinはもうとっくにおしまいになっていた模様。まじかよ。

Owinの仕様としてはFunc<Dictionary<string,object>,Task>でアプリ起動な~てくらいしかなくて、アプリ起動というかサーバーへの登録とかは決まってないし、なんかいまいち使えねえということなのかなんなのかてのがありーの、ASP.NET CoreでOwinの雰囲気を取り入れたんでこれでいいでしょもう、というとかなんとかで終わっていたらしい。 知らずに今更Owinに移行してたぞ……。

まあ確かにOwinに仕様はだいぶ微妙だった。Rack的なものをやりたいというのはわかるんだが、C#との相性はかなり悪かった。 特定のアセンブリとか型に依存しないと徹底したかったのかもしれないが、結局Owinとかのアセンブリを使わざるをえないというのもあった。 じゃあそれならそれでもうOwinとMicrosoft.Owinを統合してこいつが標準な、ってしてくれるだけでもよかったんだけどなー……。

ASP.NET Coreをホストするという手も無くはないんだが、それってRackを入れたかったが終わってたのでRailsを入れるみたいなもんで、いかにもでかすぎる。 俺はRackが使いたいのであってRailsが使いたいのではないのである。

とりあえず今は.NET Coreでどの程度動くのか検証したいだけということで、OwinとMicrosoft.Owinのソースをひろってきて使ってそうな部分だけソースツリーに取り込んで.NET Coreでビルドしてみたらなんなく通った。通るじゃん。ビルドしてパッケージ出してくれるだけでいいんだけどなーもー。 他はいくらか動作が怪しいところがあるものの、おおむねそれっぽく動いているので.NET Coreへの移行自体はそれほど大変ではなさそうだ。すごい。

あとOwinにした部分をどうするかは考えたい。独自にMicrosoft.Owin的なものを作るか、ライセンス的には問題ないのでMicrosoft.Owinのソースをそのままツリーに取り込んじゃうという手もなくはないのよな……。


2019-09-26

日記

しばらく書いてなかった。

技術書典7の本書かないとなーと思って心の余裕がなかったので何も書けなかった。今はもういろいろと終わったのですっきりしている。

本はいっぱい刷ったものの全然数は出ずに終わった。まだちゃんと数えてないんだけど感覚的には20部前後くらいじゃね? まあどこの誰かもわからんやつらが書いた内容もまちまちの合同誌なんざそんなもんか。 しかし万が一無くなったら困るなあといっぱい刷ったのは失敗だったな。 いっぱい刷っても値段は大してかわらんのでそこはかまわないんだけど大量の在庫が部屋を圧迫する……。

既刊はまあそこそこ出た。手で書くMSBuildはやはりいまいちなんだが、動画を送ろう!!RTMPがそれなりに出て不思議な感じはする。 まあライブ配信のなかみも合わせて興味持ってもらえてるのでそういうのが人気なんだというのはわかるが、どっちかというと手で書くMSBuildの方が断然実用性あると思うぞ!? 実用性(だけ)を求めて技術書典来てるわけではないってことか。それはわかる。

次回はお休みの予定です。ネタが無いので。 当初は新刊書くのしんどいから今回は合同誌で軽く書いて、次回いっぱい書きましょうと思ってたんだが、合同誌で軽くといってもそんなに精神的な負担は変わらなくてしんどかったので次こそ休みましょう。

あと普通にネタ切れだしプログラム書きたいのでな。本書くのは俺の本領じゃねえ。プログラム書かせろ。

PC壊した話

前回はPC新しくしようとしてBIOS古くしたのでなんとか焼き直したところまで書いてたんだっけ。

そのあとまたマザボを壊した。

CPUクーラーがそれなりの音をたててぶん回るし、温度もちょっと高めなのでできる限りでかいCPUクーラーに取り替えようとした。 で、いざ取り替えたらうんともすんともいわくなった。

いろいろ取っ替え引っ替えしてみたところ、どうもマザボがぶっこわれた模様。なんでー。静電気かなんかでやらかしたのかもしれん。 修理に出してもいいが時間かかるだろうし、でもマザボ買い直すのもしんどい……。どうしたもんか。

と思ったが、マザボ買うにもどうせ店行くし修理に持っていってみて、時間かかりそうなら買い直すかということに。 修理に持っていってみるとやっぱりマザボがだめっぽい。 購入から1ヶ月は過ぎてるんだが過ぎたのが数日だし店の独自保証に入ってるので交換できるかもしれんと、期待したのだが在庫無いので交換が無理だわって話だった。 当時もうB450のMini-ITXマザボはどこも品薄になってたようだ。 で修理は1ヶ月くらいはかかるってことだがどうしようもないのでお願いして、新しいマザボを買って帰った。

前のマザボはGIGABYTEだったが今度はASUS。B450にしてはちょっと高かったがそれしか売ってねえんだからもう仕方ない。X570とかなるとめちゃめちゃ高いし。 取り替えたらさすがにWindowsのライセンス認証にこけてとても困ったが電話で認証したら通ったので助かった。OSも買い直すとかなったらもうほんとやべえよ。

新しいPCはそれでやっと安定して動いてくれるようになった。結局マザボはまだ修理から帰ってきてないが、戻ってくるとマザボとAPUが余るのでもう1台PC組めそうなパーツが余っちゃうんだよな。そんなにいらねえが……。いやほんと無駄な出費しちゃっていたい。


ページのトップへ | トップ | 追記 | kumaryu.net by kumaryu