oim-server adalah sisi server dari sistem obrolan OIM, dikembangkan dalam bahasa Java dan menggunakan arsitektur layanan mikro Spring Cloud Selama mesin mencukupi, pengguna tidak menjadi masalah.
Layanan OIM adalah seperangkat server pesan instan yang dikembangkan menggunakan bahasa Java dan berdasarkan sistem layanan mikro cloud pegas. Solusi yang dapat diterapkan disediakan dari mesin yang berdiri sendiri hingga layanan mikro, dan mesin yang berdiri sendiri serta layanan mikro dapat dialihkan dengan lancar, dan klien tidak menyadari perubahan layanan.
Fitur
oim-server memungkinkan Anda mengembangkan antarmuka pesan instan seperti spring mvc. Bagi pengembang yang memiliki pengalaman pengembangan latar belakang web tetapi tidak memiliki pengalaman server pesan instan, mereka dapat dengan mudah mengonversi dan kompatibel dengan antarmuka web pegas. Contohnya seperti di bawah ini
Antarmuka permintaan kelas @RestControllerpublic UserController {/** * * Login
* Tanggal 17-02-2019 12:26:38
* * @param pengguna * @since 1.0.0 */@ActionMapping(value = " /user/login") // Rute ini juga dapat menggunakan kiriman http untuk meminta login Pengguna publik(@Define("body.user") Pengguna pengguna) { // "body.user" (badan ini adalah bidang isi di json , Bukan isi protokol http) // Ini adalah jalur atribut json dari isi pesan di http atau tcp {"body":{"user":{}}}// ...Hilangkan pengguna pengembalian konten implementasi ;}}
Deskripsi katalog
|__oim-server-run #Java service|__cloud #Microservice versi yang berjalan|__common #Publicly dependen jar |__oim-server-element-basic-* #Ini adalah bagian yang bergantung pada layanan yang berdiri sendiri dan layanan mikro, termasuk beberapa definisi abstrak . Layanan dan mesin yang berdiri sendiri memiliki implementasi yang berbeda |__oim-server-element-cloud-* #Ini adalah dependensi yang diperlukan oleh layanan mikro, beberapa implementasi untuk layanan mikro|__service #Setiap layanan mikro yang berjalan |__core #Terutama layanan mikro jenis manajemen teknis Layanan seperti : pusat registrasi, gateway, dll. |__action #Kumpulkan alamat antarmuka semua layanan, sehingga gateway dapat langsung mengakses layanan terkait melalui alamat antarmuka tanpa mengonfigurasi nama layanan |__admin #Hanya admin booting pegas terintegrasi |__center #Registrasi center|. __gateway #Gateway|__net #TCP, WebSocket dan layanan koneksi jangka panjang lainnya untuk pesan instan|__control digunakan untuk mengelola layanan koneksi jangka panjang klien pengguna (jaringan)|__layanan koneksi jangka panjang klien pengguna kerja|__dukungan #Layanan dukungan publik seperti: unggah file |__file |__sistem #Konfigurasi, data umum, dll. untuk keseluruhan sistem |__setting # |__pekerjaan #Layanan bisnis (karena bisnis terlalu panjang, ada tempat lain di mana nama ini mudah untuk gunakan) |__chat #Obrolan bisnis |__kontak #Kontak orang|. __core #Inti: Pengguna|__grup #Grup|__portal #Entri alamat layanan|__single # |__oim-server-single-main # Karena modul fungsionalnya berdiri sendiri dan layanan mikro dibagikan, berikut adalah beberapa implementasi abstrak yang berdiri sendiri |__oim- server-single-running #Mulai konfigurasi layanan|__oim-server-web #Vue antarmuka manajemen latar belakang
Petunjuk pengembangan OIM
1. Persyaratan lingkungan
JDK 1.8.0_xxx
DB mendukung MySQL Oracle SQL server MySQL 8.0 direkomendasikan
Layanan mikro juga memerlukan hal berikut
ulang
RaadfdsitMQ
2. Tentang versi microservice dan penggunaannya
Kode bisnis dan kode bisnis versi layanan mikro dibagikan, sehingga semua modul bisnis ada di direktori layanan mikro. Hanya ada perbedaan dalam pemrosesan koneksi panjang IM, sehingga mesin dan layanan mikro yang berdiri sendiri perlu ditangani secara berbeda.
Tempat tersebut diabstraksi menjadi sebuah antarmuka dan diimplementasikan di berbagai layanan startup.
3. Mengenai beberapa dependensi yang tidak dapat diunduh
Karena beberapa dependensi belum dipublikasikan ke perpustakaan pusat maven, tetapi berada di perpustakaan pribadi saya, dependensi tersebut tidak dapat dikonfigurasi di file konfigurasi global maven (biasanya di direktori pengguna.m2/setting.xml)
Layanan mirror (komentar atau hapus bagian tengah)
Proyek konfigurasi pakar perpustakaan pribadi telah dikonfigurasi
4. Tentang skrip database
Cukup buat database terlebih dahulu, ubah konfigurasi database, dan mulai pembuatan tabel otomatis. Saat ini ada masalah saat membuat tabel di database H2 default. Disarankan untuk menggunakan MySQL 8.0.