問題タブ [ice]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
wcf - WCF と ZeroC ICE を比較した人はいますか?
ZeroC の ICE (www.zeroc.com) は興味深いようで、私はそれを見て、WCF を使用する既存のソフトウェアと比較することに興味があります。特に、WCF アプリはサーバー コールバックを (HTTP 経由で) 使用します。
比べたことある人いますか?どうだった?相互運用性は現在、私たちにとってあまり重要ではないため、特にパフォーマンス面に関心があります。ありがとう!
c# - C# および ZeroC ICE の経験
クロスプラットフォームの相互運用性とパフォーマンスがはるかに優れていると聞きました。
corba - ZirconZircompのようなものはZeroCIceとどう違うのですか?
現在ZirconZircompを使用している人はいますか?彼らの技術はZeroCICEのようなものとどう違うのですか?彼らは同じ問題領域を解決しようとしていますか?彼らのターゲットオーディエンスはどう違うのですか?
追加の質問:IceとCORBAのどちらかを選択できる場合、あなたの経験に基づいてIceを使用する必要がありますか?
.net - .netでSIPを使用して生き続ける
.NETでSIPプロトコルを実装する必要があるアプリケーションを作成しています。クライアントがキープアライブメッセージをサーバーに送信し続けるクライアントサーバーセットアップがあります。SIPプロトコルまたはICEでサポートされているその他のプロトコルのみを使用できます。
誰かがこれを実装するのを手伝ってくれませんか。これらのプロトコルについてはよくわかりませんが、.netについてはよく知っています。いくつかのサンプルコードは非常に役立ちます。
maven-2 - Maven用アイスグリッドプラグイン
Maven2用のIce グリッドプラグインがあるかどうかは誰にもわかりませんか?
現在、次のように Maven から Ant タスクを呼び出す必要があります。
http://maven.apache.org/plugins/maven-antrun-plugin/usage.html
python - Django、モデルなしで管理パネルを生成する方法は?
私は基本的にこれで構成されるかなり大きなプロジェクトを構築しています:
サーバー 1: アイスベースのサービス。セッション処理用の Glacier2。Glacier2 へのアクセスを許可するファイアウォール。
サーバー 2: Glacier2 経由の Ice サービス用の Web インターフェイス (読み取り、パブリック)。Glacier 2 経由の Ice サービスの管理インターフェイス。
気になる点はWebインターフェースです。Django を使いたいのですが、どちらも Python で書かれており、信じられないほど便利な自動管理パネル ジェネレーターを備えているからです。
Web インターフェイスはデータベースにアクセスしません。Glacier2 ルーター経由でサーバー #1 の Ice サービスに接続し、それらのサービスによって公開された API を使用してデータを操作します。
おそらくご存じのとおり、Django の管理世代は Django の ORM の使用に依存しています。アクセスするデータベースがないため、使用していません。
したがって、管理パネルを生成する必要がありますが、ORM が通常行うような標準的なデータ アクセスを行う代わりに、「db-access」呼び出しをインターセプトして Ice サービス呼び出しに変換し、サービスの出力を取得する必要があります (存在する場合)、ORM が通常返すものに変換し、制御を Django に返します。
どうすればこれができるか知っている人はいますか?サブクラス化するには何が必要ですか?具体的なアイデアはありますか?
御時間ありがとうございます。
c - pthread_atfork()およびpthread_once()を使用して、子プロセスのミューテックスを再初期化する方法
RPCにZeroCのIceライブラリを使用するC++共有ライブラリがあり、Iceのランタイムをシャットダウンしない限り、子プロセスがランダムなミューテックスにぶら下がっているのを観察しました。Iceランタイムはスレッドを開始し、多くの内部ミューテックスを持ち、サーバーに対してファイル記述子を開いたままにします。
さらに、内部状態を保護するために、独自のミューテックスがいくつかあります。
共有ライブラリは何百もの内部アプリケーションで使用されているため、プロセスがfork()を呼び出すタイミングを制御できません。そのため、プロセスがforkしている間、Iceを安全にシャットダウンし、ミューテックスをロックする方法が必要です。
ミューテックスと内部状態の処理に関するpthread_atfork()のPOSIX標準を読む:
あるいは、一部のライブラリは、ライブラリ内のミューテックスと関連するすべての状態を既知の値(たとえば、イメージが最初に実行されたときの状態)に再初期化する子ルーチンのみを提供できた可能性があります。ただし、ミューテックスまたはロックがまだロックされている場合、実装はミューテックスおよびロックの* _init()および* _destroy()呼び出しに失敗することが許可されているため、このアプローチは不可能です。この場合、子ルーチンはミューテックスとロックを再初期化できません。
Linuxでは、このテストCプログラムは、子pthread_atfork()ハンドラーのpthread_mutex_unlock()からEPERMを返します。Linuxをコンパイルするには、PTHREAD_MUTEX_ERRORCHECKマクロに_NPを追加する必要があります。
このプログラムは、この優れたスレッドからリンクされています。
子のミューテックスのロックを解除または破棄することは技術的に安全または合法ではないため、ミューテックスへのポインタを用意してから、子にヒープ上に新しいpthread_mutex_tを作成させ、親のミューテックスをそのままにしておく方がよいと思います。小さなメモリリーク。
唯一の問題は、ライブラリの状態を再初期化する方法であり、pthread_once_tをリセットすることを考えています。おそらく、POSIXにはpthread_once_tの初期化子があり、初期状態にリセットできるためです。
上記のchild()のサンプルでは、PTHREAD_ONCE_INITで初期化された新しいpthread_once_tのコピーを作成することによってのみpthread_once_tをリセットします。新しいpthread_mutex_tは、ライブラリ関数が子プロセスで呼び出された場合にのみ作成されます。
これはハッキーですが、おそらくこの標準の幅木に対処するための最良の方法です。pthread_once_tにミューテックスが含まれている場合、システムはPTHREAD_ONCE_INIT状態からミューテックスを初期化する方法を持っている必要があります。ヒープに割り当てられたミューテックスへのポインタが含まれている場合は、新しいミューテックスを割り当てて、pthread_once_tにアドレスを設定する必要があります。私はそれがこれを打ち負かす特別な何かのためにpthread_once_tのアドレスを使用しないことを望んでいます。
comp.programming.threadsグループでpthread_atfork()を検索すると、多くの優れた議論と、この問題を解決するためにPOSIX標準が実際に提供するものがいかに少ないかがわかります。
また、pthread_atfork()ハンドラーからのみ非同期シグナルセーフ関数を呼び出す必要があるという問題もあります。最も重要なのは、memcpy()のみが実行される子ハンドラーであるように見えます。
これは機能しますか?共有ライブラリの要件に対処するためのより良い方法はありますか?
middleware - ZeroC ミドルウェアの使用
私は現在、相互に通信できるさまざまな言語でアプリケーションを作成できるようにするさまざまなミドルウェア ソリューションを検討しています。
ZeroC 製品スイートは、言語にとらわれない方法でデータを定義し、(Slice IDL を介して) データを操作するサービスを提供し、主流のすべての言語をサポートするため、理想的です。また、ロード バランシング、グリッド コンピューティング、管理された展開など、私たちが望む他の多くの機能も提供しているようです。
しかし、私の google-fu は私を失望させ、それを使ってシステムを実装した人からの情報を見つけるのに苦労しています。それを使用しているプロジェクトからのフィードバックと、どのような問題/成功があったかを探しています。それを評価し、それを使用しないことを選択したプロジェクト (およびその理由) からのフィードバックにも興味があります。
scala - ZeroCIceはScalaの「チェックされたキャスト」
ZeroC Ice for Javaは、すべてのSliceインターフェースを(とりわけ)プロキシインターフェースとプロキシに変換します。(すべてのプロキシのベースインターフェイス)がある場合は、静的メソッドを使用して、実際にインターフェイスがあるかどうかを確認できます。Simple
SimplePrx
SimplePrxHelper
ObjectPrx
Simple
SimplePrxHelper
castTo
2行目を次のように置き換えることができるようにメソッドを作成したかった
また
私が見る限り、Scalaの型システムは私が定義できるほど表現力がありませんcastTo
。これは正しいです?
c++ - MSVCは、「致命的なエラーC1060:コンパイラがヒープスペースを使い果たしています」というテンプレートの重いコードをあきらめます
MSVC(2010)を使用して比較的テンプレートの重いコードをコンパイルしようとしていますが、最終的にはで終了しfatal error C1060: compiler is out of heap space
ます。
全体が1つの変換ユニットであり、比較すると、gccはそれを非常に簡単に処理します(VM内で、リソースが大幅に少なくなります)。
何を探すべきかについてのヒントはありますか?関連するコンパイラオプションはありますか?