Vertx编程风格:您的反应式Web Companion REST API解释了
Vertx提供了許多在輕量級環境中進行編程的選項,例如node.js。 但是,對于新用戶來說,選擇采用哪種方法來創建REST API幾乎不會造成混淆。
在vertx中編程時可以采用不同的模型。 下面通過易于理解的圖表對其進行說明。
PS – vertx編程的核心是對vertx對象的引用, 該對象可以是靜態獲取的,也可以是具有繼承AbstractVerticle類的頂點的繼承成員。 現在您知道了在哪里獲取vertx對象。 讓我們進一步潛水。
vertx中不同的編程模型分為以下幾類,我為每個模型添加了一些有趣的名稱:):-
模型1 – FaceToFace方法 :
如圖所示,在此模型中,客戶端以http請求的形式發送事件,這些事件通過Router緩沖到服務器verticle。 路由器可以通過使用獲得
Router.router(頂點)
現在,我們可以配置路由器以處理http請求。 小心,路由器處理程序是同步調用。 要運行阻止調用或任何異步操作,請使用executeBlocking或采用Model#2
模型2 –媒人方法 :
顧名思義,您不能直接與其他人交談,您將不得不通過約會大賽制造商,即活動巴士。 當您在不同的計算機上運行大量微服務或要在一臺計算機上模塊化代碼時,此模型很有用。 消息具有標頭,正文,地址,并且通過調用message.reply(Object),接收方頂點可以將響應發送回發送方。
模式3:配對教練方法 :
在這里,媒人也將成為一名教練,他將幫助您如何連接其他頂點。 它通過代碼生成來幫助將服務與事件總線綁定,從而使調用服務方法更加容易。
主要思想是服務名稱服務(java接口)以及將作為REST API公開的相應實現服務實現 。 但是在vertx中不可能像在Spring Web或其他框架中那樣直接。 為了公開Service接口,您需要創建一個AsyncService接口及其實現,該接口將模仿Service方法,但是簽名幾乎沒有什么不同。
示例:在服務界面中,您可以使用以下方法:
public User getUser(final String verificationToken) {...}在異步服務界面中,外觀類似
void getUser(String verificationToken, Handler<AsyncResult<User>> resultHandler)在這里,我們以vertx Handler的形式向該方法添加了一個額外的參數,該參數返回一個AsyncResult,從而可以進行非阻塞調用。 同樣,返回類型為void。 可以使用resultHandler回調從客戶端獲取結果。
請在下方留下你的意見。
編碼愉快!
翻譯自: https://www.javacodegeeks.com/2018/03/vertx-programming-style-your-reactive-web-companion-rest-api-explained.html
總結
以上是生活随笔為你收集整理的Vertx编程风格:您的反应式Web Companion REST API解释了的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 抖音怎么设置喜欢的作品不给别人看
- 下一篇: apache log4j_Apache