自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

挑戰(zhàn)有何不同!云環(huán)境中開發(fā) vs 云環(huán)境中管理

原創(chuàng)
云計(jì)算
云計(jì)算的優(yōu)點(diǎn)已經(jīng)被捧上了天,主要包括能夠帶來業(yè)務(wù)敏捷性、可擴(kuò)展性、效率以及節(jié)省成本;而許多公司正以越來越快的步伐,遷移和構(gòu)建專門面向云環(huán)境的關(guān)鍵任務(wù)型Java應(yīng)用程序。我們最近采訪了AppDynamics 公司的工程技術(shù)主管Bhaskar Sunkara——這家應(yīng)用程序性能公司專注于Java和云應(yīng)用程序,探討了為云環(huán)境開發(fā)Java應(yīng)用程序以及在云環(huán)境中管理這些應(yīng)用程序面臨的挑戰(zhàn)。

云計(jì)算的優(yōu)點(diǎn)已經(jīng)被捧上了天,主要包括能夠帶來業(yè)務(wù)敏捷性、可擴(kuò)展性、效率以及節(jié)省成本;而許多公司正以越來越快的步伐,遷移和構(gòu)建專門面向云環(huán)境的關(guān)鍵任務(wù)型Java應(yīng)用程序。我們最近采訪了AppDynamics 公司的工程技術(shù)主管Bhaskar Sunkara——這家應(yīng)用程序性能公司專注于Java和云應(yīng)用程序,探討了為云環(huán)境開發(fā)Java應(yīng)用程序以及在云環(huán)境中管理這些應(yīng)用程序面臨的挑戰(zhàn)。

為云環(huán)境進(jìn)行開發(fā)面臨哪些挑戰(zhàn)?

為云環(huán)境進(jìn)行開發(fā)面臨的主要挑戰(zhàn)之一是,了解應(yīng)用程序與服務(wù)的依賴關(guān)系(application service dependencies)是如何處理的,這比了解編程語言還要重要。應(yīng)用程序與服務(wù)的依賴關(guān)系包括:分布式環(huán)境中部署的數(shù)據(jù)庫、消息服務(wù)器或其他服務(wù)。這些傳統(tǒng)上是通過在部署過程中將服務(wù)引用映射到物理IP來處理的,但是云帶來了一個(gè)新的變化因素,連IP地址都不是事先知道的。
那么,您如何知道所有這些依賴關(guān)系在哪里、又該如何利用它們?

從根本上來講,當(dāng)你擁有面向服務(wù)的環(huán)境時(shí),會有許多服務(wù)彼此“會話”,并且利用眾多基礎(chǔ)架構(gòu)元素。在任何一個(gè)特定的時(shí)間,你的服務(wù)可能使用所有其他這些服務(wù)。在傳統(tǒng)的靜態(tài)環(huán)境中,你很容易了解這些元素在哪里,然后編寫代碼。開發(fā)人員能夠確認(rèn)資源,會知道應(yīng)用程序一旦部署下去,要使用什么資源??墒窃谠骗h(huán)境中,無法保證應(yīng)用程序會使用哪種IP,也無法保證它會如何查找服務(wù)或數(shù)據(jù)。

開發(fā)人員需要深入了解如何以一種非常明智的方式來使用服務(wù)。高效找到資源的功能需要成為應(yīng)用程序的一部分,謹(jǐn)慎地使用這項(xiàng)功能方面要有可重復(fù)使用的模式。使用查找模式來找到你想使用的服務(wù),是解決這個(gè)問題的流行方法之一。如果你在構(gòu)建應(yīng)用程序時(shí)沒有考慮到這些因素,就可能帶來無法管理的擴(kuò)展性和重構(gòu)問題。

至于正式的規(guī)范,J2EE在部署過程中借助資源映射,在資源依賴關(guān)系方面已經(jīng)做得很到位。比如說,應(yīng)用程序與數(shù)據(jù)庫進(jìn)行聯(lián)系,而你與為你提供連接的邏輯資源進(jìn)行聯(lián)系。當(dāng)你部署應(yīng)用程序時(shí),把這個(gè)資源映射到實(shí)際的數(shù)據(jù)庫IP/URL,不需要硬編碼。

在J2EE開發(fā)模式中,開發(fā)人員得到JNDI命名上下文,讓他們可以查找所需要的服務(wù)——這需要用可以將IP依賴關(guān)系抽取出來的可感知云的命名上下文來加以包裝。這么做的話,可感知云的命名上下文是擁有“服務(wù)定位器”(Service Locator)元素的唯一元素,維護(hù)起來要容易得多。

為云環(huán)境進(jìn)行開發(fā)面臨的另一個(gè)問題是處理橫向擴(kuò)展——Java開發(fā)人員應(yīng)該知道哪些東西?

云計(jì)算的一個(gè)基本前提是它能夠便于橫向擴(kuò)展(horizontal scaling),但不是所有的應(yīng)用程序天生都可以橫向擴(kuò)展,它們也從來沒必要橫向擴(kuò)展。必須確保云環(huán)境中的任何應(yīng)用程序都具有無狀態(tài)性(Statelessness)。對于按需基礎(chǔ)架構(gòu)而言,喜歡本地保留狀態(tài)的習(xí)性打破了一切。編寫的應(yīng)用程序必須確保:需要擴(kuò)展的任何應(yīng)用層都具有橫向擴(kuò)展的能力。在最近的幾年里,我們開始看到了比較新的應(yīng)用程序中出現(xiàn)這種情況,但這對許多開發(fā)人員來說仍是個(gè)障礙。

