chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線(xiàn)課程
  • 觀(guān)看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

云應(yīng)用程序SaaS的設(shè)計(jì)方法

汽車(chē)玩家 ? 來(lái)源:今日頭條 ? 作者:聞數(shù)起舞 ? 2020-05-03 18:20 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

最初發(fā)布于Cloud Nine Apps。

如何設(shè)計(jì)云應(yīng)用程序(SaaS)

如何設(shè)計(jì)云應(yīng)用程序(SaaS)

軟件即服務(wù)(SaaS)已成為許多軟件供應(yīng)商的主要模型。 與云供應(yīng)商提供基礎(chǔ)架構(gòu)服務(wù)一樣,它有助于類(lèi)似地交付軟件。 SaaS應(yīng)用程序通常部署在公共云上,例如Amazon Cloud(AWS),Microsoft Azure,Google Cloud等。 但是,組織有時(shí)可能會(huì)選擇使用其數(shù)據(jù)中心(也稱(chēng)為私有云)來(lái)托管SaaS應(yīng)用程序并利用其在基礎(chǔ)架構(gòu)上的投資。 在設(shè)計(jì)SaaS應(yīng)用程序時(shí),不僅需要將應(yīng)用程序比特部署到云中,還需要花費(fèi)更多。 進(jìn)行適當(dāng)?shù)脑O(shè)計(jì)考慮,不僅可以幫助您完成良好的設(shè)計(jì),還可以幫助您降低成本并更有效地管理部署。 在這篇文章中,我將介紹一些多年來(lái)我發(fā)現(xiàn)有用的設(shè)計(jì)SaaS應(yīng)用程序的關(guān)鍵注意事項(xiàng)和技巧。

為云設(shè)計(jì)應(yīng)用程序與本地應(yīng)用程序設(shè)計(jì)有何不同?

· 更好的模塊化:如果您擁有一個(gè)龐大的單片應(yīng)用程序,那么明智的做法是查看它是否可以分解為可以單獨(dú)部署的邏輯組件。 這不僅可以提高模塊化,還可以幫助您減少應(yīng)用程序的占用空間。 假設(shè)您有一個(gè)使用后臺(tái)作業(yè)刷新數(shù)據(jù)的應(yīng)用程序。 您可以將核心應(yīng)用程序和后臺(tái)作業(yè)分離為2個(gè)(或更多)可以分別部署的組件。 這將減少核心應(yīng)用程序的占用空間。 因此,您可能會(huì)選擇較小的資源大小。 另外,根據(jù)需要,您可以獨(dú)立地縮放這兩個(gè)。 因此,如果對(duì)后臺(tái)作業(yè)的需求增加,則可以增加其容量,并增加應(yīng)用程序?qū)拥娜萘俊?由于每個(gè)資源的資源量都很小,因此,僅擴(kuò)展所需的層/組件將導(dǎo)致整體成本低于整體資源的整體成本。 說(shuō)得通?

· 應(yīng)用程序始終是最新的:對(duì)于許多本地應(yīng)用程序來(lái)說(shuō),這是一個(gè)很大的轉(zhuǎn)變。 在云中,客戶(hù)通常希望應(yīng)用程序始終處于最新版本。 現(xiàn)在,如果您將其視為一名架構(gòu)師,則意味著您不僅可以更新應(yīng)用程序位,而且可以在不涉及客戶(hù)的情況下升級(jí)客戶(hù)數(shù)據(jù)。 也就是說(shuō),這對(duì)他們是完全透明的。

這些只是一些差異。 但是,您明白了。

SaaS的關(guān)鍵設(shè)計(jì)注意事項(xiàng)

· 選擇適當(dāng)?shù)脑品?wù):當(dāng)然,您正在部署到云。 但是,您想使用哪些服務(wù)? 您是否只是要使用基礎(chǔ)架構(gòu)即服務(wù)(IaaS)? 還是要利用某些平臺(tái)即服務(wù)(PaaS)功能? 答案可能并不總是直截了當(dāng)?shù)摹?因此,這里有一些準(zhǔn)則。

