<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          最常用的Java框架或者開源項目有哪些?

          共 11425字,需瀏覽 23分鐘

           ·

          2020-09-26 17:12

          周末愉快啊!小伙伴們!

          最近,我簡單完善了一下之前總結(jié)的 Java 最常用的一些框架和開源項目。

          發(fā)這篇文章的起因是看到知乎有個類似的問題,然后感覺高贊的回答不是很讓人滿意,獲得這么高的點(diǎn)贊也是讓我很迷。

          目前,我已經(jīng)將下面的內(nèi)容同步到 Github ,閱讀原文即可直達(dá):https://github.com/Snailclimb/awesome-java整理收集不易,花了不少心思,覺得不錯就給個 star 吧!?( ′???` )比心)。

          歡迎補(bǔ)充完善,一起打造一個最棒的 Java 開源項目集合!

          系統(tǒng)設(shè)計

          微服務(wù)/分布式

          基礎(chǔ)框架

          1. Spring Boot [1] :Spring Boot 可以輕松創(chuàng)建獨(dú)立的生產(chǎn)級基于 Spring 的應(yīng)用程序,內(nèi)置 web 服務(wù)器讓你可以像運(yùn)行普通 Java 程序一樣運(yùn)行項目。另外,大部分 Spring Boot 項目只需要少量的配置即可,這有別于 Spring 的重配置。
          2. spring-cloud-alibaba[2] : Spring Cloud Alibaba 致力于提供微服務(wù)開發(fā)的一站式解決方案。此項目包含開發(fā)分布式應(yīng)用微服務(wù)的必需組件,方便開發(fā)者通過 Spring Cloud 編程模型輕松使用這些組件來開發(fā)分布式應(yīng)用服務(wù)。

          Spring Cloud Alibaba

          1. Sentinel[3] :A lightweight powerful flow control component enabling reliability and monitoring for microservices. (輕量級的流量控制、熔斷降級 Java 庫)。
          2. Dubbo[4] :Apache Dubbo 是一個基于 Java 的高性能開源 RPC 框架。
          3. Nacos[5] :Nacos 致力于幫助您發(fā)現(xiàn)、配置和管理微服務(wù)。Nacos 提供了一組簡單易用的特性集,幫助您快速實(shí)現(xiàn)動態(tài)服務(wù)發(fā)現(xiàn)、服務(wù)配置、服務(wù)元數(shù)據(jù)及流量管理。Nacos 可以作為 Dubbo 的注冊中心來使用。
          4. Seata[6] : Seata 是一種易于使用,高性能,基于 Java 的開源分布式事務(wù)解決方案。
          5. RocketMQ[7] :阿里巴巴開源的一款高性能、高吞吐量的分布式消息中間件。

          API 網(wǎng)關(guān)

          微服務(wù)下一個系統(tǒng)被拆分為多個服務(wù),但是像 安全認(rèn)證,流量控制,日志,監(jiān)控等功能是每個服務(wù)都需要的,沒有網(wǎng)關(guān)的話,我們就需要在每個服務(wù)中單獨(dú)實(shí)現(xiàn),這使得我們做了很多重復(fù)的事情并且沒有一個全局的視圖來統(tǒng)一管理這些功能。

          綜上:一般情況下,網(wǎng)關(guān)一般都會提供請求轉(zhuǎn)發(fā)、安全認(rèn)證(身份/權(quán)限認(rèn)證)、流量控制、負(fù)載均衡、容災(zāi)、日志、監(jiān)控這些功能。

          上面介紹了這么多功能實(shí)際上網(wǎng)關(guān)主要做了一件事情:請求過濾 。權(quán)限校驗、流量控制這些都可以通過過濾器實(shí)現(xiàn),請求轉(zhuǎn)也是通過過濾器實(shí)現(xiàn)的。

          1. Kong[8] :Kong 是一個云原生、快速的、可伸縮的分布式微服務(wù)抽象層(也稱為 API 網(wǎng)關(guān)、API 中間件或在某些情況下稱為服務(wù)網(wǎng)格)。2015 年作為開源項目發(fā)布,其核心價值是高性能和可擴(kuò)展性。
          2. Soul[9] :高性能、基于 webflux 的反應(yīng)式 Java API 網(wǎng)關(guān)
          3. Spring Cloud Gateway[10] : 基于 Spring Framework 5.x 和 Spring Boot 2.x 構(gòu)建的高性能網(wǎng)關(guān)。
          4. Zuul[11] : Zuul 是一個 L7 應(yīng)用程序網(wǎng)關(guān),它提供了動態(tài)路由,監(jiān)視,彈性,安全性等功能。

          配置中心

          微服務(wù)下,業(yè)務(wù)的發(fā)展一般會導(dǎo)致服務(wù)數(shù)量的增加,進(jìn)而導(dǎo)致程序配置(服務(wù)地址、數(shù)據(jù)庫參數(shù)等等)增多。

          傳統(tǒng)的配置文件的方式已經(jīng)無法滿足當(dāng)前需求,主要有兩點(diǎn)原因:一是安全性得不到保障(配置放在代碼庫中容易泄露);二是時效性不行 (修改配置需要重啟服務(wù)才能生效)。

          除了 Apollo 和 Spring Cloud Config 之外,Spring Cloud Alibaba 中的 Nacos 組件也可以提高配置功能。

          1. Apollo[12] :Apollo(阿波羅)是攜程框架部門研發(fā)的分布式配置中心,能夠集中化管理應(yīng)用不同環(huán)境、不同集群的配置,配置修改后能夠?qū)崟r推送到應(yīng)用端,并且具備規(guī)范的權(quán)限、流程治理等特性,適用于微服務(wù)配置管理場景。
          2. Spring Cloud Config[13] :Spring Cloud Config 是 Spring Cloud 家族中最早的配置中心,雖然后來又發(fā)布了 Consul 可以代替配置中心功能,但是 Config 依然適用于 Spring Cloud 項目,通過簡單的配置即可實(shí)現(xiàn)功能。
          3. Consul[14] :Consul 是 HashiCorp 公司推出的開源軟件,提供了微服務(wù)系統(tǒng)中的服務(wù)治理、配置中心、控制總線等功能。這些功能中的每一個都可以根據(jù)需要單獨(dú)使用,也可以一起使用以構(gòu)建全方位的服務(wù)網(wǎng)格,總之 Consul 提供了一種完整的服務(wù)網(wǎng)格解決方案。

          相關(guān)閱讀:微服務(wù)架構(gòu)中配置中心的選擇:Apollo VS Spring Cloud Config[15]

          鏈路追蹤

          目前分布式鏈路追蹤系統(tǒng)基本都是根據(jù)谷歌的《Dapper 大規(guī)模分布式系統(tǒng)的跟蹤系統(tǒng)》這篇論文發(fā)展而來,主流的有 Pinpoint,Skywalking ,CAT(當(dāng)然也有其他的例如 Zipkin,Jaeger 等產(chǎn)品,不過總體來說不如前面選取的 3 個完成度高)等。

          1. Skywalking[16] : 針對分布式系統(tǒng)的應(yīng)用性能監(jiān)控,尤其是針對微服務(wù)、云原生和面向容器的分布式系統(tǒng)架構(gòu)。
          2. Zipkin[17] :Zipkin 是一個分布式跟蹤系統(tǒng)。它有助于收集解決服務(wù)體系結(jié)構(gòu)中的延遲問題所需的時序數(shù)據(jù)。功能包括該數(shù)據(jù)的收集和查找。
          3. CAT[18] :CAT 作為服務(wù)端項目基礎(chǔ)組件,提供了 Java, C/C++, Node.js, Python, Go 等多語言客戶端,已經(jīng)在美團(tuán)點(diǎn)評的基礎(chǔ)架構(gòu)中間件框架(MVC 框架,RPC 框架,數(shù)據(jù)庫框架,緩存框架等,消息隊列,配置系統(tǒng)等)深度集成,為美團(tuán)點(diǎn)評各業(yè)務(wù)線提供系統(tǒng)豐富的性能指標(biāo)、健康狀況、實(shí)時告警等。

          相關(guān)閱讀:Skywalking 官網(wǎng)對于主流開源鏈路追蹤系統(tǒng)的對比[19]

          消息中間件

          我們可以把消息隊列比作是一個存放消息的容器,當(dāng)我們需要使用消息的時候可以取出消息供自己使用。

          使用消息隊列主要有兩點(diǎn)好處:一是通過異步處理提高系統(tǒng)性能(削峰、減少響應(yīng)所需時間);二是降低系統(tǒng)耦合性。

          1. RocketMQ[20] :阿里巴巴開源的一款高性能、高吞吐量的分布式消息中間件。
          2. Kafaka[21]: Kafka 是一種分布式的,基于發(fā)布 / 訂閱的消息系統(tǒng)。關(guān)于它的入門可以查看:Kafka 入門看這一篇就夠了[22]
          3. RabbitMQ[23] :由 erlang 開發(fā)的基于 AMQP(Advanced Message Queue 高級消息隊列協(xié)議)協(xié)議實(shí)現(xiàn)的消息隊列。

          任務(wù)調(diào)度/定時任務(wù)

          任務(wù)調(diào)度/定時任務(wù)在系統(tǒng)中應(yīng)用太廣泛了。為什么需要任務(wù)調(diào)度/定時任務(wù)呢?

          • 時間驅(qū)動處理場景:整點(diǎn)發(fā)送優(yōu)惠券,每天更新收益,每天刷新標(biāo)簽數(shù)據(jù)和人群數(shù)據(jù)。
          • 批量處理數(shù)據(jù):按月批量統(tǒng)計報表數(shù)據(jù),批量更新短信狀態(tài),實(shí)時性要求不高。
          • 異步執(zhí)行解耦:活動狀態(tài)刷新,異步執(zhí)行離線查詢,與內(nèi)部邏輯解耦。

          這類框架也比較多,下面就帶大家看看!

          1. Quartz[24] :一個很火的開源任務(wù)調(diào)度框架,Java 定時任務(wù)領(lǐng)域的老大哥或者說參考標(biāo)準(zhǔn), 很多其他任務(wù)調(diào)度框架都是基于 quartz 開發(fā)的,比如當(dāng)當(dāng)網(wǎng)的elastic-job就是基于quartz二次開發(fā)之后的分布式調(diào)度解決方案
          2. XXL-JOB[25] :XXL-JOB 是一個分布式任務(wù)調(diào)度平臺,其核心設(shè)計目標(biāo)是開發(fā)迅速、學(xué)習(xí)簡單、輕量級、易擴(kuò)展。現(xiàn)已開放源代碼并接入多家公司線上產(chǎn)品線,開箱即用。
          3. Elastic-Job[26] :Elastic-Job 是當(dāng)當(dāng)網(wǎng)開源的一個基于 Quartz 和 Zookeeper 的分布式調(diào)度解決方案,由兩個相互獨(dú)立的子項目 Elastic-Job-Lite 和 Elastic-Job-Cloud 組成,一般我們只要使用 Elastic-Job-Lite 就好。
          4. EasyScheduler[27] ( 更名為 DolphinScheduler,已經(jīng)成為 Apache 孵化器項目):Easy Scheduler 是一個分布式工作流任務(wù)調(diào)度系統(tǒng),主要解決“復(fù)雜任務(wù)依賴但無法直接監(jiān)控任務(wù)健康狀態(tài)”的問題。Easy Scheduler 以 DAG 方式組裝任務(wù),可以實(shí)時監(jiān)控任務(wù)的運(yùn)行狀態(tài)。同時,它支持重試,重新運(yùn)行等操作... 。
          5. PowerJob[28] :新一代分布式任務(wù)調(diào)度與計算框架,支持 CRON、API、固定頻率、固定延遲等調(diào)度策略,提供工作流來編排任務(wù)解決依賴關(guān)系,使用簡單,功能強(qiáng)大,文檔齊全,歡迎各位接入使用!http://www.powerjob.tech/ 。

          相關(guān)閱讀:Spring Job、Quartz、XXL-Job 對比+全解析

          搜索引擎

          數(shù)據(jù)庫對于全文檢索不太友好,這種事情最好交給搜索引擎來做,比如電商系統(tǒng)的商品搜索往往都是基于搜索引擎來做的。

          Elasticsearch 在搜索引擎數(shù)據(jù)庫領(lǐng)域排名絕對第一,內(nèi)核基于 Lucene 構(gòu)建,支持全文搜索是職責(zé)所在,提供了豐富友好的 API。

          Elasticsearch 除了做搜索引擎,還常常被拿來做日志檢索(著名的 ELK 三件套,講的就是 Elasticsearch,Logstash,Kibana,專門針對日志采集、存儲、查詢設(shè)計的產(chǎn)品組合,相關(guān)閱讀:什么是 ELK Stack?[29])。

          Solr 比較老牌了,但是,目前生態(tài)以及社區(qū)活躍度都比不上 Elasticsearch。

          1. Elasticsearch[30]:開源,分布式,RESTful 搜索引擎。
          2. Solr[31] : Solr(讀作“solar”)是 Apache Lucene 項目的開源企業(yè)搜索平臺。

          數(shù)據(jù)庫

          連接池

          1. Druid[32] : 阿里巴巴數(shù)據(jù)庫事業(yè)部出品,為監(jiān)控而生的數(shù)據(jù)庫連接池。
          2. HikariCP[33] : 一個可靠的高性能 JDBC 連接池。Springboot 2.0 選擇 HikariCP 作為默認(rèn)數(shù)據(jù)庫連接池。

          數(shù)據(jù)庫中間件

          數(shù)據(jù)庫的數(shù)據(jù)量大了之后就要考慮讀寫分離、分庫分表,但是一定要盡量能避免分庫分表就避免,因為會帶來很多其他問題。

          1. ShardingSphere[34] :ShardingSphere 是一套開源的分布式數(shù)據(jù)庫中間件解決方案組成的生態(tài)圈,它由 Sharding-JDBC、Sharding-Proxy 和 Sharding-Sidecar(計劃中)這 3 款相互獨(dú)立的產(chǎn)品組成。他們均提供標(biāo)準(zhǔn)化的數(shù)據(jù)分片、分布式事務(wù)和數(shù)據(jù)庫治理功能,可適用于如 Java 同構(gòu)、異構(gòu)語言、云原生等各種多樣化的應(yīng)用場景。中文文檔:https://shardingsphere.apache.org/document/current/cn/overview/[35]
          2. MyCat[36] : MyCat 是數(shù)據(jù)庫分庫分表的中間件,MyCat 使用最多的兩個功能是:讀寫分離和分庫分表。MyCat 是一些社區(qū)愛好者在阿里 Cobar 的基礎(chǔ)上進(jìn)行二次開發(fā),解決了 Cobar 當(dāng)時存 在的一些問題,并且加入了許多新的功能在其中。

          相關(guān)閱讀:數(shù)據(jù)庫中間件詳解(精品長文)[37]

          Redis

          1. Redisson[38]Redisson[39]是架設(shè)在Redis[40]基礎(chǔ)上的一個 Java 駐內(nèi)存數(shù)據(jù)網(wǎng)格(In-Memory Data Grid)。支持超過 30 個對象和服務(wù):Set, multiap, SortedSet, Map, List, Queue, Deque, Semaphore, Lock, AtomicLong, Map Reduce, Publish / Subscribe, Bloom filter, Spring Cache, Tomcat, Scheduler, JCache API, Hibernate, RPC。Redisson 項目介紹[41]

          框架

          1. MyBatis-Plus[42] : MyBatis-Plus[43](簡稱 MP)是一個 MyBatis[44] 的增強(qiáng)工具,在 MyBatis 的基礎(chǔ)上只做增強(qiáng)不做改變,為簡化開發(fā)、提高效率而生。
          2. DataX[45] :DataX 是阿里巴巴集團(tuán)內(nèi)被廣泛使用的離線數(shù)據(jù)同步工具/平臺,實(shí)現(xiàn)包括 MySQL、Oracle、SqlServer、Postgre、HDFS、Hive、ADS、HBase、TableStore(OTS)、MaxCompute(ODPS)、DRDS 等各種異構(gòu)數(shù)據(jù)源之間高效的數(shù)據(jù)同步功能。
          3. canal[46] : canal [k?'n?l],譯意為水道/管道/溝渠,主要用途是基于 MySQL 數(shù)據(jù)庫增量日志解析,提供增量數(shù)據(jù)訂閱和消費(fèi)
          4. dynamic-datasource-spring-boot-starter[47] :dynamic-datasource-spring-boot-starter 是一個基于 springboot 的快速集成多數(shù)據(jù)源的啟動器。如果說你有配置多數(shù)據(jù)源、讀寫分離等需求的話,可以了解一下這個項目。

          大數(shù)據(jù)

          1. Spark[48] :Spark 是用于大規(guī)模數(shù)據(jù)處理的統(tǒng)一分析引擎。
          2. Flink[49] :Apache Flink 是一個框架和分布式處理引擎,用于在無邊界和有邊界數(shù)據(jù)流上進(jìn)行有狀態(tài)的計算。Flink 能在所有常見集群環(huán)境中運(yùn)行,并能以內(nèi)存速度和任意規(guī)模進(jìn)行計算。
          3. HBase[50]:HBase – Hadoop Database,是一個高可靠性、高性能、面向列、可伸縮的分布式存儲系統(tǒng),利用 HBase 技術(shù)可在廉價 PC Server 上搭建起大規(guī)模結(jié)構(gòu)化存儲集群。
          4. Flume[51] :Apache Flume 是一個分布式的、可靠的、可用的,從多種不同的源收集、聚集、移動大量日志數(shù)據(jù)到集中數(shù)據(jù)存儲的系統(tǒng)。
          5. Storm[52] : 一個分布式,高容錯的實(shí)時計算系統(tǒng)。

          日志系統(tǒng)

          實(shí)際項目中使用 ELK 三件套(Elasticsearch,Logstash,Kibana)來做日志系統(tǒng)的非常多。

          另外,像 Prometheus + Grafana 也是比較主流的,相關(guān)閱讀:Prometheus + Grafana 監(jiān)控配置指北:打造專屬監(jiān)控系統(tǒng)[53]

          1. loki[54]Loki是 Grafana Labs 團(tuán)隊最新的開源項目,是一個水平可擴(kuò)展,高可用性,多租戶的日志聚合系統(tǒng)。它的設(shè)計非常經(jīng)濟(jì)高效且易于操作,因為它不會為日志內(nèi)容編制索引,而是為每個日志流編制一組標(biāo)簽。項目受 Prometheus 啟發(fā),官方的介紹就是:Like Prometheus, but for logs.,類似于 Prometheus 的日志系統(tǒng)。相關(guān)閱讀:
            • Loki 日志系統(tǒng)[55]
            • 使用 Loki 進(jìn)行日志監(jiān)控和報警[56]

          開放平臺(如微信)

          1. WxJava[57] : WxJava (微信開發(fā) Java SDK),支持包括微信支付、開放平臺、小程序、企業(yè)微信/企業(yè)號和公眾號等的后端開發(fā)。

          測試

          為了能讓我們編寫的系統(tǒng)更加健壯,必要的測試(UI 測試、單元測試...)是必須的。

          1. JUnit[58] : Java 測試框架。
          2. Mockito[59] :Mockito 是一個模擬測試框架,可以讓你用優(yōu)雅,簡潔的接口寫出漂亮的單元測試。(對那些不容易構(gòu)建的對象用一個虛擬對象來代替,使其在調(diào)試期間用來作為真實(shí)對象的替代品)
          3. PowerMock[60] :編寫單元測試僅靠 Mockito 是不夠。因為 Mockito 無法 mock 私有方法、final 方法及靜態(tài)方法等。PowerMock 這個 framework,主要是為了擴(kuò)展其他 mock 框架,如 Mockito、EasyMock。它使用一個自定義的類加載器,纂改字節(jié)碼,突破 Mockito 無法 mock 靜態(tài)方法、構(gòu)造方法、final 類、final 方法以及私有方法的限制。
          4. WireMock[61] :模擬 HTTP 服務(wù)的工具(Mock your APIs)。

          相關(guān)閱讀:

          1. The Practical Test Pyramid- Martin Fowler[62] (很贊的一篇文章,不過是英文的)
          2. 淺談測試之 PowerMock[63]

          機(jī)器學(xué)習(xí)

          1. Deeplearning4j[64] :Deeplearning4j 是第一個為 Java 和 Scala 編寫的商業(yè)級,開源,分布式深度學(xué)習(xí)庫。
          2. Smile[65] :基于 Java 和 Scala 的機(jī)器學(xué)習(xí)庫。

          相關(guān)閱讀:

          1. Java 能用于機(jī)器學(xué)習(xí)和數(shù)據(jù)科學(xué)嗎?-InfoQ[66]
          2. Deeplearning4j 入門 - IBM Developer[67]

          Devpos

          CI

          1. Jenkins[68] : Jenkins 是領(lǐng)先的開源自動化服務(wù)器。它使用 Java 構(gòu)建,提供了 1600 多個插件來支持幾乎任何東西的自動化,從而使人類實(shí)際上可以將時間花在做機(jī)器無法做到的事情上。

          參考資料

          [1]

          spring-boot: https://github.com/spring-projects/spring-boot

          [2]

          spring-cloud-alibaba: https://github.com/alibaba/spring-cloud-alibaba

          [3]

          Sentinel: https://github.com/alibaba/Sentinel

          [4]

          dubbo: https://github.com/apache/dubbo

          [5]

          nacos: https://github.com/alibaba/nacos

          [6]

          seata: https://github.com/seata/seata

          [7]

          RocketMQ: https://github.com/apache/rocketmq

          [8]

          kong: https://github.com/Kong/kong

          [9]

          soul: https://github.com/Dromara/soul

          [10]

          Spring Cloud Gateway: https://github.com/spring-cloud/spring-cloud-gateway

          [11]

          Zuul: https://github.com/Netflix/zuul

          [12]

          apollo: https://github.com/ctripcorp/apollo

          [13]

          Spring Cloud Config: https://github.com/spring-cloud/spring-cloud-config

          [14]

          Consul: https://github.com/hashicorp/consul

          [15]

          微服務(wù)架構(gòu)中配置中心的選擇:Apollo VS Spring Cloud Config: https://www.jianshu.com/p/d78fa8412cbf

          [16]

          skywalking: https://github.com/apache/skywalking

          [17]

          zipkin: https://github.com/openzipkin/zipkin

          [18]

          cat: https://github.com/dianping/cat

          [19]

          Skywalking 官網(wǎng)對于主流開源鏈路追蹤系統(tǒng)的對比: https://skywalking.apache.org/zh/blog/2019-03-29-introduction-of-skywalking-and-simple-practice.html

          [20]

          RocketMQ: https://github.com/apache/rocketmq

          [21]

          Kafaka: https://github.com/apache/kafka

          [22]

          Kafka入門看這一篇就夠了: https://github.com/Snailclimb/JavaGuide/blob/master/docs/system-design/data-communication/Kafka入門看這一篇就夠了.md

          [23]

          RabbitMQ: https://github.com/rabbitmq

          [24]

          Quartz: https://github.com/quartz-scheduler/quartz

          [25]

          XXL-JOB: https://github.com/xuxueli/xxl-job

          [26]

          Elastic-Job: http://elasticjob.io/index_zh.html

          [27]

          EasyScheduler: https://github.com/analysys/EasyScheduler

          [28]

          PowerJob: https://gitee.com/KFCFans/PowerJob

          [29]

          什么是 ELK Stack?: https://www.elastic.co/cn/what-is/elk-stack

          [30]

          elasticsearch: https://github.com/elastic/elasticsearch

          [31]

          Solr: https://lucene.apache.org/solr/

          [32]

          Druid: https://github.com/alibaba/druid

          [33]

          HikariCP: https://github.com/brettwooldridge/HikariCP

          [34]

          ShardingSphere: https://github.com/apache/shardingsphere

          [35]

          https://shardingsphere.apache.org/document/current/cn/overview/: https://shardingsphere.apache.org/document/current/cn/overview/

          [36]

          MyCat: https://github.com/MyCatApache/MyCat2

          [37]

          數(shù)據(jù)庫中間件詳解(精品長文): https://zhuanlan.zhihu.com/p/87144535

          [38]

          redisson: https://github.com/redisson/redisson

          [39]

          Redisson: https://redisson.org/

          [40]

          Redis: http://redis.cn/

          [41]

          Redisson項目介紹: https://github.com/redisson/redisson/wiki/Redisson%E9%A1%B9%E7%9B%AE%E4%BB%8B%E7%BB%8D

          [42]

          MyBatis-Plus: https://github.com/baomidou/mybatis-plus

          [43]

          MyBatis-Plus: https://github.com/baomidou/mybatis-plus

          [44]

          MyBatis: http://www.mybatis.org/mybatis-3/

          [45]

          DataX: https://github.com/alibaba/DataX

          [46]

          canal: https://github.com/alibaba/canal

          [47]

          dynamic-datasource-spring-boot-starter: https://github.com/baomidou/dynamic-datasource-spring-boot-starter]

          [48]

          Spark: https://github.com/apache/spark

          [49]

          flink: https://github.com/apache/flink

          [50]

          HBase: https://hbase.apache.org/

          [51]

          Flume: https://flume.apache.org/

          [52]

          Storm: https://storm.apache.org/

          [53]

          Prometheus + Grafana 監(jiān)控配置指北:打造專屬監(jiān)控系統(tǒng): https://counter2015.com/2020/04/13/grafana-monitor-2/

          [54]

          loki: https://github.com/grafana/loki

          [55]

          Loki 日志系統(tǒng): https://www.cnblogs.com/xiao987334176/p/13187473.html

          [56]

          使用 Loki 進(jìn)行日志監(jiān)控和報警: https://www.qikqiak.com/post/use-loki-monitor-alert/

          [57]

          WxJava: https://github.com/Wechat-Group/WxJava

          [58]

          JUnit: http://junit.org/

          [59]

          Mockito: https://github.com/mockito/mockito

          [60]

          PowerMock: https://github.com/powermock/powermock

          [61]

          WireMock: https://github.com/tomakehurst/wiremock

          [62]

          The Practical Test Pyramid- Martin Fowler: https://martinfowler.com/articles/practical-test-pyramid.html

          [63]

          淺談測試之 PowerMock: https://juejin.im/post/6844903982058618894

          [64]

          Deeplearning4j: https://github.com/eclipse/deeplearning4j

          [65]

          Smile: https://github.com/haifengl/smile

          [66]

          Java 能用于機(jī)器學(xué)習(xí)和數(shù)據(jù)科學(xué)嗎?-InfoQ: https://www.infoq.cn/article/GA9UeYlv8ohBzBso9eph

          [67]

          Deeplearning4j 入門 - IBM Developer: https://developer.ibm.com/zh/technologies/artificial-intelligence/articles/cc-get-started-deeplearning4j/

          [68]

          Jenkins: https://github.com/jenkinsci/jenkins

          ?閑聊

          分享一些好消息給大家,一起開心一下,嘿嘿。今天一大早就有讀者過來給我報喜了,開心。

          低調(diào)做人,踏實(shí)做事。

          學(xué) Java ,準(zhǔn)備 Java 面試,那必須首選 JavaGuide!

          預(yù)報一下!最近會寫一個簡易版的“Spring Boot”,能夠簡單處理Get和Post請求并且返回json數(shù)據(jù)那種。框架會比較輕量,依賴很少,代碼也會盡量寫直白點(diǎn),不秀技。

          我是Guide哥,Java后端開發(fā),會一點(diǎn)前端知識,喜歡烹飪,自由的少年。一個三觀比主角還正的技術(shù)人。我們下期再見!

          瀏覽 70
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  欧美精品成人 | 九色在线观看 | 国产精品久久久久久久久久两年半 | 亚洲淫秽视频在线 | 日韩三级片电影网站 |