Brynhildr

KeroRemote

リモートデスクトップエンジニアのブログ。

Verethragna(ウルスラグナ)開発雑記




久々にエンジニアらしく開発雑記など。

ブログの記事などいつぶりでしょうか。TwitterがXになってちょっと先行きが分からなくなってきたことで、この記事も数年後に見た時はその頃はそんなこともありましたなー、的な感じになるんでしょうけど、TwitterをメインのSNSにしようかと思ってたところにコレなんでタイミング的にアレで。なので引き続きXも使いますけどブログも併用もしてこかなと。

さて、久々に記事を書き始めてまずはエンジニアと肩書を書いてみたんですが、暫くエンジニアって肩書から離れており、どっちかっつーと経営者的な立場が多い感じになってたんですけど、私に近しい方はご存じの通り、昨年末くらいからガッツリとコードを書くような仕事になりましたのでしっかりとエンジニアやってます。もう今年で50なんですけど。まー、作業内容的にはプログラマーかもしれんとかも思いつつソフトウェア・エンジニアとかのエンジニアとゆー響きが好きなんでこっちを使っており。トニー・スタークも言ってましたし。但し、プログラマーという響きも嫌いではないのでケースバイケースとゆー感じで。

さて、本題で。本題までが長い。先日、ウルスラグナ(Verethragna)をバージョンアップしました。新しいバージョンは「0.8.0」で。ウルスラグナはご存じの通りのRATH製ですので他の案件とも影響があり様々な考慮が必要なんですが、そのいくつかの要素により0.6.0以降はかなりパフォーマンスが下がっておったんです。何とか回避しようと模索してたんですが良い策がなかなか見つからず。まあぶっちゃけその要素の1つがHTTP通信化だったんですけどね。

HTTP通信にすることで何がプラスになるかと言いますと明確には2つ。1つは将来的にクライアントをブラウザ対応できる近道であること。もう1つはHTTP通信することでプロキシの通過が可能となりえること。ブラウザ対応は色々と模索してみたんですけど技術的にちょっと先になりそうでしたのと、プロキシの方も色々と調べてたんですけど、WebSocketが一般化となっている今の状況において、プロキシもWebSocketは443ポートでSSLのところを通してくださいよ、中身は見えないですけど、それか例外的に、的な感じですしそもそもWebSocketもHTTPに準拠でもないですし。まあ、てことでHTTP通信は一部を残してウルスラグナ自体に大きく影響がない範囲で元に戻しても良いかなとゆーことにしまして。良く分からない書きぶりになってますけど察してください。

で、あともう1つ気になってたのが、6年ぶりくらいに懐かしのグングニル(Gungnir)のソースコードを見てたら、思ってた設計と違ってて、ワシこんな風にしたっけな?的な感じで、ますますなぜこれでこのパフォーマンスが出るか謎だったんです。具体的にはマルチスレッドになってると思ってたところがシングルスレッドで。このシンプルでまあまあの負荷で高パフォーマンスのこの仕組みをウルスラグナに実装しよかなと思うようになりまして。もちろんウルスラグナの従来の仕組みも良かったんですけどね、ちょっと負荷の問題と設計の複雑感が。まあ元々はウルスラグナもグングニルの一部をベースにしたとこもありましたもので良いとこどりにしたろかなと。

実は前にも何回か移植を試みたことがあったんですがその時は思ったほどの効果が得られず。で、今回はソースコードを数行ずつ移植するような感じで慎重に確認と調査を進めた結果、いくつかポイント(DLLの部分とかVFWの部分とかエンコードの部分とか暗号化の部分とか)を見つけることができてそれらを対応してウルスラグナの「0.8.0」が出来上がったというワケです。ちなみにグングニルはWinSock1なんですけどウルスラグナはWinSock2を使っているのでその辺の通信周りも全部見直しで。結局ウルスラグナはWinScok2のままです念のため。

そんなこんなで今回のウルスラグナの「0.8.0」はなかなかの自信作となりましたとゆーお知らせなんです。


4件のコメント ... ( 管理人承認制 )



お世話になっております、新しいバージョン入れ替えてみました。


キー入力でクライアント側とサーバー側でCaps Lockの動きが反対になっているようです。
この現象は起動直後から起こっています。


使用環境は
Server Window10 Pro
Client Window11 Pro
起動オプションもverethragna.exe /servermode /port:2048 /autostartです。
で運用しています、以前のバージョンでは起こっていませんでした。
***
いつも便利に使用させて戴いております、感謝感謝です。


[三]  2023/08/19


お世話になります、その後なんですが、2日間は症状が続き、再起動でも少し経つと症状が起きていたのですが、今日になり、症状が出なくなっています。症状は何度も確認したので、起きていたのは事実なのですが、お騒がせしました。


[三]  2023/08/20


> キー入力でクライアント側とサーバー側でCaps Lockの動きが反対


ご報告ありがとうございます。Caps Lockや全角半角のようにトグル式のようなキーでは、現在のオンオフの状態は把握していおらず、キー入力のみを送受信していますので、もしかすると接続時にクライアント側がオン、サーバー側がオフ、のように異なる状態だった際に仰るような現象が発生する可能性はありそうな気はしています。ご確認のほどよろしくお願いいたします。


KANEKO  2023/08/21


お世話になります。
仰るとおりでした、サーバー側のキーボードでCaps LockがONになっていました。
ひとりリモートデスクトップで運用しており、同じキーボードをUSB切替器で使っています。
普段はONで使う事は無いのですが、何かのタイミングでONになっていたようです。
腑に落ちました。ありがとうございました。


[三]  2023/08/22




... 不具合報告の際は、アプリのバージョンやOS等の動作環境の記載を御願い致します。

表記されている会社名・製品名・システム名などは、各社の商標、または登録商標です。
当サイトはAmazon.co.jpアソシエイトプログラムに参加しています。
© 2010-2023 KANEKO