[スパイク] 2、何?スパイクエンジンを行うことができますか?

オリジナル:妹味(マイクロチャネル公共番号ID:xjjdog)、共有してくださいは、ソースを保管してください再現しました。

スパイク・システムは、前回の記事から、複雑なものである見ることができ、説得力の臭いとほぼ5,000の単語長いです。各システムは、一度書き込まれる場合、このような複雑なことは、非常に大きなし尿ことにバインドされています。悪いと考えるの一の態様は、負けていただろう。

これまでのところ、それが募集したシステムを設計するグループチャット技術交流スパイクの最後から8位大きな関心のそのジュニアパートナー、ライターコーディングを。除いて私たちの議論は、スパイクデモの意味を理解した後、我々は、近いステップスパイクエンジンにそれを作ることができます。

ここで、xjjdogは、プロセスを共有することになります。結果は重要ではありません、重要なのはアイデアとプロセスです。あなたは、いくつかのかもしれません框架类、それは願っていかもしれないので、コードの開発経験を。

[スパイク] 2、何?スパイクエンジンを行うことができますか?

ブラックボックス

主なアイデアは、ブラックボックス、スパイクシールドの論理完了としてエンジンを殺すことです。入力、出力端の終わり。言い換えれば、洗浄はどんな元のシステム、残りをスパイクエンジンをかけていない後、あなたは、データをスパイクします。

「繊細なスパイクエンジン、クラウドアクセラレーション、高可用性弾力性のスケーラブルなアーキテクチャ.SLA毎年5〜9、緑の無公害、あなたのビジネスの護衛のために。最適な構成をご支援するプロフェッショナルプリセールステクニカルサポート」ではありません。非常に身近なナンセンススローガン?これは私がちょうど機能を完了し、あなたは私がモンスターです制御、ブラックボックスです。

抽象的な概念

準備、スパイク、清算:プロセスが関係していることから、我々はまた、3つの段階に分類コードをスパイクされます。上記の目的を達成するために、資源はまだ抽象的で、さらに関与する必要があります。ここではいくつかの初期のコンセプトのセット、フォローアップや変更があります。

俳優のスパイク参加

文字通りの意味によると、我々はここで見ることができますつまり、人々が関与して、主操作の抽象的です。アクターは、ユーザの基本情報として、情報の数を添付します。このように、我々はいくつかの個別のフロー制御戦略、またはリスク管理戦略を達成することができます。例えば、論理が存在する場合:新しい登録アカウントが急上昇する資格はありません。その後、俳優の追加情報は、ユーザーの登録時間を含める必要があります。

キューバッファキュー

リクエストキューバッファスパイク、それは最初の着陸場所です。それはメモリキュー、または分散キューであるかどうかは、実際には、操作が似ています。我々はまた、それらを抽象的に見えます。このように、設定パラメータ、動作とパフォーマンスは、スパイクキューを調整することができます。

ソース・データ・ソーススパイク

データプロバイダ。データを外部に(プッシュ)プッシュすることができるから、外部のデータベース(DB)から得ることができる、外部インターフェースも引っ張る(プル)から来るかもしれません。データ収集プロセスは、我々はそれに名前を与え、ソースと呼ばれます。もちろん、拡張機能のこの部分は、ソースESからのデータとして、可能です。

地上スパイクデータをシンクシンク

治療後の主なスパイクは、データの送信先を完了しています。同様に逆の操作であるソース、です。このプロセスは、フロアアクションの株式控除のクラスに似ています。コンポーネントの動作は、おそらく、多分直接メッセージを送信するためにイベントをプッシュする、または。ソースおよびシンクは、目標をスパイクするために特定のデータフローの組成物は、ブラックボックス以外のものです。

ターゲットスパイク目標

名前にターゲットをスパイクする時間です。ターゲットID、商品を識別するために使用されています。これは、エンジン固有の名前のスパイクを持っています。非常に、非常に多くの遅延ロード財かどうかは、そのようなスパイク開始時間、キューの長さなど、ここでの設定パラメータを、パーソナライズされました。

在庫インベントリ操作

ストック操作は、操作情報が随時、シンクのビジネス端に結合される、ブラックボックス手段です。在庫の動作は、その精度とスループットを確保する必要があります。また、これは、当社のコアコンセプトの一つです。

アクションアクション

同様のアクションメッセージ・バス。アクション、アクションは、ライフサイクル全体を通じて、俳優を発生するすべてのアクションのベクトルを意味し、(不変)不変です。アクションがバッファリングされ、追跡、スケジューリング、記録は、エンジンの挙動エンティティ全体に分散されています。

ランタイムリアルタイムオペレーティングユニット

スパイクメッセージバッファ混沌とした期間のための実行時の変更は、原則的には、ログインしてシンクします。我々はに、最終データまで実行されているユニットの操作や判断の多くを行いますBASE状態。

主な流れ

目標

スパイクエンジンは、様々な技術を使用します、我々はねじら手に持っているだけでなく、共有するための方法が必要です。+チュートリアルの途中でソースコードは、より良い結果があるだろう。プログラムの堅牢性を確保するために、我々はできるだけ多くのユニットテスト、コードカバレッジを使用します。システム全体の性能を評価するために、我々は圧力テストツールのいくつかを紹介します。そして最後に、このプロジェクトは、最終的な操作を行い、springboot統合スパイクエンジンを使用します効果。

前記抽象化の一部は、動的交換を行うことができる、およびカスタマイズ拡張モードを提供します。

暫定技術選択

スパイクエンジンは、3つの部分から構成されています。

1のコア
モジュールアセンブリは、重要な概念と実装ロジックをカバーする、様々な開発環境(ちょうど春)で使用するためには、できるだけ依存するであろう。これは、パフォーマンスのための構成パラメータの特に微調整となります。

2、デモの一部
完全な例を示すことなどspringboot、VUE、フラッター、最も人気のある技術を使用して。

3、プログラムの一部
いくつかの特別なシーンの最適化、またはテーマの拡張子は、プログラムが発行した、典型的な代表を持っています。

一言ほとんどのマーケティング力で、それがあります行业解决方案

コード

githubのプロジェクトコード、抽象化の現在一部のみ。興味を追跡することができます。

https://github.com/xjjdog/seckill-engine
复制代码

妹公共マイクロチャンネル番号は、練習の仕方によって、いくつかの過去の知識と散在レビューを言及する価値が状態の変化や技術を追跡の味。

私のマイクロ文字を追加するためにようこそ、前方にあなたの貴重なコメントを置きます。

著者について:妹味(xjjdog)、公衆に迂回プログラマの数を許可していません。インフラとLinuxをフォーカス。ディケイドアーキテクチャ、日百億流れ、あなたはあなたに別の味を与え、高い同時実行の世界を探検。私の個人的なマイクロチャネルxjjdog0、友人を追加し、さらに交流を歓迎します。

おすすめ

転載: juejin.im/post/5d7704fc5188254cf531afb5