天天看點

Day2&Day3@JavaOne2017

先是社群代表亮相,為Java社群背書。

Day2&Day3@JavaOne2017

接下來是每年都有的Innovation Sponsor Intel的時間,當然不全是廣告,從這個過程中還是可以了解到Intel的一些政策和核心關注點。

Data is Future

Day2&Day3@JavaOne2017

They want to enable the Future by Speed, Scale and Smart

Day2&Day3@JavaOne2017

They have proof that they are faster enough!

Day2&Day3@JavaOne2017

And us Alibaba represents Scalable, Proud!

Day2&Day3@JavaOne2017

Smart means supporting AI

Day2&Day3@JavaOne2017

接下來的部分主要是介紹Java與Cloud,微服務的緊密關系。以及JAVA9的部分特性。包含一系列的DEMO示範,這裡就不多說了,相信其它同學會有更詳細的介紹這塊内容。我個人的收獲就是我極大的增強了對JAVA的信心,我不需要學習其它程式設計語言了,哈哈

此次的微服務相關主題絕大部分都與異步、Reactive、Message Driven、Event Sourcing有關,其實這與很多年前ebay所提出來的能異步則異步很相似。

Day2&Day3@JavaOne2017
Day2&Day3@JavaOne2017

簡單來說就是異步化、消息驅動的微服務編排架構。這樣做的好處是什麼呢?

松耦合

更少的對設計者的依賴,很好的契合了微服務所提倡的自治

更好的并發以及更好的容錯性

當然,不完全是好處,也有缺點:執行的不可預測性,以及不可測性。我覺得作者有意沒有講出更多的缺點。很多相關的Speaker都提出來Reactive的系統,比如使用者送出時異步變更資料庫,通過異步的Server Push再告知使用者結果,有一些為了用而用的嫌疑,因為這樣會帶來很多複雜性,也會對使用者體驗有影響。Anyway, 我們應該審視一下我們哪些系統或服務或子產品是可以異步的

Day2&Day3@JavaOne2017

一、微服務絕對不僅僅是小,是單一職責的原則就可

Day2&Day3@JavaOne2017

以了,微服務要實作團隊間依賴更少的合作,服務要實作自治(做神一樣的隊友)

Day2&Day3@JavaOne2017
Day2&Day3@JavaOne2017

二、承諾說,有點像我們文化裡面的ownership,"即使不是自己的職責,也是推诿"。大家仔細體會一下,尤其是那個tweet。

Day2&Day3@JavaOne2017
Day2&Day3@JavaOne2017
Day2&Day3@JavaOne2017

三、越Hot的資料往往占用了越多的資源,對性能也越關鍵,但往往是占用更少的空間。但是 往往有很多多的不同解決方案

Day2&Day3@JavaOne2017

四、沒有所謂的無狀态, 隻是将狀态推脫給别人。現實生活中,我們的很多方案都是不完美的,都是一種平衡,而我們往往聽到一種觀點,就不假思索的認為可以解決所有的問題,最後再返工浪費時間

Day2&Day3@JavaOne2017

五、所有的事實都在LOG中,資料庫中的資料是LOG的子集。這個觀點是用來引出Event Sourcing的,這塊前面已經介紹過,這裡不再詳述

Day2&Day3@JavaOne2017

六、大家都讨厭最終一緻,但它是necessary的

Day2&Day3@JavaOne2017