· 您是否要將同一應(yīng)用程序部署到多個(gè)云平臺(tái)或內(nèi)部部署? 在這種情況下,可能沒(méi)有(或最小化)特定于云供應(yīng)商的服務(wù)并堅(jiān)持使用更多的IaaS服務(wù)是有意義的。

· 成本應(yīng)該是選擇服務(wù)時(shí)的重要考慮因素。 例如,某些由Cloud供應(yīng)商管理的PaaS服務(wù)可以由您的團(tuán)隊(duì)自己管理,以降低成本。 盡管這對(duì)于每項(xiàng)服務(wù)可能都沒(méi)有意義,但值得探討。

· 牢記您的團(tuán)隊(duì)專(zhuān)業(yè)知識(shí)。 使用某種云服務(wù)需要什么? 而且,如果團(tuán)隊(duì)還維護(hù)基礎(chǔ)架構(gòu),那么需要什么技能?

· 針對(duì)故障的設(shè)計(jì):設(shè)計(jì)容錯(cuò)和高可用性的應(yīng)用程序是Cloud的基礎(chǔ)。 假定您的應(yīng)用程序會(huì)遇到問(wèn)題,以及如何確保繼續(xù)為用戶(hù)提供服務(wù)。 這些可能是應(yīng)用程序故障或基礎(chǔ)架構(gòu)故障。 云供應(yīng)商提供了一些有用的功能來(lái)幫助您。

· 使用負(fù)載平衡器:出于負(fù)載平衡的目的,您可以將應(yīng)用程序節(jié)點(diǎn)放在負(fù)載平衡器的后面,并確保即使一個(gè)或多個(gè)節(jié)點(diǎn)出現(xiàn)故障,也可以通過(guò)其他節(jié)點(diǎn)為應(yīng)用程序提供服務(wù)。

· 地理分布的應(yīng)用程序:多個(gè)Cloud供應(yīng)商提供了將應(yīng)用程序分布在多個(gè)地理區(qū)域的功能,這樣,即使一個(gè)區(qū)域受到了影響(例如,由于自然災(zāi)害),也可以從其他區(qū)域提供應(yīng)用程序。 例如,AWS支持跨多個(gè)可用區(qū)部署應(yīng)用程序。

· 模塊化您的應(yīng)用程序:如我們?cè)谏弦还?jié)中討論的,隔離可以分別部署和管理的組件可以幫助減少應(yīng)用程序的占用空間,從而降低基礎(chǔ)架構(gòu)的成本。 您也可以考慮將其中一些組件作為微服務(wù)。 如果您的應(yīng)用程序之外還有其他潛在使用者,則微服務(wù)方法可能特別有用。 現(xiàn)在,這并不意味著您會(huì)全力以赴,創(chuàng)建不必要的組件。 因此,一種方法是制作可以單獨(dú)部署的組件(例如核心應(yīng)用程序與后臺(tái)作業(yè))。

· 安全性:安全性涉及很多方面-從保護(hù)基礎(chǔ)結(jié)構(gòu)到應(yīng)用程序。 一些關(guān)鍵方面包括確保僅打開(kāi)所需的端口,使用對(duì)資源的盡可能少的特權(quán),進(jìn)行適當(dāng)?shù)幕诮巧脑L(fǎng)問(wèn)控制,使用加密,等等。 安全性不應(yīng)被視為一次性交易。 這是一個(gè)持續(xù)的過(guò)程,應(yīng)該隨著時(shí)間的推移而改進(jìn)和發(fā)展。

