技術的なアーキテクチャ設計と選択のまとめ!

:より転載http://www.pinlue.com/article/2020/03/0508/059982901128.html

 

本論文では、知識だけアーキテクチャ設計上の考慮事項は、詳細に特定の知識を持っていません。

まず、トップレベルのアーキテクチャ

Linux / Windowsプラットフォーム、CS / BSアーキテクチャ、ビッグデータアーキテクチャ、アプリケーション(ゲーム、インターネット、伝統産業など)

第二に、CSクライアントの技術的な選択

1、GUI開発技術

(1)マイクロソフトの技術システム

MFC、Winフォーム、WPF、UWP

(2)Javaテクノロジシステム

JavaのAWT、Javaのスイング、JavaFXの

(3)Pythonの技術システム

絶望では、PyQtは、PyGUI、Libavg、wxPythonを

2、携帯端末の技術開発

ネイティブアプリ:アンドロイド、IOS、WP

小型マイクロチャネルプログラム

プログレッシブWebアプリケーション:エンド・モバイル向けのWebアプリケーション。

3、コンソールプログラム

第三に、内BSブラウザ技術選択

1、マイクロソフトの技術システム

Asp.net、Asp.net MVC、Silverlightは、IIS

2、Javaテクノロジシステム

JSP +サーブレット+ Strutsの+休止+春、Tomcatの

3、他の技術

HTML5、JS、AJAX、CSS3、HTTP / HTTPS

JSフレームワーク:jQueryの、角度JS、ブートストラップ、jQueryのUI、内線JS、道場、プロトタイプJS、プロトタイプJS(DOM解析、Ajaxの処理、CSSのサポート、JSONサポート、ブラウザの互換性)

四、CS Serverテクノロジの選択とBSの終わり

1、マイクロソフトの技術システム

ASP.NET Webサービス、WCF、WebAPIの

2、Javaテクノロジシステム

JavaのWebサービス

3、REST、マイクロサービス

4、およびデータベースアクセス技術

(1)データベース製品

SQL Serverのは、MySQLやOracle、DB2、Postgre、Redisの

(2)データベースアクセス技術

JDBC、ADO.NET、ORM技術

5、メッセージキュー技術

(1)のRabbitMQ

Erlangのは、ヘビー級のメッセージ・キューを開発し、多くのプロトコルをサポートしています。AMQP、XMPP、SMTP、STOMP。ロードバランシング(負荷分散)、(ルーティング)ルーティングやデータ持続性は非常に良いサポートを持っています。

(2)のRedis

NoSQLデータベースのキー値。しかし、MQサポート機能。軽量キューサービスを提供します。かかわらず、データサイズのパフォーマンス、RedisのチームがRabbitMQのよりも優れて動作させます。パフォーマンスと操作チームのサイズに関連するデータの量。

(3)ZeroMQ

最速のメッセージキューイングシステム、高スループットのシナリオのための特定の需要として知られています。技術的な複雑さが高いです。ユニークな非中間パターンを有していない、とメッセージサーバミドルウェアをインストールまたは実行する必要、単にZeroMQの参照ライブラリZeroMQは、不快なアプリケーション間でメッセージを送ることができます。ZeroMQは唯一の非永続キュー。

(4)ActiveMQの

同様ZeroMQは、それがピア・技術へのエージェントとピアとしてキューに入れることができます。

(5)Jafka /カフカ

カフカは、高性能クロス言語は、メッセージキューイングシステムをパブリッシュ/サブスクライブ分散であり、そしてJafkaはカフカハッチが来る上に、カフカのアップグレードバージョンであることです。Hadoopの並列データローディングをサポートする迅速な永続的な、ハイスループット、完全に分散型システム。

(6)ケストレル

高速、コンパクト、耐久性、信頼性、クラスタリングのサポート、柔軟な構成。使用ScalaはJVM上で実行するように開発されました。ハードディスク上の永続化のためのログを保持しながら、実行時には、キューは、メモリに格納されます。マルチプロトコルサポートリクエスト:memcacheのプロトコル、テキストプロトコル、貯蓄契約。

(7)MSMQ

安定性、メッセージの優先度、オフライン機能、トランザクション・メッセージング、セキュリティ、弾力性、Windowsプラットフォームに適しています。

ファイブビッグデータ技術

1、Hadoopの技術要素

HDFS:Hadoopの分散ファイルシステム

ハイブ:データウェアハウス

HBaseの:分散データベース

