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

{"type":"doc","content":[{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"JAVA語言作爲歷史最爲悠久的編程語言,從95年5月開始歷經數十年依然盤踞在編程榜前三的位置,與它強大的功能和廣泛的運用分不開。JAVA 技術的更新迭代是開發者應該關注的問題,下面盤點一下2020年互聯網企業在JAVA 開發中有哪些主流、熱門的IT技術,幫助大家在職場中快速崛起。","attrs":{}}]},{"type":"heading","attrs":{"align":null,"level":2},"content":[{"type":"text","text":"1、微服務技術","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"首當其衝的就是我們的微服務技術,從最開始的單體式服務,逐步的演化到集羣,分佈式,以及現在的微服務。","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"其中在微服務架構主要有:Spring Cloud alibaba、 Dubbo、 ZooKeeper等,以 Dubbo佔比26.18%,微服務網關技術,這些技術的變更是隨着時代的潮流在不斷前進的 我們也是不斷的去進步學習。","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"image","attrs":{"src":"https://static001.geekbang.org/infoq/b0/b0470e517b2d85b49862c1677ee31fa1.png","alt":"在這裏插入圖片描述","title":null,"style":[{"key":"width","value":"75%"},{"key":"bordertype","value":"none"}],"href":null,"fromPaste":true,"pastePass":true}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"heading","attrs":{"align":null,"level":2},"content":[{"type":"text","text":"2、遠程調用技術","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"RPC遠程過程調用是什麼?","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"1、簡單的來說,RPC就是從一臺機器上通過參數傳遞的方式調用另外一臺服務器上的一個函數或者方法,並得到返回結果。","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"2、RPC會隱藏底層的通訊細節,不需要直接處理Socket通訊或者Http通訊","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"3、RPC是一個請求響應模型,客戶端發起請求,服務器返回響應。","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"4、RPC在使用形式上想調用本地函數(或者方式)一樣去調用遠程的函數或者方法。","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"早期的RPC:","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"第一代 RPC(ONC RPC,OSF RPC)不支持對象的傳遞。CORBA太複雜,各種不同實現不兼容,一般程序員也玩不轉。DCOM,COM+ 逃不出 Windows的手掌心。RMI 只能在 Java裏面玩。.NET Remoting 只能在 .NET 平臺上玩。","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"現在使用RPC框架的程序員中, 使用Dubbo的人數佔比較高,其次爲 dubbox、gRPC、hessian也具有一定的使用比例。 較於早期的RPC有了較大的提升,可以在多平臺語言使用。","attrs":{}}]},{"type":"heading","attrs":{"align":null,"level":2},"content":[{"type":"text","text":"3、開發技術","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"多數程序員在工作中使用的開發技術爲權限管理和消息隊列。1/4的程序員在工作中使用的開發技術爲報表技術、分佈式緩存技術和負載均衡解決方案。當前2020年內最火的技術 就是 redis RocketMQ 和 ES等 技術 下面會進行詳細的描述。","attrs":{}}]},{"type":"heading","attrs":{"align":null,"level":2},"content":[{"type":"text","text":"4、權限管理技術","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"從控制力度來看,可以將權限管理分爲兩大類:","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"1、功能級權限管理;","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"2、數據級權限管理。","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"從控制方向來看,也可以將權限管理分爲兩大類:","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"1、從系統獲取數據,比如查詢訂單、查詢客戶資料;","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"2、向系統提交數據,比如刪除訂單、修改客戶資料。","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"首當其衝的 就是shiro,其次爲spring security 以及 auth2和自定義框架等 。","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"一般就使用基於角色訪問控制技術RBAC(Role Based Access Control)。該技術被廣泛運用於各個系統,非常容易掌握。","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"image","attrs":{"src":"https://static001.geekbang.org/infoq/9e/9e07c08d1f3985f6a0da5dc01315b20b.png","alt":"在這裏插入圖片描述","title":null,"style":[{"key":"width","value":"75%"},{"key":"bordertype","value":"none"}],"href":null,"fromPaste":true,"pastePass":true}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"heading","attrs":{"align":null,"level":2},"content":[{"type":"text","text":"5、消息隊列技術","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"消息中間件屬於分佈式系統中的一個子系統,關注於數據的發送和接收,利用高效可靠的消息傳遞機制對分佈式系統中的其餘各個子系統經進行集成","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"消息隊列技術主要有:ActiveMQ、RabbitMQ和Kafka。RocketMQ的使用人數較少。但是逐漸的成爲了主流趨勢","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"image","attrs":{"src":"https://static001.geekbang.org/infoq/a4/a4ded22d3a25f5f100546948663e6339.png","alt":"在這裏插入圖片描述","title":null,"style":[{"key":"width","value":"75%"},{"key":"bordertype","value":"none"}],"href":null,"fromPaste":true,"pastePass":true}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"heading","attrs":{"align":null,"level":2},"content":[{"type":"text","text":"6、分佈式緩存技術","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"Redis技術是絕大多數程序員在工作中會使用到的分佈式緩存技術。其次爲ehcache,而Memcached佔比較低。Redis 6.0之後支持了多線程 那麼是如何實現的呢 ?","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"image","attrs":{"src":"https://static001.geekbang.org/infoq/ab/aba83f4c5d8e9bff6b054b4d7633b0be.png","alt":"在這裏插入圖片描述","title":null,"style":[{"key":"width","value":"75%"},{"key":"bordertype","value":"none"}],"href":null,"fromPaste":true,"pastePass":true}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"heading","attrs":{"align":null,"level":2},"content":[{"type":"text","text":"7、全文檢索技術","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"Solr、elasticsearch和Lucene是多數老程序員在工作中使用的全文檢索技術。其中,超半數的程序員在工作中使用Solr和elasticsearch。","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"lasticsearch","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"基於lucene","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"lucene的侷限性:","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"只能基於java開發","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"類庫的接口學習曲線陡峭","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"原生並不支持水平拓展","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"Java在IT技術圈中仍然佔據着主流地位,開發者想要不被企業淘汰就需要不斷的學習掌握最新的java的技術,才能更具競爭力。","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"還有哪些技術,歡迎你們在評論區留言。","attrs":{}}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"轉載:https://www.cnblogs.com/Javazds/p/14167854.html","attrs":{}}]}]}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章