· 多租戶(hù):在云中運(yùn)行的一個(gè)主要好處是能夠使用同一應(yīng)用程序?qū)嵗秊槎鄠€(gè)客戶(hù)提供服務(wù)。 這給應(yīng)用程序設(shè)計(jì)帶來(lái)了一些明顯的挑戰(zhàn),以確保每個(gè)客戶(hù)的數(shù)據(jù)出于安全和監(jiān)管目的而被隔離。 一些團(tuán)隊(duì)選擇為每個(gè)客戶(hù)使用不同的持久性存儲(chǔ)實(shí)例,例如為每個(gè)客戶(hù)使用單獨(dú)的數(shù)據(jù)庫(kù)。 而且,有些人選擇使用行級(jí)標(biāo)識(shí)符隔離數(shù)據(jù)。 無(wú)論采用哪種方法,重要的是確保體系結(jié)構(gòu)滿(mǎn)足可伸縮性和安全性需求。 例如,如果選擇每個(gè)客戶(hù)使用一個(gè)數(shù)據(jù)庫(kù),則可以在一個(gè)RDS實(shí)例上托管多個(gè)數(shù)據(jù)庫(kù)。 而且,當(dāng)容量用盡時(shí),您可以建立另一個(gè)RDS實(shí)例。

· 零/最小停機(jī)時(shí)間和無(wú)縫升級(jí):信不信由你,許多客戶(hù)期望SaaS應(yīng)用程序的停機(jī)時(shí)間為零或非常小,并且由于這些停機(jī)時(shí)間通常由構(gòu)建應(yīng)用程序的同一公司管理,因此應(yīng)進(jìn)行無(wú)縫升級(jí)。面臨的挑戰(zhàn)是您的應(yīng)用程序可能沒(méi)有被設(shè)計(jì)為能夠順利處理升級(jí),特別是如果它已被轉(zhuǎn)換為SaaS應(yīng)用程序而已。需要考慮兩個(gè)關(guān)鍵方面:a)部署應(yīng)用程序位和文件b)處理持久性存儲(chǔ)升級(jí)。對(duì)于推出應(yīng)用程序位策略,可以使用諸如Blue / Green部署之類(lèi)的策略,其中,如果成功推出,則將新版本部署到新堆棧中,進(jìn)行測(cè)試并啟用。較舊的堆棧資源可以在以后退役并回收。實(shí)現(xiàn)無(wú)縫升級(jí)的一種方法是使基礎(chǔ)數(shù)據(jù)模型n_1兼容。這意味著,如果要部署的發(fā)行版具有數(shù)據(jù)模型版本n,則該數(shù)據(jù)模型與先前的數(shù)據(jù)模型版本(n — 1)向后兼容,從而確保升級(jí)不會(huì)破壞它。您如何確保?這就要求在整個(gè)開(kāi)發(fā)周期中遵守紀(jì)律,并遵循某些準(zhǔn)則,例如不刪除任何列,提供必要的升級(jí)腳本來(lái)處理任何數(shù)據(jù)遷移需求,等等。并且,如果升級(jí)未成功,則支持回滾升級(jí)?,F(xiàn)在,您可以理解,這不僅在技術(shù)上具有挑戰(zhàn)性,因?yàn)樗婕皵?shù)據(jù)遷移和回滾,而且還可能導(dǎo)致部署速度大大降低。因此,您必須仔細(xì)評(píng)估適合您的應(yīng)用程序需求的合理方案,并相應(yīng)地實(shí)施解決方案。

SaaS的DevOps注意事項(xiàng)

DevOps對(duì)SaaS至關(guān)重要,因此值得單獨(dú)討論。 以下是一些關(guān)鍵注意事項(xiàng)。

· 持續(xù)交付:DevOps管道應(yīng)該能夠獲取簽入的代碼,并從中生成一個(gè)構(gòu)建,然后以自動(dòng)化的方式經(jīng)歷各個(gè)階段(QA,性能,最終通過(guò)/不通過(guò)檢查,生產(chǎn)部署)。 這可能涉及到擁有多個(gè)管道(通常是每個(gè)階段),并擁有一個(gè)超級(jí)管道來(lái)推動(dòng)構(gòu)建通過(guò)這些階段中的每個(gè)階段。 現(xiàn)在,開(kāi)發(fā)這些管道可能還需要一些時(shí)間,但是開(kāi)始為每個(gè)管道定義合同是一個(gè)好主意,這樣用戶(hù)管道就不必?fù)?dān)心細(xì)節(jié)了。 最終,目標(biāo)應(yīng)該是使雙手完全免于打擾或盡可能地接近手。

