日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

在OpenShift上将JMS与JBoss A-MQ结合使用。 从远程客户端和加密中学到的经验教训。...

發布時間:2023/12/3 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 在OpenShift上将JMS与JBoss A-MQ结合使用。 从远程客户端和加密中学到的经验教训。... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

OpenShift是“紅帽開發的開放式混合云應用程序平臺”。 它具有不同的風格,對于大多數您想做的事情,最有趣的部分是公共云應用程序開發和托管平臺“ OpenShift Online ”。 您可以輕松地嘗試一下,因為在云中使用OpenShift Online是免費的,而且很容易。 它所需要的只是一個電子郵件地址 。 該免費產品允許多達三個基本的小型設備,并可以托管來自多種不同語言和框架的多達三個應用程序。 如果您需要更多,可以將您的計劃升級到付費版本。 有關更多詳細信息,請訪問在線功能比較網站 。


OpenShift上的JBoss A-MQ

Java消息服務是跨系統通信的有效方法,即使在非Java應用程序之間也是如此。 通過基于開放源代碼技術和強大的標準,RedHat OpenShift使開發人員可以輕松地將其JMS應用程序移動到云中,或編寫利用已加密Internet連接利用JMS消息的新系統。

這篇文章將介紹使用兩個主要應用程序的方法:用于托管Web應用程序的WildFly 8和用于異步消息傳遞的JBoss A-MQ 。 這兩個應用程序都可以在OpenShift的免費層中運行。

創建一個A-MQ裝備

通過將A-MQ部署到OpenShift云,您的設備將收到幾個可公開訪問的端口。 然后,客戶端系統可以使用這些遠程端口連接到您的A-MQ服務。 端點需要加密,因此不會在Internet上以純文本形式發送JMS消息。

創建A-MQ裝備的第一步是克隆現有的JBoss Fuse A-MQ墨盒。 對于那些對墨盒管理感興趣的人,可以查看有關該墨盒的完整詳細信息 。 (注意:如果您正在尋找帶有ActiveMQ的上游墨盒, 請查看此博客。 )

rhc create-app amq http://is.gd/Q5ihum

創建后,該齒輪會提供三個重要的信息:

  • 您將用于登錄JBoss Fuse的管理密碼,用于管理A-MQ。
  • 客戶必須具有一個新的公用密鑰才能與A-MQ通信。 該信息如下所示:

    —–BEGIN證書-

    -結束證書-

  • A-MQ用于遠程連接的公共端口列表。
  • 在OpenShift上管理加密

    客戶端和您的OpenShift設備之間的區別在于OpenShift需要私鑰。 如果需要更改密鑰,則密鑰庫文件為FILENAME。 如果更改密鑰,則客戶端必須具有公共密鑰,然后他們才能信任它。 如果更改鍵,則必須重新啟動齒輪。 如果您在創建齒輪時忘記了復制證書,而您更改了密鑰庫并需要提取證書,請使用以下命令:

    keytool -list -keystore ~/jboss-amq/jboss-a-mq-6.1.0.redhat-378/etc/keystore.jks keytool -exportcert -alias (whatever it says) -keystore -file openshiftamq.cer

    使用SFTP客戶端下載openshiftamq.cer文件并配置客戶端。

    在客戶端上管理加密

  • 將密鑰文本復制到名為amqpublic.cer的文件中。 復制每一行,包括BEGIN和END行。
  • 將公共證書導入到客戶將使用的信任庫中。 keytool -importcert -alias openshiftamq -file openshiftamq.cer openshiftamq.jks
  • 將openshiftamq.jks文件放置為應用程序的類路徑資源或值得紀念的地方。 您不再需要.cer文件,但仍可以保留它。
  • 在客戶端代碼中,將此信任庫配置為與A-MQ連接一起使用。 如果不執行此步驟,則客戶端將不信任服務器。 private ConnectionFactory connection(String url) {ActiveMQSslConnectionFactory connectionFactory = new ActiveMQSslConnectionFactory(url);try {connectionFactory.setTrustStore("openshiftamq.jks"); //or file if not in classpath root} catch (Exception ex) {Logger.getLogger(getClass().getName()).log(Level.SEVERE, "Unable to load trust store.", ex);}connectionFactory.setTrustStorePassword("put your password here");return connectionFactory; }
  • 客戶遠程通訊

    使用OpenShift保險絲A-MQ裝置的好處之一是可以暴露多個外部端口。 因此,無需使用rhc port-forward命令即可使用A-MQ服務。 A-MQ客戶的URL如下所示:

    ssl://gearname-YourDomain.rhcloud.com:PORT
    • 齒輪名-管理控制臺中齒輪的名稱。
    • YourDomain –您的標準OpenShift域。
    • PORT –創建盒帶時提供的數字端口號。

    使用上面的ConnectionFactory代碼配置客戶端。

    OpenShift Gear中的其他ActiveMQ配置

    您的OpenShift實例中提供了標準A-MQ實例的許多配置選項。 為此的配置文件是:

    ~/jboss-amq/jboss-a-mq-6.1.0.redhat-78/etc/activemq.xml

    有一些警告。 即,您可以更改<transportConnector />的協議,但不能更改IP或端口。 這些端口由您的OpenShift Gear控制,并且實際上是外部區域唯一允許的端口。

    防止齒輪空轉

    OpenShift被設計為資源共享系統,并且空閑資源實際上將進入睡眠狀態,直到被訪問為止。 JMS在OpenShift上造成了一個特殊的問題,即如果它處于空閑狀態,則連接將不起作用,新客戶端也無法連接。

    為防止這種情況,請自動執行一個腳本,該腳本會定期與JBoss Fuse Web控制臺進行交互,或者始終保持至少一個客戶端與您的A-MQ連接。

    翻譯自: https://www.javacodegeeks.com/2014/11/jms-with-jboss-a-mq-on-openshift-lessons-learned-about-remote-clients-and-encryption.html

    總結

    以上是生活随笔為你收集整理的在OpenShift上将JMS与JBoss A-MQ结合使用。 从远程客户端和加密中学到的经验教训。...的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。