Kami memiliki produk yang UI dikemas sebagai WAR terpisah dan server dikemas sebagai file WAR terpisah. Saat ini kedua WAR ini diterapkan dalam wadah aplikasi yang sama. Berikut adalah pro dan kontra dari pendekatan ini yang saya temukan:
Kelebihan memiliki perang yang berbeda: 1. Saya merasa memiliki dua PERANG yang berbeda memungkinkan saya fleksibilitas dalam memfaktorkan ulang UI atau kode sisi server tanpa memengaruhi yang lain. 2. Untuk memaksimalkan penggunaan memori, saya dapat menyebarkannya dalam dua wadah berbeda. jadi jika sebelumnya saya menggunakan 2 GB untuk seluruh jboss (katakanlah saya menggunakan jboss), sekarang saya berpotensi menggunakan 4 gb jika digunakan di dua server aplikasi jboss yang berbeda (tentu saja no port yang berbeda.) 3. Saya dapat menskalakan aplikasi saya. Jika besok, saya melihat bahwa server adalah hambatan saya, maka saya dapat membuat server farm, (untuk modul server saya saja), karena server itu sendiri adalah WAR yang berbeda, tanpa mengganggu UI WAR. 4. Dipasangkan secara longgar dan memberi saya berbagai titik integrasi
Kekurangan: 1. Untuk UI, saya menggunakan primefaces. saya tidak melihat kasus penggunaan di mana saya bisa melihat kerangka integrasi seperti nilai tambah jahitan. Adakah yang bisa memberi tahu saya apakah memiliki kerangka integrasi masuk akal untuk perang UI saya? Pada dasarnya, kesenangan dari jahitan adalah integrasi luar biasa yang disediakannya dengan UI, EJB, dan hal-hal lainnya. Oleh karena itu, saya tidak melihat terlalu banyak nilai di sini karena formulir saya akan meminta API lainnya untuk melakukan semua pemrosesan.
Dapatkah seseorang memberi tahu saya apakah memiliki banyak perang benar-benar membantu dalam skalabilitas dan pemeliharaan. Misalnya, salah satu keuntungan yang saya lihat adalah jika saya memiliki dua perang dan saya perlu meningkatkan platform server, saya tidak perlu menurunkan UI saya. Adakah manfaat lain selain yang saya sebutkan di atas?
Selain itu, saya ingin memahami jika semuanya dikemas sebagai EAR, bagaimana Anda menskalakan lapisan tertentu dari arsitektur kami. Seperti disebutkan di atas, jika saya merasa lapisan server adalah hambatannya, jika terjadi salah satu WAR/EAR, bagaimana saya menskalakan aplikasi saya?
Saya masih tidak yakin apakah saya perlu melanjutkan model WAR yang berbeda di server aplikasi yang berbeda, atau haruskah saya hanya memiliki satu WAR untuk keseluruhan aplikasi saya? Mohon petunjuk...