2020年度綜合大盤點:火爆IT業的7大Java技術,每一項都是大寫的“牛逼”!

Java這點事發表於2020-12-21

關注“Java這點事”,
每天與你分享Java技術、IT資訊


 

JAVA語言作為歷史最為悠久的程式語言,從95年5月開始歷經數十年依然盤踞在程式設計榜前三的位置,與它強大的功能和廣泛的運用分不開。JAVA 技術的更新迭代是開發者應該關注的問題,下面盤點一下2020年網際網路企業在JAVA 開發中有哪些主流、熱門的IT技術,幫助大家在職場中快速崛起。

1、微服務技術

首當其衝的就是我們的微服務技術,從最開始的單體式服務,逐步的演化到叢集,分散式,以及現在的微服務。

其中在微服務架構主要有:Spring Cloud alibaba、 Dubbo、 ZooKeeper等,以 Dubbo佔比26.18%,微服務閘道器技術,這些技術的變更是隨著時代的潮流在不斷前進的 我們也是不斷的去進步學習。

在這裡插入圖片描述

2、遠端呼叫技術

RPC遠端過程呼叫是什麼?
1、簡單的來說,RPC就是從一臺機器上通過引數傳遞的方式呼叫另外一臺伺服器上的一個函式或者方法,並得到返回結果。
2、RPC會隱藏底層的通訊細節,不需要直接處理Socket通訊或者Http通訊
3、RPC是一個請求響應模型,客戶端發起請求,伺服器返回響應。
4、RPC在使用形式上想呼叫本地函式(或者方式)一樣去呼叫遠端的函式或者方法。
早期的RPC:
第一代 RPC(ONC RPC,OSF RPC)不支援物件的傳遞。CORBA太複雜,各種不同實現不相容,一般程式設計師也玩不轉。DCOM,COM+ 逃不出 Windows的手掌心。RMI 只能在 Java裡面玩。.NET Remoting 只能在 .NET 平臺上玩。
現在使用RPC框架的程式設計師中, 使用Dubbo的人數佔比較高,其次為 dubbox、gRPC、hessian也具有一定的使用比例。 較於早期的RPC有了較大的提升,可以在多平臺語言使用。

3、開發技術

多數程式設計師在工作中使用的開發技術為許可權管理和訊息佇列。1/4的程式設計師在工作中使用的開發技術為報表技術、分散式快取技術和負載均衡解決方案。當前2020年內最火的技術 就是 redis RocketMQ 和 ES等 技術 下面會進行詳細的描述。

4、許可權管理技術

從控制力度來看,可以將許可權管理分為兩大類:
1、功能級許可權管理;
2、資料級許可權管理。
從控制方向來看,也可以將許可權管理分為兩大類:
1、從系統獲取資料,比如查詢訂單、查詢客戶資料;
2、向系統提交資料,比如刪除訂單、修改客戶資料。
首當其衝的 就是shiro,其次為spring security 以及 auth2和自定義框架等 。
一般就使用基於角色訪問控制技術RBAC(Role Based Access Control)。該技術被廣泛運用於各個系統,非常容易掌握。

在這裡插入圖片描述

5、訊息佇列技術

訊息中介軟體屬於分散式系統中的一個子系統,關注於資料的傳送和接收,利用高效可靠的訊息傳遞機制對分散式系統中的其餘各個子系統經進行整合
訊息佇列技術主要有:ActiveMQ、RabbitMQ和Kafka。RocketMQ的使用人數較少。但是逐漸的成為了主流趨勢

在這裡插入圖片描述

6、分散式快取技術

Redis技術是絕大多數程式設計師在工作中會使用到的分散式快取技術。其次為ehcache,而Memcached佔比較低。Redis 6.0之後支援了多執行緒 那麼是如何實現的呢 ?
在這裡插入圖片描述

7、全文檢索技術

Solr、elasticsearch和Lucene是多數老程式設計師在工作中使用的全文檢索技術。其中,超半數的程式設計師在工作中使用Solr和elasticsearch。
lasticsearch
基於lucene
lucene的侷限性:
只能基於java開發
類庫的介面學習曲線陡峭
原生並不支援水平擴充

Java在IT技術圈中仍然佔據著主流地位,開發者想要不被企業淘汰就需要不斷的學習掌握最新的java的技術,才能更具競爭力。
還有哪些技術,歡迎你們在評論區留言。

————END————

歡迎關注公眾號: Java這點事(ID:Java20177)

簡介:每晚十點給技術人分享Java技術、IT資訊

相關文章