cari

Rumah  >  Soal Jawab  >  teks badan

nginx - Apakah senario yang berkenaan untuk penggunaan pakej WAR projek JAVA?

Apabila menggunakan projek, saya sentiasa menggunakan folder untuk menggunakan projek Baru-baru ini, saya cuba menggunakan penggunaan projek pakej WAR dan menghadapi masalah berikut:

Berbanding dengan kaedah folder sebelum ini, memang menyusahkan saya ingin bertanya kepada pelajar yang berpengalaman:

  1. Apakah senario aplikasi yang anda hadapi menggunakan pakej WAR?

  2. Bagaimana untuk menyelesaikan masalah yang saya hadapi?

typechotypecho2715 hari yang lalu2118

membalas semua(2)saya akan balas

  • 怪我咯

    怪我咯2017-06-17 09:19:11

    Berikut ialah pengalaman operasi dan penyelenggaraan sebenar saya:

    1. Konfigurasi hendaklah bebas daripada projek, supaya pakej perang boleh dibuat sekali sahaja dan digunakan pada persekitaran yang berbeza

    2. Gunakan alat operasi dan penyelenggaraan automatik seperti SaltStack, Ansible atau Jenkins untuk membantu anda melaksanakan operasi kelompok

    3. Jika anda menjangkakan bahawa sumber statik akan berubah dengan kerap, adalah lebih baik untuk memisahkannya daripada projek Java dan menempatkannya ke tapak yang berbeza, atau gunakan nginx untuk lencongan

    4. Adalah disyorkan untuk menggunakan program untuk menyahmampat fail perang (daripada membiarkan Tomcat menyahmampatnya dengan sendirinya), hentikan Tomcat, gunakan ln -s untuk mengarahkan direktori ROOT ke direktori baharu, dan kemudian mulakan Tomcat, supaya Tomcat akan berjalan dengan lebih lancar

    5. Jangan padamkan direktori lama buat masa ini Jika pemasangan salah, gunakan ln -s untuk menukar direktori ROOT kepada yang lama untuk mencapai rollback yang cepat.

    balas
    0
  • 大家讲道理

    大家讲道理2017-06-17 09:19:11

    Pengalaman praktikal:
    Projek yang saya kendalikan semuanya diterbitkan dalam bentuk direktori pada struktur direktori web:

    DOMAINS                   --域
    └─domainA                 --域A
        └─apps                --应用
            └─app1            --应用1
                ├─deploy      --部署
                │  ├─src      --Java源代码(仅限项目实施开发的源代码,不包含应用库的源代码),服务器统一编译一次防止Java版本问题以及编码问题
                │  └─war      --标准war包结构
                ├─patch       --增量更新目录
                ├─runtime     --运行时目录,日志,用户文件之类的
                └─tmp         --临时目录
           

    Saya menulis beberapa skrip shell mengikut struktur standard ini untuk mengautomasikan tugas operasi dan penyelenggaraan, termasuk memulakan, menghentikan, memantau, mengemas kini, dll. Ia sebenarnya hanya mengambil masa beberapa hari dan tidak banyak kod, tetapi sekarang saya tidak pernah melakukannya secara manual lagi. Atas urusan operasi dan penyelenggaraan.

    Proses asas ialah: penyerahan pembangunan kod-->Pakej kemas kini tambahan eksport SVN-->muat naik ke pelayan-->laksanakan pada pelayan

    Jika anda menukar halaman HTML, anda perlu membungkusnya semula Bagaimana jika anda memasukkan fail yang salah? Yang statik boleh diterbitkan secara berasingan, jadi jika saya hanya menukar JAVA, saya perlu membungkusnya semula dan layak?

    Tiada bekas yang benar-benar menerbitkan dan menyediakan aplikasi dalam pakej perang Semuanya dinyahmampatkan ke lokasi sementara Pakej perang adalah dalam format mampat Anda mesti membenarkan mana-mana bekas membaca sumber dalam fail dimampatkan. Akan ada isu prestasi (sekurang-kurangnya untuk JSP).

    Ini adalah penyelesaian peribadi saya untuk beberapa projek kecil Untuk projek besar, anda mungkin memerlukan rantai alat proses penuh, iaitu penyepaduan berterusan atau sesuatu.

    balas
    0
  • Batalbalas