Java

1コマンドでJavaアプリをOSvへデプロイ

OSvは、ハイパーバイザやIaaSプラットフォームへアプリケーションをデプロイすることに特化した軽量OSです(※詳しくはこちら)。 また、CapstanはGo言語で実装されたOSvのデプロイツールです(※詳しくはこちら)。OSvはJVM上で動くアプリケーションをメイン…

OSvもmrbgemsみたいな感じに簡単にextensionを追加できるといいよね→やってみた

mrubyってRubyのgemsみたいな感じに拡張をmrbgemsっていう方式で追加できるんですが、mrubyの用途から言ってどこかのディレクトリにダイナミックリンクライブラリ+Rubyファイルで配置とかやってほしくなくてmruby本体に直接リンクしといて欲しいという感じ…

OSvへmruby-cfuncを移植してみたらとてもあっさりと動いた話

OSvへmrubyを移植してみたらとてもあっさりと動いた話 - かーねる・う゛いえむにっきの続きです。さて、OSvでmrubyが動くようになったのですがmrbgemsを追加していないのでこのままではAPIがむっちゃ少なくてなにも書けません。 でもmrbgemsの移植ってそれぞ…

OSvへmrubyを移植してみたらとてもあっさりと動いた話

注:この記事はカーネル/VM+K*BUG勉強会@関西 ごかいめのダイジェスト版です。 詳しくは、以下の動画とスライドをご覧下さい。 OSvは、OpenJDKを仮想環境で高速に動かす事を目指していて、ユーザは基本的にJavaアプリケーションしか実行しないという前提にな…

クラウド向けOS「OSv」とは何か - ソースコードから調べてみる -

なにこれ KVM開発エンジニアらが立ち上げたベンチャーCloudius、クラウド向けOS「OSv」を発表 | OSDN Magazineで紹介されていたので興味を持って弄ってみた。 KVM/Xen専用のOSで、アプリケーションとしてJavaアプリケーションが動くという事のようだ。 基本…

【教えてJavaのエロい人】java.nio.channels.FileLockで共有ロック出来ねぇんですけど

試しにこんなコード書いてみたんですけど、共有ロックの時にも排他ロックがかかってるようにしか見えないんすよね…。内容としては、以下の処理を順にやってるつもり: a.dat, b.datへ書き込むスレッドを4つづつ作って排他ロック、a.datだったら書込み後に30…

miniupnpc for JavaとJNAeratorのお話

miniupnpcというCなUPnPのライブラリがあって、これは結構多くのルータをサポートしてて色々なオープンソースアプリで(もしかしたら商用アプリでも)用いられているんだけれど、Javaバインディングがない。 どーせ小さなコードなので、JNIするのもそんな面…

SwingLogger for slf4j

Genkidamaに使ってたLoggerからの出力をねじ曲げてSwingに表示する部分をslf4j向けのjarにしてgithubで公開しました。要するに、こういうコードを書くと: import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.slf4j.impl.LogWindow; publ…

Firefox ExtensionでJavaプログラムを動かしてみるテスト

Firefox ExtensionでC++プログラムを動かしてみるテスト 〜その5 XULの実装〜 - かーねる・う゛いえむにっきからの続き。もちろんJavaでもExtention書きたいよね? って事で試してみた。 本当はXPCOMで実装してJS側は無変更と行きたいところなのだが、如何…

どーでもいい蛇足だけどこのコードはJavaでも書けるよと世のJava屋さんにゆいたい

※追記:ネタです。http://kaede.to/~canada/doc/ll-and-lower-layer-programming この記事に関して、思うところあったので。 C言語もポインタ関係もないよ?Javaでも書けるし: public class SCRTest { public static void main(String[] args) { String fil…

JavaVMがaccess violationで落ちやがった。

Genkidamaのテストの為に最新のコードをずっと起動しといたら、次の日みたらこんなエラーで死んでた。 # # An unexpected error has been detected by Java Runtime Environment: # # EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x6d0aeb64, pid=1632, …

Genkidama 0.3.4をリリースしました。

Genkidama 0.3.4をリリースしました。 0.3.3からの変更点は以下の通りです: ・DHTに接続出来ない問題を改善する為、アルゴリズム設定を調整 ・putが失敗する問題を改善する為、挙動を調整 ・GUIの改善、無用な機能の削除http://sourceforge.jp/projects/gen…

Genkidama 0.3.3をリリースしました & Genkidama Web DashboardのURLを変更しました 

Genkidama 0.3.3をリリースしました。 0.3.2からの変更点は以下のとおりです: ・DHTアルゴリズムの変更 ・暫定的なGUIの実装 http://sourceforge.jp/projects/genkidama/downloads/40785/Genkidama-0.3.3.zipまた、Genkidama Web DashboardのURLを変更しま…

Genkidamaのバグ報告・機能リクエストetcについて

はてなのコメント欄だと色々と不便かと思いますし、多人数での議論にも向いておりませんのでフォーラムの活用をお願い致します: http://sourceforge.jp/forum/forum.php?forum_id=18665

Genkidamaテスト版 0.3.1をリリースしました。

0.3.1のリリースに伴い、以前のバージョンは使えなくなります。0.3.0との差分は以下の通り。 ・NicoCache 0.41のマージ ・XMLRPCサーバの一部仕様変更 ・DHTアルゴリズムの変更 ・バージョンチェック機能の実装 ・ポート開放チェック機能の実装 ・バックグラ…

