oim-server は、Java 言語で開発され、Spring Cloud マイクロサービス アーキテクチャを使用する OIM チャット システムのサーバー側です。マシンが十分である限り、ユーザーは問題ありません。
OIM サービスは、Java 言語を使用して開発され、Spring クラウド マイクロサービス システムに基づいて開発されたインスタント メッセージング サーバーのセットです。 スタンドアロンマシンからマイクロサービスまで展開可能なソリューションを提供しており、スタンドアロンマシンとマイクロサービスの両方をスムーズに切り替えることができ、クライアントはサービスの変更を意識することなく利用できます。
特徴
oim-server を使用すると、Spring MVC のようなインスタント メッセージング インターフェイスを開発できます。Web バックグラウンド開発の経験はあるが、インスタント メッセージング サーバーの経験がない開発者は、簡単に変換でき、Spring Web インターフェイスと互換性があります。以下のような例
リクエストインターフェイス @RestControllerpublic class UserController {/** * * ログイン
* 日付 2019-02-17 12:26:38
* * @param user * @since 1.0.0 */@ActionMapping(value = " /user/login") // このルートは http post を使用してパブリック ユーザー ログインをリクエストすることもできます (@Define("body.user") User user) { // "body.user" (この本文は、http プロトコルの本文ではなく、json の本文フィールドです) // http または tcp のメッセージ本文の json 属性パスです {"body":{"user":{ }}}// ...実装コンテンツを省略してユーザーを返します;}}
カタログの説明
|__oim-server-run #Java サービス|__cloud #マイクロサービスの実行バージョン|__common #パブリックに依存する jar |__oim-server-element-basic-* #これらは、いくつかの抽象的な定義を含め、スタンドアロンとマイクロサービスの両方が依存する部分ですサービスとスタンドアロン マシンには異なる実装があります|__oim-server-element-cloud-* #これらはマイクロサービスに必要な依存関係であり、マイクロサービスの一部の実装です|__service #実行中の各マイクロサービス|__core #登録センター、ゲートウェイなどの主に技術管理タイプのマイクロサービス |__action #すべてのサービスのインターフェイス アドレスを収集し、ゲートウェイがサービス名を構成せずにインターフェイス アドレスを通じて対応するサービスに直接アクセスできるようにします |__admin #Only Spring Boot admin と統合 |__center #登録センター|__gateway #ゲートウェイ|__net #インスタント メッセージング用の TCP や WebSocket などの長時間接続サービス|__control は、(ネットワーク) ユーザー クライアントの長時間接続サービスの管理に使用されます|__ワーク ユーザー クライアントの長時間接続サービス|__サポート#ファイルアップロードなどのパブリックサポートサービス |__file |__system #システム全体の設定、共有データなど |__setting # |__work #ビジネスサービス (ビジネスが長すぎるため、この名前が付けやすい場所は他にもあります) use) |__chat # チャットビジネス|__contact #連絡先|__core #コア: user|__group #グループ|__portal #サービスアドレス入口|__single # |__oim-server-single-main #スタンドアロンとマイクロサービスの機能モジュールは共有されるため、ここでは抽象的なスタンドアロン実装をいくつか示します|__oim-server-single-running #サービス構成の開始|__oim-server-web # Vue バックグラウンド管理インターフェイス
OIM 開発手順
1. 環境要件
JDK 1.8.0_xxx
DB は MySQL をサポート Oracle SQL サーバー MySQL 8.0 を推奨
マイクロサービスには次のものも必要です
レディス
RaadfdsitMQ
2. マイクロサービスのバージョンとその利用について
ビジネスコードとマイクロサービス版のビジネスコードは共有されているため、ビジネスモジュールはすべてマイクロサービスディレクトリにあります。違いがあるのは IM ロング接続の処理のみであるため、スタンドアロン マシンとマイクロサービスは異なる方法で処理する必要があります。
この場所はインターフェイスに抽象化され、さまざまなスタートアップ サービスに実装されます。
3. 一部ダウンロードできない依存関係について
一部の依存関係は Maven 中央ライブラリに公開されておらず、私のプライベート ライブラリにあるため、Maven グローバル構成ファイル (通常はユーザー ディレクトリ .m2/setting.xml) で構成できません。
ミラーサービス(中間部分をコメントまたは削除)
プライベート ライブラリ Maven 構成プロジェクトが構成されました
4. データベーススクリプトについて
最初にデータベースを作成し、データベース構成を変更して、自動テーブル作成を開始するだけです。現在、デフォルトの H2 データベースでのテーブルの作成に問題があります。MySQL 8.0 を使用することをお勧めします。