当前位置:网站首页>Make Jar, Not War
Make Jar, Not War
2022-07-07 01:21:00 【Small box technology sharing】
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
This paper is written by mdnice Multi platform Publishing
边栏推荐
猜你喜欢
Boot - Prometheus push gateway use
Typical problems of subnet division and super network construction
UI控件Telerik UI for WinForms新主题——VS2022启发式主题
2022 Google CTF SEGFAULT LABYRINTH wp
golang中的Mutex原理解析
Force buckle 1037 Effective boomerang
[case sharing] basic function configuration of network loop detection
【案例分享】网络环路检测基本功能配置
HMM notes
Your cache folder contains root-owned files, due to a bug in npm ERR! previous versions of npm which
随机推荐
资产安全问题或制约加密行业发展 风控+合规成为平台破局关键
NEON优化:关于交叉存取与反向交叉存取
接收用户输入,身高BMI体重指数检测小业务入门案例
1123. 最深叶节点的最近公共祖先
ESP Arduino (IV) PWM waveform control output
字节P7专业级讲解:接口测试常用工具及测试方法,福利文
Vocabulary in Data Book
Asset security issues or constraints on the development of the encryption industry, risk control + compliance has become the key to breaking the platform
HMM notes
Add the applet "lazycodeloading": "requiredcomponents" in taro,
Neon Optimization: summary of performance optimization experience
[hfctf2020]babyupload session parsing engine
[100 cases of JVM tuning practice] 04 - Method area tuning practice (Part 1)
ClickHouse字段分组聚合、按照任意时间段粒度查询SQL
负载均衡性能参数如何测评?
Windows installation mysql8 (5 minutes)
黑马笔记---创建不可变集合与Stream流
The MySQL database in Alibaba cloud was attacked, and finally the data was found
Wood extraction in Halcon
Informatics Olympiad YBT 1171: factors of large integers | 1.6 13: factors of large integers