亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Java后端程序員需要做什么

發布時間:2022-02-23 10:18:04 來源:億速云 閱讀:156 作者:小新 欄目:開發技術

這篇文章主要介紹了Java后端程序員需要做什么,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

1. 前后端的分離

隨著大家對瀏覽器頁面的視覺和交互要求越來越高,“套模板”的方式漸漸無法滿足要求,這個所謂的表示層慢慢地遷移到瀏覽器當中去了,一大批像 Angular, ReactJS 之類的框架崛起,前后端分離了!

后端的工程師只負責提供接口和數據,專注于業務邏輯的實現,前端取到數據后在瀏覽器中展示,各司其職。

像 Java 這樣的語言很適合去實現復雜的業務邏輯,尤其是一些 MIS 系統,行業軟件如稅務、電力、煙草、金融,通信等等。  所以剝離表示層,只做后端挺合適的。 

但是如果僅僅是實現業務邏輯,那后端也不會需要這么多技術了,搞定 SSH/SSM 就行了。 

2. 后端技術

互聯網,尤其是移動互聯網開始興起以后,海量的用戶呼嘯而來,一個單機部署的小小 War 包肯定是撐不住了,必須得做分布式。 

原來的單個 Tomcat 得變成 Tomcat 的集群,前邊弄個 Web 服務器做請求的負載均衡,不僅如此,還得考慮狀態問題,session 的一致性。

業務越來越復雜,我們不得不把某些業務放到一個機器(或集群)上,把另外一部分業務放到另外一個機器(或集群)上,雖然系統的計算能力,處理能力大大增強,但是這些系統之間的通信就變成了頭疼的問題,消息隊列(MQ),RPC框架(如Dubbo)應運而生,為了提高通信效率,各種序列化的工具(如Protobuf)也爭先空后地問世。

單個數據庫也撐不住了,那就做數據庫的讀寫分離,如果還不行,就做分庫和分表,把原有的數據庫垂直地切一切,或者水平地切一切, 但不管怎么切,都會讓應用程序的訪問非常麻煩,因為數據要跨庫做 Join/ 排序,還需要事務,為了解決這個問題,又有各種各樣“數據訪問中間件”的工具和產品誕生。

為了最大程度地提高性能,緩存肯定少不了,可以在本機做緩存(如Ehcache),也可以做分布式緩存(如Redis),如何搞數據分片,數據遷移,失效轉移,這又是一個超級大的主題了。

互聯網用戶喜歡上傳圖片和文件,還得搞一個分布式的文件系統(如FastDFS),要求高可用,高可靠。

數據量大了,搜索的需求就自然而然地浮出水面,你得弄一個支持全文索引的搜索引擎(如Elasticsearch ,Solr)出來。

林子大了,什么鳥都有,必須得考慮安全,數據的加密/解密,簽名、證書,防止 SQL 注入,XSS/CSRF 等各種攻擊。

3. “大后端”

前面提到了這么多的系統,還都是分布式的,每次上線,運維的同學說:把這么多系統協調好,把老子都累死了。

得把持續集成做好,能自動化地部署,自動化測試(其實前端也是如此),后來出現了一個革命化的技術 docker, 能夠讓開發、測試、生成環境保持一致,系統原來只是在環境(如Ngnix, JVM,Tomcat,MySQL等)上部署代碼,現在把代碼和環境一并打包, 運維的工作一下子就簡化了。

公司自己購買服務器比較貴,維護也很麻煩,又難于彈性地增長,那就搞點虛擬的服務器吧,硬盤、內存都可以動態擴展(反正是虛擬的), 訪問量大的時候多用點,沒啥訪問量了就釋放一點,按需分配,很方便,這就是云計算的一個場景。

隨著時間的推移,各個公司和系統收集的數據越來越多,都堆成一座大山了,難道就放在那里白白地浪費硬盤空間嗎?

有人就驚奇地發現,咦,我們利用這些數據搞點事情啊, 比如把數據好好分析一下,預測一下這個用戶的購買/閱讀/瀏覽習慣,給他推薦一點東西嘛。

可是這么多數據,用傳統的方式計算好幾天甚至好幾個月才能出個結果,到時候黃花菜都涼了,所以也得利用分布式的技術,想辦法把計算分到各個計算機去,然后再把計算結果收回來, 時勢造英雄,Hadoop 及其生態系統就應運而生了。

之前聽說過一個大前端的概念,把移動端和網頁端都歸結為“前端”,我這里造個詞“大后端”,把那些用戶直接接觸不到的、發生在服務器端的都歸結進來。

4. 怎么學?

現在無論是前端還是后端,技術領域多如牛毛,都嚴重地細分了,所以我認為真正的全棧工程師根本不存在,因為一個人精力有限,不可能搞定這么多技術領域,太難了。

培訓機構所說的“全棧”,我認為就是前后端還在拉拉扯扯,藕斷絲連,沒有徹底分離的時候的“全棧”工程師。

那么問題來了, 后端這么多東西,我該怎么學?

往深度挖掘,可以成為某個技術領域的專家,如搜索方面的專家、安全方面的專家,分布式文件的專家等等,不管是哪個領域,重點都不是學會使用某個工具和框架, 而是保證你可以自己的知識和技術去搞定這個領域的頂尖問題。

往廣度發展,各個技術領域都要了解,對于某種需求,能夠選取合適的軟件和技術架構來實現它,把需求轉化成合適的技術組件,讓這些組件以合適的方式連接、部署、運行,這也需要持續地學習和不斷的經驗積累。

感謝你能夠認真閱讀完這篇文章,希望小編分享的“Java后端程序員需要做什么”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,更多相關知識等著你來學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

英德市| 名山县| 翁源县| 波密县| 石楼县| 达尔| 甘泉县| 炉霍县| 万年县| 永嘉县| 阳高县| 施甸县| 连城县| 华宁县| 武义县| 上蔡县| 特克斯县| 瑞安市| 扎囊县| 基隆市| 泰来县| 罗源县| 衡阳县| 马关县| 荣昌县| 南川市| 绥宁县| 赣州市| 上高县| 长乐市| 焉耆| 扶绥县| 崇左市| 瑞金市| 海伦市| 大荔县| 剑阁县| 内丘县| 保山市| 辛集市| 宜昌市|