これまではプロパティファイルを使って構成情報を管理していましたが、クラスタの場合はマシンごとにコピーを作成し、変更するたびに順番に変更する必要がありました。リアルタイムで有効にし、変更を容易にし、さまざまな環境やシステムの管理を構成できる統合された変更を探しています。気に入ったものが見つからない場合は、自分で作成する予定です。自分のニーズに応じて徐々に改善していきます。 360 の構成管理については中国の Weibo で知りましたが、調べてもわかりませんでした。その後、Baidu のことを知りました。 disconf と Taobao には構成管理もあります。私は最初に Baidu の disconf を見ました。これが私が望むものなので、Taobao の構成管理は見ませんでした。
まず第一に、これは github でホストされているオープンソース プロジェクトです、アドレス: https://github.com/knightliao/disconf、公式ドキュメントはまだ非常に充実しています、アドレス: https://github.com/knightliao /disconf/ ウィキ。最初に公式ドキュメントを読むことをお勧めします。このドキュメントは非常に実用的であり、公式 Web サイトでは言及されていないものの、初心者にとってよくある問題のいくつかについてのみ説明します。これが動作レンダリング図です。
このプロジェクトを見るために必要な知識は次のとおりです: Java 関連テクノロジ、フロントエンド、git、mysql、tomcat、redis、zookeper、nginx で、次の簡単な概要を理解できます。もの。
- git クライアントのインストール、コードのダウンロード、Eclipse のインポート、redis、zookeper、mysql の実行については説明しません。
- Windows で sh スクリプトを実行するためのヒント。
プロジェクトの内容を見るとすぐに、多くの人が Windows 開発環境を使用しているのに対し、これは Linux 環境の開発のみを考慮し、sh スクリプトのみを提供する必要があることがわかります。実際、git クライアントをインストールした後は、Windows で sh スクリプトを実行できます。下の図は、git での sh ソフトウェアと操作の効果を示しています。最初に、システムを変更したため、以前は設定していませんでした。
- nginxをインストールできないのですか?
これは私が公式ディスカッション グループで尋ねたばかりの質問で、私が得た答えは「ノー」でした。そこでは動きと静止の分離について言及されていたため、Baidu はそれを検討し、nginx がここで果たす役割とそれが何であるかを理解しました。そうする必要があるかどうかは、その時になって初めてわかります。それを理解すると、nginx をインストールせずにこれを実現する方法が複数あることがわかります。私は以下の図に示すように 1 つを実装しました。他の方法としては、Baidu springMVC による静的ファイルの処理が挙げられます。 . Tomcatで実行した結果。これにより、正式な環境では、tomcat よりもはるかに高速に静的ファイルを処理する公式の設計方法を使用することをお勧めします。
- 交換グループでのディスカッションを読み、次の点を記録して、修正によって問題がどのように解決されるかを確認し、それを公式 Web サイトにプッシュして、自分のシェアを投稿できます。
1) spring4を使用する場合に問題があるようです。
2) 構成の優先順位を追加し、最初に環境変数を読み取り、次にさまざまな構成ファイルを読み取り、使用可能な構成がない場合はデフォルトの構成を提供することを提案する人もいます。
公式ドキュメントが比較的詳しく書かれているため、disconf 自体の目的や使い方については基本的にここでは触れません。周りの人に質問する前に、公式チュートリアルをよく読むことをお勧めします。