中文字幕在线观看,亚洲а∨天堂久久精品9966,亚洲成a人片在线观看你懂的,亚洲av成人片无码网站,亚洲国产精品无码久久久五月天

ImportNew一周資訊:開發(fā)者應(yīng)該了解的 RabbitMQ 最佳實踐

2018-12-21    來源:importnew

容器云強勢上線!快速搭建集群,上萬Linux鏡像隨意使用

ImportNew小編為您搜集有關(guān)Java業(yè)界、資源一周資訊(2018.12.10)。
(內(nèi)容無特殊說明均為英文,這里僅做摘編,點擊鏈接可直達原文。)

1. RabbitMQ 最佳實踐(視頻+文章):來自??pivotal

解讀:這份視頻列表里包含了以下內(nèi)容:

  • 視頻:現(xiàn)實世界中的 RabbitMQ 部署?— Gerhard Lazu & Wayne Lund
  • 視頻:從數(shù)千個 RabbitMQ 生產(chǎn)集群中得到的經(jīng)驗總結(jié)?— Lovisa Johansson
  • 視頻:主旨演講:RabbitMQ 習(xí)慣用語?—?Gavin M Roy
  • 視頻:專題討論:RabbitMQ 即將可用的新特性
  • 視頻:每位使用 RabbitMQ 開發(fā)者都應(yīng)該知道的10件事?2018.12 網(wǎng)絡(luò)研討會
  • 視頻:RabbitMQ?最佳實踐 — 配合?CloudAMQP
  • 視頻:RabbitMQ 與微服務(wù)故障診斷及使用建議?— Michael Klishin
  • 博客:高性能(高吞吐量)RabbitMQ 最佳實踐
  • 博客:13 個 RabbitMQ 常見錯誤

 

2. J2CL—遲到總比不到好:來自?javacodegeeks

解讀:J2CL 由 Google GWT 小組開發(fā),可以把 Java 翻譯成 Closure 風(fēng)格的 JavaScript 代碼。J2CL 通過轉(zhuǎn)譯器(transpiler)借助 Closure 編譯器實現(xiàn),基于?Bazel 進行構(gòu)建。2015年齊 J2CL 開源就被提上了日程。2018年12月5日,Google 終于開源了 J2CL 的源代碼 https://github.com/google/j2cl。盡管目前使用起來還有一些限制,但遲到總比不到好。

 

3. 使用 Java 10 Graal 和 C2 比較 Kotlin 性能:來自?javaadvent

解讀:Java 10 引入了新的 Graal 編譯器,對比傳統(tǒng)的 C2 編譯器優(yōu)勢如何?這篇文章用游戲程序?qū)Χ咝阅苓M行了測試。作者實現(xiàn)了曼德布洛特復(fù)數(shù)集合生成器(Mandelbrot Set?Generator)與背包解算器(Knapsack Solver),實現(xiàn)采用 Kotlin 語言,分別用 Graal 與 傳統(tǒng) C2 編譯器編譯。對比結(jié)果如下:

  • 曼德布洛特復(fù)數(shù)集合生成器測試:Graal 比 C2 快 18%。
  • 背包解算器(遞歸實現(xiàn))測試:優(yōu)化前?Graal?比 C2 慢?54%,改進 key 生成后 Graal 比 C2 快了一些。
C2 對經(jīng)典的 Java 用法進行了大量優(yōu)化,而 Graal 在小方法和輕量級對象上有優(yōu)勢,后者更符合 Kotlin 的使用習(xí)慣。

 

4. JDPR— Java數(shù)據(jù)保護推薦 :來自 javaadvent

解讀:個人用戶信息(personally-identifiable information PII)保護已經(jīng)成為了大家關(guān)注的話題,歐盟在2018年公布了GDPR(公民通用數(shù)據(jù)保護條例)。這篇文章介紹了在 Java 應(yīng)用中保護個人信息推薦措施:

  1. 在應(yīng)用中定位個人信息和敏感數(shù)據(jù):比如在 POJO 中搜尋類似?getAddress()、getName() 這樣的 API,在 JDBC 和 ORM 開發(fā)庫中檢查數(shù)據(jù)查詢,借助類似 CONTRAST 這樣的安全檢查工具 ;
  2. 合理地進行加密:開發(fā)者可以很好地利用?Java 加密套件。JDK9 開始默認不限制加密能力(早先版本由于出口要求默認開啟限制)。常見的加密方法包括哈希、對稱加密與非對稱加密。視頻:如何應(yīng)用 Java 加密;
  3. 為自定義代碼、開發(fā)庫與 JRE 打補丁?梢越柚?OWASP 依賴檢查工具或?CONTRAST?社區(qū)版對項目進行已知漏洞檢查。

 