· 對(duì)所有版本(包括DevOps更改)使用版本控制:對(duì)于應(yīng)用程序代碼,通常最好使用源代碼控制的master分支。 但是,對(duì)于任何DevOps更改執(zhí)行相同的操作同樣重要。 例如,在推出基礎(chǔ)架構(gòu)更改時(shí),還應(yīng)將這些更改檢入源代碼管理中,進(jìn)行測(cè)試,然后將其推向生產(chǎn)環(huán)境。

· 敏捷的基礎(chǔ)架構(gòu):要在SaaS上取得成功,您需要確保您的基礎(chǔ)架構(gòu)是敏捷的并且可以應(yīng)對(duì)需求的變化。 隨著需求上升,它可以擴(kuò)展適當(dāng)?shù)膶?,?dāng)需求下降時(shí),釋放不需要的資源。 這需要一定程度的實(shí)驗(yàn)和測(cè)試才能達(dá)到適當(dāng)?shù)钠胶狻?例如,您可以使用AWS自動(dòng)擴(kuò)展功能自動(dòng)擴(kuò)展/縮減基礎(chǔ)架構(gòu)。

SaaS的其他注意事項(xiàng)

· 計(jì)劃和優(yōu)先級(jí):與其他任何成功的項(xiàng)目一樣,SaaS項(xiàng)目也需要計(jì)劃和優(yōu)先級(jí)。 盡管每個(gè)人都希望實(shí)現(xiàn)"將每一個(gè)檢查都投入生產(chǎn)"之類(lèi)的目標(biāo),但要了解什么才是最有意義的事情,并首先將重要的事情放在優(yōu)先位置。 當(dāng)然,有一個(gè)延伸目標(biāo)沒(méi)錯(cuò)。 但是,重要的是首先正確處理重要的事情。 例如,如果您沒(méi)有良好的單元測(cè)試和自動(dòng)化范圍,并且您試圖將每個(gè)代碼更改推向生產(chǎn)環(huán)境,即使您完成了更改,其實(shí)用性也值得懷疑。 之所以會(huì)適得其反,是因?yàn)樯a(chǎn)中的事情可能會(huì)開(kāi)始崩潰得太快,然后研發(fā)團(tuán)隊(duì)將被消耗掉。

· 貨幣化模型:SaaS也影響貨幣化模型。 在內(nèi)部部署中,您可能會(huì)被罰款一定數(shù)量的許可證,而在SaaS中,您可能不得不重新考慮什么是最適合您的業(yè)務(wù)的模型。 您是否要使用基于訂閱的模型,基于利用率的模型,混合模型或其他所有模型?

