当前位置:网站首页>Make Jar, Not War
Make Jar, Not War
2022-07-05 20:33:00 【Small box】
Around the 4 Years ago , About java The application is finally marked jar
Package or war
The choice of bag makes me confused .
At that time, more applications were made war
Bag , Even if we know it can be played jar
package , But before, they were beaten war
package , And it seems to be jar
There are no obvious benefits of the bag .
But what puzzled me at that time was that more and more practices were turning to fight without giving much reason jar
package , So I began to think ......
war Reasons for the package
In a large OTA Inside the enterprise , The application is still marked war
package , PaaS The platform will be automatically installed and configured tomcat, I know this is for web server It is good for unified configuration and operation and maintenance . be based on war
Behind the series CI/CD 、DevOps The process must have corresponding adaptation , Even if jar
There are some advantages I don't know, and it's impossible to use them inside large enterprises overnight , The platform and system need to be adjusted .
SpringBoot At that time, it was not as popular as it is now , This does not mean that people do not use it , I mean relatively new projects , There will be many inside the enterprise “ Old system ” Need to maintain , We can't expect to replace these old systems with new technology stacks at once , Just like you know now web application
Generally, the front and back ends are developed separately , But if you take over a use jsp
The old guy , You have to maintain that it's not ?
jar Era
Times are different , It seems like decades have passed , But in fact, it's only a few years . But just a few years is enough to change the face of some things .
Now , Cloud native 、 Micro services are popular , It seems that everyone has been very adapted to this development mode , No one is bothered about whether to use SpringBoot, It will only discuss whether the version used is high or low . Not to mention the packaging , It's natural to use jar
, Although this kind of looks “ Best practices ”, In the long-term development process, it will form “ Muscle memory ”, But we still need to discuss why .
convenient
Can run Jar It is a convenient way to package self-contained and runnable applications . such , We can minimize dependencies . Can pass Spring boot Maven and Gradle plugin To manage dependency .
Yunyuan is friendly
In the case of self provided containers (docker,k8s), jar
The package can be directly used as a single application
To manage .
In the past we used to use war
It's for multiple applications to share web server, Now is the world of containers , In a container , Generally, only one application process is run . Because there is only one process , We can easily manage it , For example, restart ( Will not affect other applications , Because there are no other applications ).
version control
utilize git
And other version control software , You can control everything you need to run the program ( Such as configuration files )
extensible
for example , Copy it to another server , then “ just run it!” No installation and / Or configure the container
Reference resources
https://medium.com/@satyajit.nalavade/make-jar-not-war-josh-long-d6ce5fbb8a23
边栏推荐
- Leetcode (695) - the largest area of an island
- Ffplay document [easy to understand]
- July 4, 2022 - July 10, 2022 (UE4 video tutorial MySQL)
- Document method
- 如何形成规范的接口文档
- Pytorch 1.12 was released, officially supporting Apple M1 chip GPU acceleration and repairing many bugs
- Rainbond 5.7.1 支持对接多家公有云和集群异常报警
- mongodb文档间关系
- Codeforces Round #804 (Div. 2) - A, B, C
- Leetcode (347) - top k high frequency elements
猜你喜欢
【数字IC验证快速入门】6、Questasim 快速上手使用(以全加器设计与验证为例)
计算lnx的一种方式
B站UP搭建世界首个纯红石神经网络、基于深度学习动作识别的色情检测、陈天奇《机器学编译MLC》课程进展、AI前沿论文 | ShowMeAI资讯日报 #07.05
小程序事件绑定
National Eye Care Education Conference, 2022 the Fourth Beijing International Youth eye health industry exhibition
Leetcode brush questions: binary tree 18 (largest binary tree)
Applet global configuration
零道云新UI设计中
Pytorch 1.12 was released, officially supporting Apple M1 chip GPU acceleration and repairing many bugs
CVPR 2022 | 常见3D损坏和数据增强
随机推荐
Which securities is better for securities account opening? Is online account opening safe?
CVPR 2022 | common 3D damage and data enhancement
Document method
model方法
Unity编辑器扩展 UI控件篇
【愚公系列】2022年7月 Go教学课程 004-Go代码注释
14、Transformer--VIT TNT BETR
PyTorch 1.12发布,正式支持苹果M1芯片GPU加速,修复众多Bug
Leetcode(347)——前 K 个高频元素
3.3 project evaluation
nprogress插件 进度条
Informatics Olympiad 1340: [example 3-5] extended binary tree
Simple understanding of interpolation search
Leetcode brush questions: binary tree 11 (balanced binary tree)
[C language] merge sort
Station B up builds the world's first pure red stone neural network, pornographic detection based on deep learning action recognition, Chen Tianqi's course progress of machine science compilation MLC,
Oracle-表空间管理
点云文件的.dat文件读取保存
【数字IC验证快速入门】6、Questasim 快速上手使用(以全加器设计与验证为例)
[quick start of Digital IC Verification] 3. Introduction to the whole process of Digital IC Design