テクノロジーの選択
- ゲートウェイ:nginxの、香港、Zuul
- キャッシュ:Redisの、memcachedの、OSCacheの、ehcacheを
- 検索:ElasticSearch、Solrの
- ヒューズ:Hystrix、resilience4j
- ロードバランシング:DNS、F5、LVS、Nginxは、OpenResty、HAproxy
- 登録センター:ユーレカ、飼育係、Redisの、Etcd、領事
- 認証認証:JWT
- 消費者キュー:RabbitMQの、ZeroMQ、Redisの、ActiveMQの、カフカ
- システムは、監視:Grafana、プロメテウス、Influxdb、Telegraf、Lepusを
- ファイルシステム:OSS、NFS、FastDFS、MogileFS
- RPCフレームワーク:ダボ、Motan、スリフト、grpc
- ビルドツール:Mavenの、のGradle
- 統合の展開:ドッカー、ジェンキンス、Gitは、Mavenの
- 分散構成:Disconf、アポロ、春の雲Configを、ダイヤモンド
- 压测:LoadRunnerは、JMeterは、AB、のWebBench
- データベース:MySQLは、Redisを、MongoDBの、PostgreSQLの、Memcacheの、HBaseの
- ネットワーク:プライベートネットワークVPC、弾性パブリックネットワークIP、CDN
- データベースミドルウェア:DRDS、Mycat、360アトラス、コバー(維持されません)
- 分散フレームワーク:ダボ、Motan、春でした
- 分散型ミッション:XXL-JOB、弾仕事、土星、クォーツ
- 分散型トラック:ピンポイント、CAT、zipkin
- 分散型ログ:elasticsearch、logstash、Kibana、Redisの、カフカ
- リリース:青、緑、展開、A / Bテスト、グレーパブリッシュ/カナリア放出
連続配信
リンクモニタリング
アーキテクチャの監視
四つの監視
- フロントエンド制御:IP、PV、事業者、システムパフォーマンス、ステータスコード
- ビジネスのモニタリング:ログイン、登録、注文、有料
- サービス、SQL、キャッシュ、対応時間:アプリケーション層の監視
- システム監視:物理マシン、仮想マシン、コンテナ、CPU、メモリ、IO、ハードディスク
- 基本的なモニタリング:ネットワークスイッチ、ルータ
監視分類
- ログ監視
- コールチェーンの監視
- 警告システム
- メトリックの監視
- モニタリング検査
ドッカー、Grafana、プロメテウス、Telegraf、Influxdb、Lepus、Elasticsearch、Logstash、Kibana、カフカ、ノードプラグ、ダッシュボードダッシュボード、釘、電子メール、マイクロチャネル。
サービスフレームワークとガバナンス
エッセンシャルアーキテクチャ
- ロードバランシング(負荷分散アルゴリズム)
- リバースプロキシ
- サービスの分離
- サービスを制限
- サービス低下(自動縮退)
- フェイルオーバー
- 再試行タイムアウト(タイムアウト剤容器タイムアウト、タイムアウトフロントエンド、ミドルウェアタイムアウトデータベースタイムアウト、タイムアウトNOSQL)
- ロールバックメカニズム(ロールバックのオンラインデータベースのバージョンにロールバックトランザクションのロールバック)
高い同時実行
- アプリケーションキャッシュ
- HTTPキャッシング
- マルチレベルキャッシュ
- 分散キャッシュ
- 接続プーリング
- 非同期同時
分散トランザクション
- 二相は、プロトコル(強い合意を)犯します
- 三相コミット(強い同意)
- ミドルウェア(結果整合性)をメッセージング、アリRocketMQをお勧めします
キュー
- タスクキュー
- メッセージキュー
- リクエストキュー
拡張
- 垂直方向の拡張性モノマー
- モノマーレベルの拡張
- アプリケーションのスプリット
- データベース分割
- サブライブラリーサブテーブルデータベース
- 異種データ
- 分散型ミッション
ネットワークセキュリティ
- SQLインジェクション
- XSS攻撃
- CSRF攻撃
- サービス拒否(DoS攻撃、サービス拒否)攻撃