あなたが最も複雑なシステムをやっ紹介する「インタビューの質問」

多くの場合、誰かが要求されます:あなたは、最も複雑なシステムの下でやった教えてください。この点で、あなたは基準が複雑に考慮したものについて考え、それについて聞かれていますか?

技術的な複雑さや操作の複雑さを含むシステムの複雑さ、。

誰かが訴え:私は、あなたがアクセスサブライブラリサブテーブルを持っていない、我々は持っていないデータの量ではなく、複雑なシステムを参照してくださいか、ビジネスは複雑ではない、単一のシステムが十分にある、どのような負荷分散とクラスタリングを流れていませんでした大規模ではない、高並行性と分布が公開されていません。

技術の複雑さは、私は上記のあなたのビジネスの成長に合わせて、当社のシステムアーキテクチャは、大規模なデータと高い同時実行をサポートする必要があるので、データベースレベルで、出て生まれた複雑なシステムアーキテクチャは、サブライブラリーサブテーブルを検討するために、考慮される言及は何ですか、別の読み取りおよび書き込み、スタンバイ切り替え。

クエリのパフォーマンスと単一の問題を改善するために、分散キャッシュ不可欠。

ピーク電流制限切り離され、分散メッセージングミドルウェアを販売し、サービスするために費やさなければなりません。

、大きなプロモーション時の安定性を確保するために、だけでなく、機械自動的にスケーラブル、サービス低下、サービスの分離、サービスヒューズ、サービスを制限する、などが一般的にルーチンを使用しています。

また、分散システム分散スケジューリング、分散制御システム、分散型ログシステム、分散収集とそのリンクがあります。実際には、システムが分散され、単一障害点が耐え難いあります。ここでは、このシステムは、あまりにもそれを複雑になっていると感じています。高可用性、拡張性の高い分散システムを構築するために、確かに複雑です。

しかし、技術的な技術アーキテクチャの複雑さが、これは一つがいっぱい。

ただ、考えて、複雑なアルゴリズムそれの技術的な複雑さを数えますか?私はそれを考えることができると思います。私たちは多くの複雑なビジネス上の問題を解決することができます良いアルゴリズム。

私たちは、アルゴリズムを非エンジニアにとって、それはビジネス上の問題に変換することができればここで、アルゴリズムの問​​題は、私は、ビジネス・インテリジェンスと大きな一歩から、その後、人工知能に事業を問題に変換することができます。

AIは、部分的なビジネスフロアの多くの実用的な側面にも、私たちは物事を行うことができ、それは、多くのことなど、このような流れの制限トークンバケットとして遅延「時間ループ」アルゴリズムキュー、ZKセッション分のバケットアルゴリズムとして、近くに何かについて話すことができたと述べました金のフルは、言い換えれば、送風力レベルは、いくつかのレベルカザフスタンを増加させることができます。技術的な複雑さは、また、データ書き込みの同期との整合性の問題を解決するために集計クエリを複数のデータソースを解決するために問題になる可能性があります。情報提供を唯一の目的のための触媒としての役割を果たす。

操作の複雑さという:異なるサービスやビジネス干渉との相互作用の前に。

フィットさまざまな企業や企業がカスタマイズ要件を行うので、ほとんどの製品やプロジェクトのパートナーは完全に、私が言ったことの意味を理解しておく必要があります行わ2Bは、より多くの製品につながる特に、この強力なビジネスカスタムERPシステムでは、普遍的にすることはできません。

だから、同様のロジックとコードの複数のセットを維持するために莫大な費用のことであるので、スケーラブルなシステムの設計が特に重要です。多くの場合、我々は、需要が予測できない変化します。この予測不可能性は、正確なビジネスの複雑さが配置されています。

実際には、アーキテクチャは、現在の設計に基づいており、設計品質こと:それは急速にビジネスをサポートできるかどうか。言い換えれば、このデザインが良いか悪いか、私は現在のビジネスを満たすようにシステムを設計し、それが後半に拡張することができないのですか?また、当社は、ドメインモデルに基づいた優れた設計を行っているが、ビジネスの発展と、各モデルが重いのカップリング。

まあ、ドメインモデルが速すぎて、不合理不合理またはアーキテクチャ、あるいは事業展開を検討していますか?それとも、再び問題を考えます。ビジネスの概念は非常に良好であることを台湾の企業は、また、着陸を練習するつもりが、その後、それはビジネスの比較的薄いですので、この時点では、台湾におけるユニバーサルサービスの設計を行うのですか?私は個人的には、言うのは難しい感じ。

実際には、特定の問題を解決するために、徐々にビジネスモデルに安定したサービスの唯一の薄いビジネス機能を提供するためにのみ、元から養わビジネスナリッシュを維持する必要があります。「テンプレートメソッドパターン」と呼ばれるパターンデザインパターンは、そのコアアイデアは違いを手渡し、ダウン硬化の公開プロセスを達成するために、特定のビジネス面を指していることで、あります。それはありませんが、唯一の我々は十分なビジネスシナリオよりも多くを持って、我々はこれらの公共ロジックを沈殿させることができ、それらは拡張ポイントがあり、その後、業務設計プロセスでは、我々はこのビジネスでカスタム実装を行うためのサブクラスを達成するため、または提供することができますSPIの当事者が展開するビジネスに関与しました。

要約すると、ビジネスの複雑さ:ビジネスの相互作用と干渉するさまざまなビジネスの前に、私たちは変化する需要が予測不可能です。

私はそれが終わることを言ったと思いますか?もちろん、ありません。私はあなたの思考の多くをしたいと私たちの思考の衝突につながります。例えば、多くの人々は、彼らがCRUDエンジニアであることを訴えます。

私はこれらの人々が自分の価値を過小評価だと思います。ビジネスの価値と複雑さは、多くの場合、CRUDではなく、ビジネスの考え方の価値。ラインのオンラインサービス、スタッフの伝統的なラインは、それは能力構造化ストレージを持っており、他のデータが、それは貴重なコーディネートすることができます。

また、あなたはCRUDプロセスの自動化ができなくなっています、そして、あなたは1分を取得し、何かを得るために1日だったビジネスの違いを達成するために59分かかりました。することができます、もちろんありません。その後、観測モード、アダプタモード、プロキシモード、責任カザフスタン、を介して取得するプロセステンプレートメソッドパターンを硬化させ、それを得るためにポリシーモード+工場パターンを介して多分岐の問題のためのフレームワークを作成し、圧縮して59分を置くことができません状態モデルを使用して、チェーン・モデルを使用することができます。実際には、デザインパターンの多くは、複雑なビジネスシナリオスケーラブルな経験ルーチンを解決するために。

要約すると、システムの複雑さは、技術的な複雑さや操作の複雑さが含まれます。私たちは、認知の限界を打破するために、成長し、学ぶために、一緒にチャット!

おすすめ

転載: blog.51cto.com/14230003/2434666