Genkidamaテスト版 0.3.0をリリースしました。

違いはバージョニングの変更のみです。 テスト機能をいくつか追加していますが、ユーザ側からは見えなくしてあります。http://sourceforge.jp/projects/genkidama/downloads/40306/Genkidama_0.3.0.zip※本リリースより以前言及していた0.3のリリースを0.4と…

Genkidamaテスト版 2009052902をリリースしました。

コマンドプロンプトに現れる大量のデバッグログを粛清。 2009052901との機能面での違いはなし。/40247/Genkidama_2009052902.zipをダウンロード - Genkidama - OSDN

Genkidamaテスト版 2009052901をリリースしました。

前回のテストリリースの2009052701にはDHTへキャッシュを公開するのを忘れていたwwww という致命的なバグが有ったので、ここを中心に修正。 一応の動作確認が取れた。 ログ周りの掃除も進行中。 未だバージョンチェックは未実装。あまりにもUPnP周りでトラブ…

Genkidamaテスト版 2009053001をリリースしました。

overlayweaver-0.9.4-churn-tolerance.diffを当てました。 XMLRPCサーバの仕様を変えました。これに伴って以前のテスト版が使えなくなっちゃいました。 デバッグ用にdhtshellをDHTManagerへ統合。 /40249/Genkidama_2009053001.zipをダウンロード - Genkidam…

Genkidamaテスト版でputしたキーを他のノードからget出来ない

dhtshellのapplication idとapplication versionをGenkidamaに合わせて繋いでみた。 どうも、putしたキーがget出来ない。 StringなキーをSHAでHashする段階で違うキーになっている事も考えてHash後のキー名を見比べてみたが、そこは一致している。 にも関わ…

UPnP、NAT越え技術(UDP Hole Punching, STUNなど)に詳しい方、オラに力を分けてくれっ!!

http://sourceforge.jp/people/viewjob.php?group_id=4359&job_id=303 え〜、そんな訳でGenkidamaプロジェクトではUPnP、NAT越え技術(UDP Hole Punching, STUNなど)に詳しい方を募集中です。 実際に開発に参加してくれる方を希望していますが、アドバイス…

Genkidamaテスト版 2009052701をリリースしました。

とりあえず0.3に入れたい機能を大体つっこんだつもりです。 バージョン確認機能のみは未対応で、UPnP周りで色々問題が発生している模様です。パッケージ Genkidama テスト版 - Genkidama - OSDNまだちゃんと動くという自信が無いのでまともに動く事は期待し…

Genkidamaの仕様について書いてみた。

Genkidama Wiki - Genkidama - OSDN 仕様について二本ほど記事を書いてみた。一つは基本設計について。これはバージョンが上がっても殆ど変わらないであろう、基本的な考え方の所。もう一つは集計サーバについて。これは0.3に入れようとしている中央サーバを…

Overlay Weaver 0.94 released

http://overlayweaver.sourceforge.net/index-j.html "Version 0.9.4 リリース。 * DHT シェルのウェブインタフェースが、ルーティング結果の経路を地図 (Google Maps) 上に表示できるようになった。 スクリーンショットとデモのページ にスクリーンショット…

Genkidama now on sourceforge.jp!

sourceforge.jpの承認が降りたので、Genkidamaをsourceforge.jpへ乗せました。 今後の開発はこちらで行います。 Genkidama プロジェクト日本語トップページ - OSDN

OverlayweaverのSelfAddressに関する問題と疑問

OverlayweaverでSelfAddressの扱いが変な気がしてきた。 設定・環境依存な問題かもしれないが。以下はグローバルIPをホストで直接所持しているノードAとローカルIPを持ちUPnPでルータと会話が出来るノードBでDHTを構成してみた時の記録である。まず、ノードA…

UPnP in Overlayweaver

if (Config.getBoolean("dhtUPnP", true)) { String internalAddress = InetAddress.getLocalHost().getHostAddress(); UPnPAddressPortMapper.start(internalAddress, dataPort, Mapping.Protocol.TCP, "Genkidama data port", null, 90 * 1000L); InetAddr…

Genkidama on Overlayweaver

Overlay Weaverを使ったテストプログラムを書いてみた。 - かーねる・う゛いえむにっきを元に、GenkidamaをOverlayweaverへ乗せ替えている。 2,3時間で単純な載せ替えはほぼ終了。 どうもローカルアドレスのハンドリングに難があってjoinに失敗したりする…

UPnP issue solved in Overlayweaver

UPnP in Overlayweaver - かーねる・う゛いえむにっきの解決編。デバッガで真面目に追ってみる。 先回書いたコードのUPnPAddressPortMapper.start()はUPnPAddressPortMapperのスレッドを作って実行するので、run()から見ていく。 public void run() { UPnPMa…

Overlay Weaverを使ったテストプログラムを書いてみた。

こうか? import java.util.Set; import ow.dht.DHT; import ow.dht.DHTConfiguration; import ow.dht.DHTFactory; import ow.dht.ValueInfo; import ow.id.ID; import ow.messaging.util.MessagingUtility; import ow.stat.StatConfiguration; import ow.st…