飼育係:分散アプリケーションのためのコーディネーションサービス

Sqoop:リレーショナル・データベース・ツールHDFSへ

スリフト:クロスランゲージサービス展開のフレームワーク

マップ/削減:分散コンピューティングフレームワーク

YARN:Hadoopのリソース管理システム

カフカ:分散パブリッシュ・サブスクライブ・メッセージングシステム

水路:Clouderaのは、高可用性、信頼性の高い、分散型の大規模なログ収集、集約および伝送システムを提供します

2、スパーク技術コンポーネント

スパークコア

スパークSQL

スパークストリーミング

スパークMLlib

Graphx

3、NOSQLデータベース

カサンドラ

MongoDBの

CouchDBの

Redisの

波紋

MemBase値

Neo4j

HBaseの

4、大規模なデータセキュリティ技術

第六に、大規模なデータベース以外では、あなたはまた、これらの将来の技術を知っている必要があります

1、人工知能、機械学習と深い学習

テクノロジー:決定木学習、導出論理プログラミング、クラスタリング、および伝統的な学習アルゴリズムとベイジアンネットワークの多様性を強化し、人工ニューラルネットワーク。

アプリケーション:無人(百度、グーグル)、インテリジェント尋問(「ワトソン」)、エンジン(音声、画像)、機械翻訳、音声アシスタント(シリ、フナ、ウィートグラス、IFLYTEK)、インテリジェントな勧告を検索、チェス。

2、クラウドコンピューティング

テクノロジー:仮想化技術、IAAS技術、PAAS技術、SAAS技術

用途:クラウド物事、クラウドセキュリティ、クラウドストレージ、プライベートクラウド、クラウドゲーム、雲の教育。

3つの事

技術:RFID技術、GPS技術、北斗システム、GSM / GPRS / CDMA移動通信技術、GIS技術、センサー技術、組み込みシステム技術。

アプリケーション:インテリジェント交通、インテリジェントビル、デジタルホーム、デジタルライブラリ、デジタルアーカイブ、デジタルミュージアム、遺産の保全、環境保護、物流管理、食品の安全管理、デジタル健康、アンチ侵入テクノロジー、小売、ポジショニングとナビゲーション。

4、コンテナ技術

(1)一般的なCONTAINER

Linuxベースのドッカー容器、SolarisのゾーンまたはFreeBSDの刑務所。

Microsoftは、Windowsの容器を開発し、ドッカーと協力しています。

コンテナおよび仮想マシン技術の差(2)

軽量性を有する容器は、非常に高速な起動速度を提供し、より少ないメモリ空間を必要とし、仮想マシンは、セキュリティ、特定のオペレーティング・システムは、より堅牢かつ論理的な境界である提供します。

5、VR、AR、MR技術

VR:仮想現実は没入型の一般的なようにユーザーをできるように、視覚、聴覚、触覚や他の感覚のためのユーザーのシミュレーションを提供する、3次元仮想世界を生成するために、コンピュータシミュレーションを使用することで、時間内に、3次元内観察する制限はありません物事。

AR:コンピュータ技術による拡張現実感、同じ画面またはスペースが存在に重畳リアルタイムで現実世界に仮想情報の応用、実環境と仮想物体。

MR:複合現実感もマージ現実を参照して、仮想強化と仮想世界が新たな可視化環境を生成するステップと、両方の拡張現実を含んでいます。物理的およびデジタルオブジェクトの新しい可視化環境での共存、およびリアルタイムの相互作用。

他の七

1、コーディング標準を開発します

開発の2、ソフトウェア工学の段階

QA -PG-IT-ET-OT-ST

3、コード管理技術

SVN、CVS、Gitの

4、バグ管理技術

そこでは、BugFree

5、ユニットテストと自動テスト技術

デザインパターンと設計パターンの6、6つの原則

7、MVC / MVP / MVVM

8、その他の技術の点を考慮する必要が

(1)コンテナ

(2)マルチスレッド

(3)同期および非同期

(4)プロセスまたはスレッド間の通信

(5)通信プロトコル

(6)リソース管理

(7)メモリリーク

(8)システムログ

(9)例外システム

(10)検証システム

(11)複数の要因を考慮すべき

データの量スループット、パフォーマンス、リアルタイム、拡張性、保守性、可用性、信頼性、

公開された60元の記事 ウォン称賛52 ビュー110 000 +

おすすめ

転載: blog.csdn.net/yihuliunian/article/details/104672012