新聞中心
上周我參加了在南京舉辦的IAS的架構師峰會,和很多同行溝通,特別是和當當網的首席架構師張亮做了一個結對的分享 —《技術架構演變全景圖—從單體式到云原生》,分享的形式很特殊,采用了一問一答的方式,我作為提問題的,不斷“刁難”張亮,張亮一一解答問題,一番“交鋒”后,聽眾有反饋效果不錯,我自己也收獲了不少。

最重要的一點體會是Java未來也許不再是一個電商選擇語言了。當然在互聯(lián)網其他領域,Java早就不是選擇了,開發(fā)繁瑣,包體積大、運行時開銷大等等,似乎不適合互聯(lián)網創(chuàng)業(yè)。但對于互聯(lián)網電商來說,前有阿里、京東全線轉型Java技術棧的案例,后有餓了么這樣的新興電商也慢慢的從Python轉向Java,示范作用很強。于是,整體是Java架構成了我們這樣的電商軟件提供商的產品賣點之一。
我認為Java的賣點主要是JVM運行時強大、工具鏈成熟,以Spring為首的龐大的生態(tài)提供了完善的開發(fā)體驗。特別是在滿足電商的雙十一高并發(fā)、大容量場景下,有dubbo、Spring Cloud這樣的服務治理框架,不管是Go、Python、Php,都沒有類似的框架可以對比,其他開發(fā)語言想追上這樣的生態(tài)環(huán)境不是一件簡單的事情, 可以說對于目前電商公司來看,Java技術棧是不二的選擇。但是正像三體中的降維打擊概念,打敗你的人不是你同維度的,而是來自其他的領域。Service Mesh(服務網格),這個來自底層云平臺基礎設施正在向上入侵原有的開發(fā)框架的領域。
說起來Service Mesh不是新概念了,在之前就有運維維護nginx的配置,做服務之間的調用代理,但是這個是很原始的狀態(tài)。目前隨著k8s在運維層面一統(tǒng)江山,基于k8s的linkerd、envoy、Istio一系列Service Mesh解決方案發(fā)展非常迅速,Willian Morgan(linkerd的CEO)給出Service Mesh定義:
— 服務網格是一個基礎設施層,用于處理服務間通訊。云原生應用有著復雜的服務拓撲,服務網格負責在這些拓撲中實現(xiàn)請求的可靠傳遞。在實踐中,服務網格同程實現(xiàn)為一組輕量級的網絡代理,它們于應用程序部署在一起,而對應用程序透明。
對應用程序透明這幾個字要畫重點,說明以后再也不需要在開發(fā)層面關注負載均衡、路由、熔斷、限流、服務注冊發(fā)現(xiàn)、分布式跟蹤等等一系列的服務治理內容了,這些都由我們的運行底層設施來完成了。類似網絡七層OSI架構定義,我們做上層開發(fā)的不需要了解TCP、HTTP具體的協(xié)議,而聚焦到我關注的業(yè)務邏輯本身,這種情況很快會在微服務領域再次發(fā)生。下圖預測了在2018年,哪些技術??赡苡捎赟ervice Mesh的發(fā)展而被拋棄掉。
在這種情況下Java引以為傲的框架都無用武之地了,雖然Java的開發(fā)體驗依然不錯,但是未來的標準不一定是開發(fā)者引導的,運維可能會制定所謂的Cloud Native標準,要求滿足標準的,才能上平臺進行運行和調度。多語言在Service Mesh中一視同仁,我們很可能用Go來開發(fā)網絡服務,用Php來做Web,用Node來做網關API,用Java做業(yè)務邏輯,服務之間的通訊就交給Service Mesh來統(tǒng)一處理,而整個龐大的微服務體系交由k8s這樣的平臺來調度和編排。
好一幅藍圖,也許我們還覺得可能有點遙遠--Istio才0.3版本,等它到了1.0再說,不過互聯(lián)網技術迭代極快,而且Istio系出名門,發(fā)展勢頭不可小視,大有席卷天下的感覺。這樣的變革對新興的語言Go之類的是極大的利好,但是對Java并不是好事。特別對于我這樣2003年接觸Java的老程序員說,對Java是有特殊感情的,難道我們真的要見證一個時代的結束了么?
我覺得Java要發(fā)展下去,還是有機會的:
-
在開發(fā)體驗、工程化方面要繼續(xù)強化。Java8+Spring boot+Lombok使用體驗經常讓我感覺不到在寫繁瑣的Java。
-
微服務的領域驅動設計特別重要,而在領域驅動設計實現(xiàn)中Java是主流,目前還沒有太好的替代語言。
-
強化目前的JVM上的語言生態(tài),包括Kotlin、Scala等,也許會有下一個殺手應用出現(xiàn),抓住類似AI這樣的風口機會。
未來怎么樣,讓我們拭目以待。
版權說明:本文采用CC BY 3.0 CN協(xié)議進行許可。
新聞標題:Java未來也許不再是電商的選擇開發(fā)語言!
標題URL:http://m.5511xx.com/article/cciocss.html


咨詢
建站咨詢
