問題タブ [jxcore]

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.

0 投票する
1 に答える
489 参照

c++ - LLVM を使用して JXcore で利用可能なノード アドオン

これがこの質問を投稿する正しい場所でない場合、または以前に尋ねられた質問に似ている場合はお詫び申し上げます。

開始したい C++ プロジェクトに Web インターフェイスを配置する方法について調査しています。私は Node.js に出くわし、V8 エンジンを使用していくつかのアドオンを調べました。

私の考えは、ビジネス ロジック (DB(sqlite)、CRM、CMS など) を C++ バックエンドにルーティングし、Node.js 内で websocket 接続、フォーム検証などを処理することです。

JXcore は紙の上で非常に魅力的な仕様を持っているので、試してみることに非常に興味がありますが、JXcore には V8 から LLVM に移行するという将来の目標があるため、アドオンがどのように影響を受けるかはわかりません。うまくいけば、JS と C++ を橋渡しするオプションが利用できるようになるでしょう。

したがって、上記に基づいて、次のオプションを利用できます。

  1. Nodeですべてを行う(C++アドオンなし)
  2. マルチスレッドなしで JXcore または Node および C++ アドオンを使用する
  3. JXcore または Node を使用し、たとえば libuv を使用して C++ アドオンにマルチスレッドを実装します
  4. すべてを JXcore で行う (C++ アドオンなし)

あなたの意見では、上記のオプションのうち、パフォーマンスに関してより良い方法はどれですか? また、上記の代替オプションをいただければ幸いです。

0 投票する
1 に答える
253 参照

multithreading - マルチスレッドタスクをリセットするには? (JXコア)

JXcore マルチスレッドに移行した node.js アプリケーションがありますが、タスクをリセットする方法がわかりません。現在の実装では、サーバーはサブプロセスを作成し、ジョブを 1 つずつ送信します。

ジョブに X 秒以上かかると、メイン プロセスはサブ プロセスを強制終了し、実行中のタスクをスキップしてログに記録します。どのジョブも X 秒以上かかるべきではありません。

これまでのところ、キュー システムを JXcore に簡単に移行して期待どおりに動作しましたが、実行中のタスクを強制終了するにはどうすればよいか、まだわかりませんでした。

0 投票する
1 に答える
354 参照

node.js - JXcore、外部プロセス監視のしくみ?

私は初心者で、プロセス監視が JXcore でどのように機能するかを理解しようとしています。ドキュメントを見ましたが、サーバー アプリケーションをマルチスレッドで起動して適切に監視するには、いくつかの手順が必要です。

前もって感謝します!

0 投票する
2 に答える
180 参照

javascript - jxcore を介してセイルを実行する際のパスポート エラー

私は、sailsjs プロジェクトのコードを jxp (jxcore から) で保護しようとしています。
パッケージを正常に作成し、一連のモジュールをインストールしました (パスポートはその 1 つです)。すべてのインストールは正常に完了しましたが、アプリケーションを実行すると、次のエラー メッセージが表示されます。

何か案が ?

アップデート

jx の最新バージョン (ベータ 2) を使用している場合、jx MYPROJ.jx を実行すると次のエラーが発生するようになりました。

0 投票する
1 に答える
1663 参照

javascript - Node.js ストリーム書き込みループ

最近、いくつかの node.js ネイティブ機能のベンチマークを試みたところ、理解できない不気味な結果が見つかりました。これは、私がベンチマークし、結果をベンチマークした簡単なコードです。

http://pastebin.com/0eeBGSV9

200 の同時実行で 100,000 件のリクエストに対して、1 秒あたり 8553 件のリクエストを正常に処理したことがわかります。その後、友人から、この場合は async を使用しないように指示されました。このループはノードのイベント ループを妨げるほど大きくないため、コードをリファクタリングして for ループを使用すると、ベンチマークの結果がさらに増加し​​ました高い:

http://pastebin.com/0jgRPNEC

ここでは、1 秒あたり 9174 のリクエストがあります。きちんとした。(不思議なことに、反復回数を 10k に変更した場合でも、for ループ バージョンは async バージョンより一貫して高速でした)。

