Я использую возможности сервера eclipse для развертывания горячего кода. Использование tomcat в качестве веб-сервера. Но я не уверен, как это работает. У меня есть собственное понимание того, как должно работать .Как горячее развертывание работает внутри?
Мое понимание: -. Когда разработчик делает изменения в коде (скажем, класса Employee), Eclipse разместит/опубликовать измененный скомпилированный класс в нужном месте (должен быть определенный сервер веб/приложение позволяет назвать его горячим каталог развертывания (HDD)) под веб-сервером. Теперь будет загружен специальный загрузчик классов для веб-сервера. Он находит новую запись под HDD. Теперь выясняется, был ли класс уже загружен загрузчиком классов в пространстве perm gen, webserver выгрузит его из пространства перменства и загрузит новый внутри без перезапуска сервера, чтобы отразить новые изменения (байт-код). В рамках перезагрузки web-сервер также свяжет существующие объекты Epmloyee с новым определением класса в пространстве perm gen, чтобы отразить новые изменения.
Правильно ли я это понимаю?
Некоторые ссылки, такие как this, говорят, что горячее развертывание Eclipse - это просто автоматизация перераспределения. что я считаю, это означает, что eclipse автоматически останавливает сервер, повторно публикует и перезапускает его без участия разработчика. Buti Я считаю, что это не так, поскольку этот процесс действительно быстрый по сравнению с запуском/публикацией/перезапуском. Также, если бы это было так, как сеанс и другие живые объекты останутся в живых после перезапуска? Может быть, эта ссылка была правдой в прошлом, но не сейчас, так как я нахожу горячие работы по развертыванию для классов в jar также
Возможный дубликат [Что делает горячее развертывание «трудной проблемой»?] (Http://stackoverflow.com/questions/660437/what-makes-hot-deployment-a-hard-problem) –
@ivan его не дублировать. Ссылка, о которой вы упомянули, касается не внутреннего развертывания, а о проблемах. – emilly
Принятый ответ на это объясняет, что происходит внутри страны. Возможно, вам нужны еще подробности, но это другое дело. –