54
技術社區[雲棲]
Java:Shall we begin?
內容來源:2017年5月21日,豆子科技首席架構師鍾聲在“餓了麼java專場”進行《Java的純真年代》演講分享。IT大咖說作為獨家視頻合作方,經主辦方和講者審閱授權發布。
嘉賓分享視頻地址:https://t.cn/RSXPHEE
很多人已經忘記了Java的純真
用Java去寫跨平台的基礎軟件,利用java優秀的網絡處理能力,去探尋異構係統跨平台java多線程服務程序。
Java的Socket程序也許是用得最多的一個應用方向。每天都在為java多線程的開銷而煩惱,不斷的進行性能診斷和係統的優調。
有時候為了解決java內存消耗太大的問題徹夜未眠。為了降低內存的消耗,減少與磁盤交換數據的可能性而煩惱。為了讓java程序跑得快,不斷的去嚐試簡化應用程序。
互聯網讓純真,再次回歸
快速上線
快速地將程序開發出來,並快速地進行部署上線。如今互聯網越來越快,產品的推出也越來越快,公司和公司之間拚的就是速度。
高並發
用戶量一旦增大,後台的服務器和架構要能支撐得住。
海量數據
大量數據在提供服務,要在海量數據中做數據挖掘和數據分析,為客戶提供所需的東西。
Saas
Saas做一套係統供很多企業用戶使用,用戶看起來覺得每個係統都是他的私有係統,實際上是同一套架構。
而以上這些在有些程序員眼裏,好像跟java是無關的。
那麼再看看一下這些與java有關嗎?
5000次/秒並發的服務;
1w台網絡設備監控指標采集隻需9秒就能完成;
從每天數據增量在20GB的數據庫裏拿出數據出圖表;
高並發的DNS Server;
……
這些都是用java寫的。
一則故事
曾經有一個java開發團隊項目中遇到了一個“數據導出速度慢”的問題,原因是由於其導出方式導致大數據量在網絡上傳遞,導致網絡傳遞速度慢進而影響整體導出速度慢。
然而這個團隊的主管錯誤地認為,這是由於java本身的速度導致的。於是花大力氣招聘C語言工程師來重新完成這個程序的編碼。
最終,C語言工程師開發了近兩個月,由於完全仿照原java導出程序的程序處理方式,結果依然沒有任何改進。
這個主管沒有從影響導出速度的“大數據量”方麵入手解決問題,而是想當然的認為對速度的影響主要來自於java語言本身,最終導致了程序的失敗。
鋒利的設計
作為java程序員,我們不要“青龍偃月刀”,而是需要“紅纓槍”,一槍命中。
想要“青龍偃月刀”的程序員,總是想要完美無瑕疵,就怕有人說自己不專業,程序設計得就越發複雜,濫用設計模式。被架構師“拖死”的公司比比皆是,真是哀鴻遍野。
很多老板誤認為投入足夠的資金和人力就能開發出優秀的係統,其實不然。就好比一個醜女即使全是戴滿金條,依然還是醜女。而最終唯一的結果隻是浪費了資金。
它的好處就是完整地實現了HTTP協議,方便控製緩存和觸發機製;對HTTP的接收和返回進行了改造,提高靈活性;省去了原來HTTP一些標準複雜的協議細節。
這個架構在1w台網絡設備監控指標采集隻需9秒就能完成。
這是一個高並發的DNS Server。
Java是純真的
讓我們變得不再純真的並不是Web開發工作本身,讓我們不再純真的是包裹在一個單純的java開發技術外的複雜的、八股的、晦澀的概念,讓我們變得越來越虛偽,越來越務虛。
我們應讓java自由、直接、透明、簡單、高效,像匕首那樣鋒利,像戰士那樣勇勐,像農夫那樣樸實。
反對繁瑣華麗的設計,反對架床迭屋的層層抽象,反對複雜的結構和不必要的靈活性。
我的分享到此結束,謝謝大家!
---------葉子分割線----------------------------
福利贈票!
IT大咖說作為第二屆APMCon中國應用性能管理大會的官方現場直播合作夥伴,特為小夥伴們爭取了少量免費VIP票福利(原價¥1388)!
獲取方式:
掃碼加這位小姐姐微信(或加微信號:ITDKS666),她會告訴你咋獲取!(備注:聽雲社區)
小茉莉
最後更新:2017-08-13 22:50:11