如果讓您為從事云環(huán)境編程的Java開發(fā)人員提議一個(gè)最佳實(shí)踐,那會是什么?

別對數(shù)據(jù)存儲局部化!如果你這么做,這幾乎如同將數(shù)據(jù)處理局部化到某一個(gè)Java虛擬機(jī)(JVM),而不是把它當(dāng)作云來對待。這可能會帶來局部化到JVM的依賴關(guān)系。數(shù)據(jù)管理應(yīng)該總是分布式的。你一定要假設(shè)服務(wù)器會失效,而且是常常失效。關(guān)系數(shù)據(jù)庫不再是云環(huán)境中的常態(tài)。由于應(yīng)用程序生態(tài)系統(tǒng)出現(xiàn)了那么多的變化,應(yīng)用程序必須天生是無狀態(tài)的。

當(dāng)然了,也不要使用物理IP或基于磁盤的定位器來查找你在應(yīng)用程序中需要使用的服務(wù)。要依靠把物理IP抽取出來的位置模式或服務(wù)。

那真是個(gè)好點(diǎn)子。最后,開發(fā)人員將應(yīng)用程序部署到云環(huán)境之前,應(yīng)用程序測試方面要了解哪些東西?

如果你想測試處于開發(fā)周期的應(yīng)用程序,如果你想看看它在云環(huán)境中怎樣運(yùn)行,就面臨這個(gè)挑戰(zhàn):從本地開發(fā)環(huán)境遷移到云環(huán)境。想從本地開發(fā)環(huán)境進(jìn)入到云環(huán)境有難度。事實(shí)上,沒有辦法有效地模擬一旦應(yīng)用程序部署下去,云環(huán)境的外觀感覺會怎么樣。能處理云環(huán)境的集成開發(fā)環(huán)境(IDE)同樣仍在不斷成熟當(dāng)中。從本地測試環(huán)境切換到云環(huán)境的過程越順暢,開發(fā)周期的效率就越高。過去將應(yīng)用程序部署到云環(huán)境上常常困難重重?,F(xiàn)在要容易多了,但要讓整個(gè)過程變得真正的高效順暢,開發(fā)工具依然有很大的發(fā)展空間。

原文名:Developing for the cloud: How developing in the cloud is different 作者:Cameron McKenzie et al.

【本文乃51CTO精選譯文,轉(zhuǎn)載請標(biāo)明出處!】

【編輯推薦】 

  1. 微軟公布云計(jì)算平臺Azure收費(fèi)模式細(xì)節(jié)
  2. 云計(jì)算意在長遠(yuǎn),微軟云計(jì)算服務(wù)Windows Azure已經(jīng)啟用
  3. 技術(shù)透析:Windows Azure Platform框架與組成
  4. 微軟Windows Azure Platform技術(shù)解析
  5. 走近微軟云:SQL Server到Azure數(shù)據(jù)同步
  6. 當(dāng)微軟Azure遭遇亞馬遜EC2:五大關(guān)鍵區(qū)別
  7. Windows Azure云計(jì)算平臺新增五大功能
  8. 云計(jì)算前途光明 Azure用戶數(shù)突破31000
  9. 如何把應(yīng)用程序部署到Windows Azure中
     


 

責(zé)任編輯:王勇 來源: 來源:51CTO
相關(guān)推薦

2011-12-21 09:01:28

云計(jì)算編程開發(fā)

2021-01-04 10:54:58

云計(jì)算容量管理

2013-07-24 09:29:35

云就緒應(yīng)用DevOps工具分布式網(wǎng)絡(luò)

2021-11-26 15:14:20

混合云網(wǎng)絡(luò)安全SASE

2012-05-23 17:35:29

2023-12-12 11:45:54

云服務(wù)數(shù)據(jù)科學(xué)家云計(jì)算

2020-01-13 11:51:31

云計(jì)算技術(shù)混合云

2016-10-13 14:10:09

云計(jì)算開發(fā)容器

2022-02-15 10:45:53

混合云云計(jì)算SASE

2017-01-20 15:00:27

數(shù)據(jù)中心云計(jì)算

2024-02-02 11:43:17

云時(shí)代數(shù)據(jù)戰(zhàn)略云計(jì)算

2022-09-05 15:08:58

云計(jì)算IT工具

2023-08-30 16:22:03

云原生云計(jì)算

2018-10-24 19:59:45

Kubernetes混合云云擴(kuò)展

2024-02-18 13:34:42

云計(jì)算

2016-12-15 15:26:17

與計(jì)算

2022-02-25 23:44:44

云計(jì)算DRP安全

2012-02-29 09:50:52

云計(jì)算虛擬化

2011-08-31 17:58:00

VS.netLUA開發(fā)環(huán)境

2021-05-20 14:17:05

云計(jì)算混合云架構(gòu)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號