希望您對(duì)設(shè)計(jì)基于云或SaaS的應(yīng)用程序有更好的了解。 看到涉及許多不同方面的應(yīng)用程序投入生產(chǎn),無(wú)疑是一種豐富的體驗(yàn)。 就像我經(jīng)常說(shuō)的那樣,"云是一個(gè)旅程,而不是目的地"。 因此,請(qǐng)繼續(xù)學(xué)習(xí)并不斷發(fā)展。

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀(guān)點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 數(shù)據(jù)中心
    +關(guān)注

    關(guān)注

    17

    文章

    5593

    瀏覽量

    74813
  • SaaS
    +關(guān)注

    關(guān)注

    1

    文章

    374

    瀏覽量

    38505
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    PYQT 應(yīng)用程序框架及開(kāi)發(fā)工具

    大家好,本團(tuán)隊(duì)此次分享的內(nèi)容為開(kāi)發(fā)過(guò)程中使用到的PYQT 應(yīng)用程序框架及開(kāi)發(fā)工具。 pYqt 是一個(gè)多平臺(tái)的 python 圖形用戶(hù)界面應(yīng)用程序框架,由于其面向?qū)ο蟆? 易擴(kuò)展(可實(shí)現(xiàn)組件編程等
    發(fā)表于 10-29 07:15

    如何在應(yīng)用程序調(diào)試期間分析棧和堆使用情況

    隨著 AMD Vitis 統(tǒng)一軟件平臺(tái) 2021.2 的發(fā)布,Vitis 引入了一個(gè) Tcl 腳本,用于在應(yīng)用程序運(yùn)行的特定時(shí)間點(diǎn)協(xié)助查找棧和堆的內(nèi)存使用情況。該腳本已延續(xù)到后續(xù)的 Vitis 版本
    的頭像 發(fā)表于 10-24 16:54 ?765次閱讀
    如何在<b class='flag-5'>應(yīng)用程序</b>調(diào)試期間分析棧和堆使用情況

    請(qǐng)問(wèn)rt smart 的用戶(hù)應(yīng)用程序能自動(dòng)加載嗎?

    請(qǐng)問(wèn)rt smart 的用戶(hù)應(yīng)用程序能自動(dòng)加載嗎?只需要將內(nèi)核和用戶(hù)程序隔離開(kāi),開(kāi)機(jī)自動(dòng)加載
    發(fā)表于 10-13 06:17

    學(xué)生適合使用的SOLIDWORKS 應(yīng)用程序

    隨著科技的不斷發(fā)展,計(jì)算機(jī)輔助設(shè)計(jì)(CAD)技術(shù)已經(jīng)成為現(xiàn)代工程教育的重要組成部分。SOLIDWORKS作為一款CAD軟件,其教育版應(yīng)用程序為學(xué)生提供了強(qiáng)大而靈活的設(shè)計(jì)平臺(tái)。本文將探討
    的頭像 發(fā)表于 09-15 10:39 ?644次閱讀
    學(xué)生適合使用的SOLIDWORKS <b class='flag-5'>云</b><b class='flag-5'>應(yīng)用程序</b>

    CYBT-343026-01能否使用 HFP 和 AVRCP 制作應(yīng)用程序?

    我們計(jì)劃使用 CYBT-343026-01 制作使用 HFP 和 AVRCP 的應(yīng)用程序。 可以使用 CYBT-343026-01 制作使用 HFP 和 AVRCP 的應(yīng)用程序嗎? 根據(jù) QDID
    發(fā)表于 07-01 08:29

    中軟國(guó)際文旅SaaS平臺(tái)成功落地“樂(lè)游威海”項(xiàng)目

    近日,華為開(kāi)發(fā)者大會(huì)(HDC2025)隆重啟幕。中軟國(guó)際受邀出席6月21日的華為生態(tài)伙伴發(fā)展高峰論壇,攜手威海文旅局向廣大開(kāi)發(fā)者分享《華為鴻蒙根生態(tài)賦能文旅的威海實(shí)踐》。中軟國(guó)際攜手華為打造
    的頭像 發(fā)表于 06-27 16:30 ?1257次閱讀

    MCP:連接AI與應(yīng)用程序的開(kāi)放標(biāo)準(zhǔn)!

    作者:算力魔方創(chuàng)始人/英特爾創(chuàng)新大使劉力 擴(kuò)展AI大模型的方式有兩種,第一種是通過(guò)訓(xùn)練增強(qiáng)AI大模型自身的能力;第二種是讓AI大模型與其它現(xiàn)有的應(yīng)用程序(例如:數(shù)據(jù)庫(kù)、瀏覽器、Gmail等)相互協(xié)作
    的頭像 發(fā)表于 03-21 18:21 ?2076次閱讀
    MCP:連接AI與<b class='flag-5'>應(yīng)用程序</b>的開(kāi)放標(biāo)準(zhǔn)!

    如何部署OpenVINO?工具套件應(yīng)用程序

    編寫(xiě)代碼并測(cè)試 OpenVINO? 工具套件應(yīng)用程序后,必須將應(yīng)用程序安裝或部署到生產(chǎn)環(huán)境中的目標(biāo)設(shè)備。 OpenVINO?部署管理器指南包含有關(guān)如何輕松使用部署管理器將應(yīng)用程序打包并部署到目標(biāo)主機(jī)的詳細(xì)信息。 注意:Ope
    發(fā)表于 03-06 08:23

    請(qǐng)問(wèn)OpenVINO?工具套件中的驗(yàn)證應(yīng)用程序是什么?

    OpenVINO?工具套件中的驗(yàn)證應(yīng)用程序是什么?
    發(fā)表于 03-06 06:54

    在OpenVINO?中運(yùn)行應(yīng)用程序失敗怎么解決?

    嘗試在 OpenVINO? 中運(yùn)行我的推理應(yīng)用程序失敗,并出現(xiàn)以下錯(cuò)誤: RuntimeError: Check \'false\' failed at src/core/src/runtime/ov_tensor.cpp:67: Dims and format are inconsistent.
    發(fā)表于 03-05 10:29

    揭秘計(jì)算架構(gòu)的分層奧秘

    的重要基石。那么,計(jì)算架構(gòu)究竟是如何構(gòu)建的呢?今天,我們帶您揭秘計(jì)算架構(gòu)的分層奧秘——邊緣層、IaaS、PaaS、SaaS。
    的頭像 發(fā)表于 02-26 17:41 ?1211次閱讀

    AWTK-WEB 快速入門(mén)(6) - JS WebSocket 應(yīng)用程序

    WebSocket可以實(shí)現(xiàn)雙向通信,適合實(shí)時(shí)通信場(chǎng)景。本文介紹一下使用Javacript語(yǔ)言開(kāi)發(fā)AWTK-WEB應(yīng)用程序,并用WebSocket與服務(wù)器通訊。用AWTKDesigner新建一個(gè)應(yīng)用程
    的頭像 發(fā)表于 02-26 11:42 ?733次閱讀
    AWTK-WEB 快速入門(mén)(6) - JS WebSocket <b class='flag-5'>應(yīng)用程序</b>

    使用Ozone調(diào)試基于nRF9160 Zephyr應(yīng)用程序

    Ozone是SEGGER免費(fèi)的嵌入式軟件調(diào)試器。它是一個(gè)強(qiáng)大的工具,可以讓你深入了解嵌入式系統(tǒng)中發(fā)生的事情。它在調(diào)試nRF9160 Zephyr應(yīng)用程序時(shí)特別有用。整理多個(gè)線(xiàn)程和多映像構(gòu)建可能很困難,但這就是你想要的工具。
    的頭像 發(fā)表于 02-25 17:07 ?1643次閱讀
    使用Ozone調(diào)試基于nRF9160 Zephyr<b class='flag-5'>應(yīng)用程序</b>

    AWTK-WEB 快速入門(mén)(5) - C 語(yǔ)言 WebSocket 應(yīng)用程序

    導(dǎo)讀WebSocket可以實(shí)現(xiàn)雙向通信,適合實(shí)時(shí)通信場(chǎng)景。本文介紹一下使用C語(yǔ)言開(kāi)發(fā)AWTK-WEB應(yīng)用程序,并用WebSocket與服務(wù)器通訊。用AWTKDesigner新建一個(gè)應(yīng)用程序先安裝
    的頭像 發(fā)表于 02-19 11:49 ?1003次閱讀
    AWTK-WEB 快速入門(mén)(5) - C 語(yǔ)言 WebSocket <b class='flag-5'>應(yīng)用程序</b>

    基于HPM_SDK_ENV開(kāi)發(fā)應(yīng)用程序的升級(jí)處理

    基于HPM_SDK_ENV開(kāi)發(fā)應(yīng)用程序的方式HPM_SDK_ENV是先楫半導(dǎo)體MCU的Windows集成開(kāi)發(fā)環(huán)境,其包含HPM_SDK,工具鏈,依賴(lài)工具(cmake,ninja,openocd等
    的頭像 發(fā)表于 02-08 13:38 ?1574次閱讀
    基于HPM_SDK_ENV開(kāi)發(fā)<b class='flag-5'>應(yīng)用程序</b>的升級(jí)處理