Table of Contents[Hūnā][Hōʻike]
E like me kāu e ʻike ai, he wahi ʻokoʻa ka Java kaiaola, a he nui nā ala e hoʻokokoke ai i nā pilikia a mākou e kū nei.
Ua loli wikiwiki ka ʻōnaehana kaiaola Java. ʻO kekahi o nā hoʻololi koʻikoʻi i hele mai mai ka piʻi ʻana o nā microservices, containers, a me cloud computing. Ua ʻike mākou i nā ʻōnaehana hou a me nā mea hana i puka mai e kākoʻo i kēia mau loli.
No ka laʻana, ua lilo ʻo Spring Boot i maʻamau De Facto no ka hoʻomohala Java. I kēia manawa, ua puka mai nā ʻano hana ʻē aʻe e like me Quarkus e hoʻopiha i nā āpau a hāʻawi i nā hana hou.
Inā ʻoe e ʻimi nei i ke kaua o ka Java frameworks, ʻaʻole hiki iā ʻoe ke hele hewa me Quarkus vs. Spring Boot. Loaʻa nā pono a me nā pōʻino ʻelua, akā ʻo wai ka mea kūpono i kāu papahana?
Ma kēia pou moʻomanaʻo, e hoʻokuʻi mākou iā Quarkus a me Spring Boot i kekahi i kekahi e ʻike i ka mea e puka mai ana ma luna. ʻO wai ka lanakila ma kēia hakakā? E heluhelu e ʻike!
He aha ka Spring Boot?
ʻO Spring Boot kahi kumu hāmama, kaulana, māmā, a me ka mea hoʻomohala-aloha. Hoʻolālā ʻia ia e maʻalahi ke kākau nā noi ma Java i hiki ke hoʻoili ʻia ma ke ao a holo paha ma kāu papapihi.
ʻOi aku ka maʻalahi o ka hoʻomaka ʻana me Java me Spring Boot, a he kūpono ia no nā microservices.
He hoʻolālā noi pūnaewele waho o ka pahu e ʻae iā ʻoe e nānā i ke code ma mua o ka hoʻonohonoho. Me Spring Boot, hiki iā ʻoe ke hoʻomaka koke i kāu mau noi.
Hāʻawi ʻo Spring Boot i kahi pūʻulu o nā hōʻike Spring i hiki ke hoʻohana ʻia no ka hoʻolaha ʻana i ke code. Ua puni ʻo ia no kekahi manawa a he ʻano hoʻokumu maikaʻi ʻia, a ua laikini ʻia ma lalo o ka Apache License 2.0.
hiʻona
1. Hōʻoia Piʻi
Hāʻawi ka Spring Boot i ka hiki ke hōʻoia i kāu mau pīni ma ka pae papa, a hiki nō hoʻi iā ʻoe ke hōʻoia i kēlā me kēia waiwai i ka pī. Hoʻopau ʻia ka hōʻoia me ka hoʻohana ʻana i nā annotations, no laila ʻaʻole pono ʻoe e kākau i kekahi code validation maʻamau.
2. Loaʻa i ka ʻikepili
Hāʻawi ka Spring Boot i kahi ala maʻalahi e hiki ai i ka ʻikepili. Hiki iā ʻoe ke hoʻohana i ka JdbcTemplate, JpaTemplate, a me nā API no ke kōkua ʻana iā ʻoe me nā hana pili i ka waihona.
3. MVC
Kākoʻo ia i ke ʻano MVC, a hāʻawi ia i nā hiʻohiʻona MVC-specific. Hiki i kēia ke kōkua iā ʻoe e hana i nā noi pūnaewele me ka wikiwiki a me ka maʻalahi. No ka laʻana, hiki iā ʻoe ke hoʻohana i ka Spring MVC e hoʻokō i nā API REST, a hiki ke hoʻohana ʻia ʻo Spring WebFlux e hana i nā noi pūnaewele i kūkulu ʻia me ka hoʻohana ʻana i ke ʻano Reactive Streams.
4 Pūnaewele
Hāʻawi ʻo Spring Boot i ka hiki ke hoʻonohonoho i kekahi mau hiʻohiʻona pili pūnaewele, e like me nā kumuwaiwai static, lawelawe faila static, a me ka hōʻoia pūnaewele.
5. Kapua Puna
Hāʻawi ia i ka hiki ke hana i nā noi i hiki ke kau ʻia ma ke ao. Hiki iā ʻoe ke hana i nā API REST i hiki ke hoʻohana ʻia e launa pū me nā lawelawe ʻē aʻe. Hiki iā ʻoe ke hana i nā microservices Spring-powered, hiki ke hoʻohana ʻia e launa pū me kekahi a hāʻawi i kahi hoʻolālā decentralized.
Pros
- Hoʻomaʻamaʻa i nā hilinaʻi i kāu faila pom.xml
- Hāʻawi ia i kahi kikowaena tomcat i hoʻopili ʻia e maʻalahi ke hoʻohana
- He nui nā mea hoʻomaka e hoʻomaka me nā ʻenehana kaulana e like me ka hibernate a me ka ʻike puna.
- Hāʻawi ia i nā hiʻohiʻona he nui i waho o ka pahu e like me ka nānā ʻana, logging, palekana, etc
- Hoʻopili ia i ke kumu "convention over configuration", e maʻalahi ai ka hoʻomaka ʻana
Con
- He kaumaha iki ka kāmaʻa puna, a hiki ke lohi i ka hoʻomaka ʻana
- ʻAʻole hana maikaʻi me nā noi liʻiliʻi
- Pono nā mea hoʻomohala e hoʻoikaika i ka hana ʻana i "nā ipu momona."
- ʻAʻole maʻalahi ka hoʻopili ʻana i nā noi boot spring
He aha ka Quarkus?
ʻO Quarkus kahi waihona Java Kubernetes maoli i hoʻopili ʻia no GraalVM & OpenJDK HotSpot, i hana ʻia mai nā hale waihona puke Java maikaʻi loa a me nā kūlana.
Hoʻohui ʻo Quarkus i ke ʻano hoʻolālā reactive me nā microservices e leʻaleʻa hou ke kākau ʻana i nā noi Java.
Me Quarkus, hiki iā ʻoe ke kākau i nā noi Java penei:
- ʻO ke ao maoli a me ka ipu-mākaukau
- Haʻahaʻa kumu waiwai
- Hoʻomaka wikiwiki
- E maʻalahi ke kākau a mālama
Inā ʻoe e ʻimi nei i kahi waihona Java Kubernetes ʻōiwi hiki ke kōkua iā ʻoe e kākau i nā noi Java me ka wikiwiki a me ka maʻalahi, ʻo Quarkus ka koho kūpono nou.
hiʻona
1. Container-kumu
ʻO Quarkus kahi pahu-kuai. ʻO ia hoʻi, ua hoʻolālā ʻia ia e holo i kahi kaiapuni Kubernetes. Hiki iā ʻoe ke hana i kahi noi Quarkus, hoʻoili iā Kubernetes, a hoʻohana iā ia e launa pū me nā noi Kubernetes ʻē aʻe.
2. Kūlike
Hoʻolālā ʻia ʻo Quarkus e kākoʻo i nā microservices. Hoʻokumu ʻia ia ma kahi hiʻohiʻona polokalamu Java hou i kūkulu ʻia a puni ka concurrency a me ka immutability. ʻO ke kumu hoʻolālā polokalamu hou e kōkua i ka hoʻomaikaʻi ʻana i ka hana a me ka hilinaʻi. ʻO ka hopena, hāʻawi ia i kekahi mau hiʻohiʻona e pili ana i ka concurrency, e like me:
- Nā kumuwaiwai kālepa
- Laka heluhelu- kakau
- Hoʻokō i ka hanana
- Kaukaʻi
- ʻO RabbitMQ
- Ka hoʻokele hanana
3. Hoʻohui i ka papahana imperative a me ka reactive
Hāʻawi ʻo Quarkus i ka hiki ke hoʻohana i nā polokalamu imperative a me reactive. Kōkua kēia i ka hoʻomaikaʻi ʻana i ka maikaʻi o kāu code. No ka laʻana, hiki iā ʻoe ke hoʻohana i ka polokalamu imperative e hana i kahi noi e hiki ke launa pū me ka honua o waho.
4. Noi Hoopaa Piha
He palapala hoʻopihapiha piha i hiki ke hoʻohana ʻia e hana i kahi ʻōnaehana puʻupuʻu. Hoʻokumu ʻia ia ma ke kumu hoʻohālike Reactive Streams, a hoʻohana ʻo ia i ka JVM ma ke ʻano he pahi leka. ʻO ka hopena, hiki ke hoʻohana ʻia e hana i nā ʻōnaehana puʻupuʻu i kūkulu ʻia me ka hoʻohana ʻana i ke ʻano Reactive Streams.
5. Wahi
Hoʻolālā ʻia ʻo Quarkus e wikiwiki a hilinaʻi. Hiki iā ia ke kōkua iā ʻoe e hana i nā noi i hiki ke holo i loko o kahi kaiapuni containerized. ʻO ka hopena, hāʻawi ia i nā hiʻohiʻona e pili ana i ka hana, e like me:
- Hoʻokumu ʻia ʻo bytecode kope kope ʻole:
- Hoʻouka hou
- Loulou kūmau
- Ke kāʻei ʻana i loko o ka laina
- Hoʻokō ʻōiwi
- Kūkala kamaʻilio waena
Pros
- ʻOi aku ka māmā o Quarkus ma mua o ka Spring Boot, no laila kūpono ia no nā microservices
- He wikiwiki kona manawa hoʻomaka, kūpono ia no ka hoʻolaha ʻana i ke ao
- Hāʻawi ʻo Quarkus i kahi waihona Java maoli me ke kākoʻo no GraalVM a me HotSpot, e hoʻolilo iā ia i mea kūpono no nā noi ikaika hana.
- Ua piha ʻo Quarkus hamama kumu a he kaiāulu ikaika loa kona
Con
- He ʻano hana hou ʻo Quarkus a, no laila, nele kekahi mau hiʻohiʻona a me ke ʻano o ka Spring Boot
- Hiki ke paʻakikī ke aʻo ma mua o ka Spring Boot
- ʻOi aku ka paʻakikī o nā noi Quarkus ma mua o nā noi Spring Boot.
Quarkus vs. Puna - Hua'ōlelo Hope
I ka hopena, ʻo Spring Boot a me Quarkus nā koho maikaʻi loa no ke kūkulu ʻana i nā microservices.
Eia nō naʻe, loaʻa iā Quarkus kekahi mau mea maikaʻi ma mua o Spring Boot ma ke ʻano o ka wikiwiki a me ka hoʻohana waiwai.
Inā ʻoe e ʻimi nei i kahi hoʻolālā wikiwiki a māmā, ʻo Quarkus kahi koho maikaʻi loa. Akā, inā makemake ʻoe i kahi hoʻolālā waiwai nui, ʻoi aku ka maikaʻi o ka Spring Boot.
Waiho i ka Reply