しかし、私の友人は、ループが終了した後にすべてのデータをダンプする代わりに、ストリーミングを使用してこの結果をさらにプッシュできるかどうか迷っていました。ここでも、データ出力を処理するために res.write を使用するようにコードをリファクタリングしました。

http://pastebin.com/wM0x5nh9

aaaaand 1 秒あたり 2860 のリクエストがあります。ここで何が起こったのですか?ストリームの書き込みが遅いのはなぜですか? 私のコードに何らかのエラーがありますか、それともノードが実際にストリームを処理する方法ですか?

apt インストールのデフォルト設定では、ubuntu のノード バージョンは 0.10.25 です。

また、最初に JXCore と HHVM (ノード コードの async.js バージョンを使用) に対して同じコードをテストしました。結果はhttp://pastebin.com/6tuYGhYGで、ノード クラスターが最新の jxcore 2.3 よりも高速であるという興味深い結果が得られました。 .2.

どんな批評でも大歓迎です。

編集: @Mscdex、res.write() の呼び出しが問題だったのではないかと思ったので、データを res で消費するために作成された新しいストリームにプッシュする方法を変更しました。私は素朴に、おそらくこの方法のノードが何らかの方法で出力バッファリングを最適化し、効果的な方法でデータをストリーミングできると信じていました。このソリューションも機能しましたが、以前よりもさらに遅くなりました。

http://pastebin.com/erF6YKS5

0 投票する
3 に答える
9134 参照

javascript - Node.js と JXcore のどちらを選択するか?

JXcore は改良された Node.js のようです。この慎重に設計された見積もりを確認してください。

JXcore には組み込みのマルチスレッド サポートが付属しており、追加の変更なしで既存の Node.js アプリケーションで有効にすることができます。JXcore マルチスレッドは、Node.JS クラスター モジュールよりも約 30 ~ 50% 確実なパフォーマンス上の利点をもたらす可能性があります。http://jxcore.com/より

私はすでにそれをインストールしようとしましたが、実際に機能します。今のところ言えることはそれだけです。パフォーマンスとアップタイムを測定することはトリッキーで精緻な作業です。

では、JXcore に切り替える本当の利点と、その決定方法は?

0 投票する
1 に答える
533 参照

jxcore - JXCore ネイティブ アプリケーションに引数を渡す方法は?

NodeJS アプリケーションを作成し、JXCore を-nativeフラグ付きで使用して、スタンドアローンを作成しました.exe。今、アプリケーションを実行して、いくつかのコマンド ライン引数を渡そうとしています。

NodeJS アプリでは問題なく動作しますが、次の場合は動作しませんexe

正常に動作します。しかし

パッケージングに関するドキュメントと、それに関するいくつかのブログ投稿を調べました。私はそれを行う方法を見つけることができません。何か案が?

ありがとう!

0 投票する
0 に答える
4183 参照

javascript - リモートからのSocket.io接続

jxcore (Plesk Panel の nodejs) を使用してリアルタイム アプリケーションを実行していますが、nodejs は初めてです。アプリケーション ファイル index.js は、ドメイン mydomain.it で実行されています。

同じドメインに、mydomain.it/app などのクライアント ページがあり、次のものが含まれます。

これは私の nodeClient.js ファイルです:

ここで、複数のデバイスにインストールされている Android アプリから websocket に接続する必要があります。したがって、nodejs サーバーとクライアントを含むドメインがあります。その他のリモート Android デバイス (jquery モバイルで開発された html5 アプリを使用)。しかし、ソケットに接続できません。エラーが返されます (Chrome ブラウザでは ERR_CONNECTION_TIMED_OUT)。

ドメインのクライアントページから、変更した場合にのみソケットに接続できます

しかしもちろん、localhost を使用してリモート デバイスからサーバーに接続することはできません。Socket.io は mydomain.it にのみインストールされます

このようなアプリケーションを実現することは可能でしょうか?

ありがとう