問題タブ [system-design]
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.
assembly - PC相対アドレスと絶対アドレスの違い
PC相対参照の再配置と絶対参照の再配置の間のプロセスの違い/類似点を誰かが説明できるかどうか疑問に思っていました。
私が現在通っているクラスは、厳密に C で教えられているシステム設計のクラスなので、なぜこれがクラスに関連しているのかわかりません。
oracle - Oracleのストアドプロシージャに値を渡す方法は?
値を挿入して更新しようとしているストアド プロシージャを作成しました。挿入を実行しているとき(5つのパラメーターと異なるデータ型が含まれています)には異なる値があり、更新時には(6つのパラメーターと異なるデータ型が含まれています)異なる値があります.両方のケースで単一のストアドプロシージャを使用したい(挿入/更新) パラメータを管理するにはどうすればよいですか?
手順
domain-driven-design - CQRS/ES デノーマライザー
イベント ソーシングと CQRS を使用する請求 Web アプリケーションに取り組んでいます。
さまざまなクエリに対して 2 つのデノーマライザーがあります (1 つは請求書の概要のリスト用で、もう 1 つは完全な詳細を含む単一の請求書用です)。これら 2 つのデノーマライザーの多くのロジックをコピーする必要があるのは奇妙だと思います。たとえば、合計、小計、税金などを変更するイベントをリッスンします。
イベントだけでなく、実際に計算されたデータを含む集計自体をメッセージング バスに渡し、デノーマライザーにイベントの代わりにそれをリッスンさせました。
これは私にとっては簡単になりましたが、パターンとは異なるようです。このアプローチは、私が読んだどの記事にも記載されていませんでした。
バス上でイベントだけを渡し、各デノーマライザーが必要なものに反応するというアイデアは気に入りましたが、実際にはもっと面倒に感じました。
ご意見をお待ちしております。
ご協力いただきありがとうございます!
java - クリーン アーキテクチャで 1 対多の関係をどのように実装しますか
クリーン アーキテクチャの使用に問題があります。Fernando Cejas のブログ投稿 http://fernandocejas.com/2014/09/03/architecting-android-the-clean-way/を読んだ方へ、私の質問はそれに基づいており、彼のコードです。
彼のサンプル プロジェクトには、ユーザーごとに 1 つのドメイン オブジェクトしかありません。そして、POJO を使えばすべてが明確になります。私が問題を抱えているのは、ユーザーが本を持っているとしましょう。一対多の関係。これをクリーン アーキテクチャでどのように処理しますか?
彼と同じように、私はいくつかのレイヤーを持っているので、ドメイン オブジェクトごとに 3 つのクラス (User、UserModel、UserEntity) と、ドメイン オブジェクトごとに 1 つのリポジトリ (UserDataRepository) があります。新しい例には、Book、BookModel、BookEntity、および BookDataRepository も含まれます。
また、CRUD のバリエーションを持つユース ケース クラスもあります。
私にとっての問題は、UI/Presenter レベルにあります。プログラムのこの時点で、UserModel オブジェクトと BookModel のリストがあります。userModel.getBooks() がありません。私は userModel.save() を持っていません (これは本の変更もすべて保存します)。
問題を強調するために、この類推を実際のユース ケースにさらに近づけるために、本のすべてのページのリストも用意しました。:) したがって、ユーザーを保存するときは、書籍、および変更された可能性のあるすべての書籍のすべてのページを保存したいと考えています。
これについてどうすればいいですか?
ボーナスの 2 番目の質問: 私の現実の問題では、基本クラスから派生したクラスがあります。上記の類推を使用すると、LeftPage と RightPage は PageBase から派生します。Book にはリストがあります。ただし、LeftPage と RightPage の両方には、別々のリポジトリ、別々のユース ケースなどがあります (しかし、これは機能しません) リストを保存するにはどうすればよいですか?? 別のユースケース SavePages を作成する必要がありますか?
if (pages.elementAt(i) instanceof LeftPage) { SaveLeftPage saveLeft = new..... } else { SaveRightPage saveRight = new..... }
私が見たすべてのドキュメントで、モデルはユースケースを知らないため、ポリモーフィズムを使用できるとは思いません。
お時間をいただきありがとうございます:)
-マイク
activemq - Activemq Artemis などのメッセージ キュー指向の設計
クラスタ化されたフォールト トレラント システムでメッセージ キュー指向の設計を行う際に問題があります。
AB C の 3 つのサイトがあります。
B は B1 B2 B3 としてクラスター化されます。
C は C1 C2 C3 としてクラスター化されます。
メッセージ X (実際には毎秒 1000 ~ 5000 X) がサイト A から B クラスターに送信されます。
BはそれをYに変換し、Cに送信します。
C はそれを Z に変換し、B に送信します。
A と B の間の接続が失敗した場合、A は X を C に送信します。C はそれを Z に変換し、Z を B に送信します。
A のすべての接続が失敗した場合、A は X をローカルに保存します。
以前は Jboss HornetQ だった Apache Activemq Artemis を見てきました。
しかし、それが上記のシナリオを満たしているかどうかを正確に把握することはできません。
私たちを手伝ってくれますか?回答ありがとうございます。
security - 安全でないトランスポート境界を越えたメッセージの送信元を検証する
3つの部分からなるシステムを構築しています。システムA、システムB、システムC。
システム A はシステム C と直接通信できず、システム B を経由する必要があります。システム B には多くのシステム C が含まれている場合があります。ここでのもう 1 つの懸念は、システム B がそれ自体のコピー/クローンを作成し、それを (システム C として) それ自体の下に含めることができるということです。
システム A からすべてのシステム C にメッセージをブロードキャストしたいと考えています。システム B には、カプセル化されたすべてのシステム C のリストが含まれています。システム C にロジックを追加して、システム A から発信されたメッセージのみが有効と見なされるようにします (したがって、以降の処理に対して安全であるとマークされます)。
最初のカットとして、私は diffie-hellman アルゴリズムを介して秘密鍵をネゴシエートすることを考えていました。しかし、システム B はそれ自体のコピーを作成し、それをシステム C のインスタンスとして含め、秘密鍵を取得できることに気付きました。システムC側でソースの信憑性を検証できるように、これを行うためのより良い/標準的な方法はありますか?