5. Docker 與 JVM:來自 javaadvent

解讀:“一次編寫,到處運行”的問題。這句話對 Java class 本身沒有問題,但數(shù)據(jù)庫驅(qū)動、文件系統(tǒng)訪問、網(wǎng)絡(luò)訪問、第三方開發(fā)庫可能就沒那么肯定了。對比傳統(tǒng)虛擬機解決方案,在 Docker 上部署 Java 有幾大優(yōu)勢,部署的文件小、可分層部署。例如,一個典型的 Dockerfile 可能類似這樣,每個步驟都可以作為獨立的層次(layer):

  1. 全新 Ubuntu 安裝;
  2. 安裝 Java;
  3. 安裝依賴 A;
  4. 安裝依賴 B;
  5. 拷貝 jar 文件。
當(dāng)然,Docker 部署 Java 還是有一些坑。比如 JVM 無法“理解”容器的內(nèi)存和 CPU 限制。文章里給出了 JVM Dockerfile 的通用解決方案。
本文作者在倫敦 CodeNode 上的視頻講解: Cloud Ready JVM with Kubernetes。

 

6. Serverless, Java 與 FN 項目,小試牛刀:來自 javaadvent

解讀:除了傳統(tǒng)的云服務(wù)廠商,越來越多的 Serverless 項目可以擺脫廠家的鎖定,提供了更多的選擇。這篇文章介紹了 FN 項目?http://fnproject.io/,用 Java 方便地開發(fā)出一個 Serverless 功能。用 FN 開發(fā)一個 Serverless 功能主要有以下幾步:

  1. 初始化建立項目:依賴?Docker 17.10.0-ce 或更高版本,下載 FN;
  2. 初始化 FN 功能:用 fn init 命令初始化項目結(jié)構(gòu),打開生成的?HelloFunction.java 處理請求,核心功能在 func.yaml 中提供了實現(xiàn);
  3. 單元測試:實現(xiàn)?HelloFunctionTest.java,加入 @Run 添加依賴,添加測試代碼;
  4. 部署與調(diào)用:驗證功能,訪問 http://localhost:8080/t/myapp1/function1-trigger,返回 Hello, Java!;
  5. 擴展功能:使用 JSON 進行請求。

真的很迅速,可以自己動手試一下。

 

7. 如何用 Hibernate 把 PostgreSQL Enum 映射到 JPA 實體屬性:來自?javaadvent

解讀:hibernate-types 開源項目可以映射 JSON、數(shù)據(jù)、YearMonth、Month 或數(shù)據(jù)庫里的數(shù)據(jù)列。這篇短文介紹了如何使用 JPA 和 Hibernate 映射?PostgreSQL Enum 類型:添加 Maven 依賴,定義模型,測試。

關(guān)于作者: 唐尤華

唐尤華

我喜歡程序員,他們單純、固執(zhí)、容易體會到成就感;面對壓力,能夠挑燈夜戰(zhàn)不眠不休;面對困難,能夠迎難而上挑戰(zhàn)自我。他們也會感到困惑與傍徨,但每個程序員的心中都有一個比爾蓋茨或是喬布斯的夢想“用智慧開創(chuàng)屬于自己的事業(yè)”。我想說的是,其實我是一個程序員。(新浪微博:@唐尤華

查看唐尤華的更多文章 >>

標(biāo)簽: Google 安全 代碼 開發(fā)者 漏洞 數(shù)據(jù)庫 網(wǎng)絡(luò) 云服務(wù)

版權(quán)申明:本站文章部分自網(wǎng)絡(luò),如有侵權(quán),請聯(lián)系:west999com@outlook.com
特別注意:本站所有轉(zhuǎn)載文章言論不代表本站觀點!
本站所提供的圖片等素材,版權(quán)歸原作者所有,如需使用,請與原作者聯(lián)系。

上一篇:常被問到的十個 Java 面試題

下一篇:ImportNew一周資訊:JDK 9, 10與11中的安全改進