一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

設計Web應用程序時要注意可伸縮性

  適合工作的工具

  Indelicato的第一個建議是“為工作選擇正確的工具”,想要達到這個目的,就要選擇下列架構解決方案中的一種:

  • 使用云部署解決方案
  • 使用可伸縮的數據存儲解決方案,像MongoDB、CouchDB、Cassandra或者Redis。
  • 添加高速緩存層,像Memcached。

  他認為在開始開發應用程序的時候,這些解決方案并不是必須的,但是在開始時就選擇可伸縮的數據存儲解決方案是很明智的,因為那會避免之后再進行切換。將應用程序部署到云中會為我們帶來一些好處,特別是對于創業公司來說,因為他們無法準確地確定他們的應用程序在啟用之后會有多少人使用。將應用程序部署到云中之后,當需求增加時,就可以讓應用程序以優雅的方式進行伸縮。很多軟件架構師都講述了他們不得不對應用程序進行擴展的事件,其中他們會引入高速緩存層,那會解決大部分問題。但是我們應該在設計階段就考慮相應的解決方案。這樣在之后就很容易實現了。

  可伸縮的數據存儲

  接下來,Indelicato建議選擇支持分區、復制并且有彈性的數據存儲,包括以下幾種: MongoDB、Cassandra、Redis、Tokyo CabiNET、Project Voldemort,或者選擇MySQL作為關系型數據庫。這是很必要的,因為不管怎樣,在應用程序的生命周期中,分區都是必要的。對于可伸縮性來說,分區并不是必需的,但是對于“確保高可用性”就是必需的。靈活性可以讓我們快速地增加更多的節點,這可能是出現流量峰值的時候,也可能是“由于硬件故障或升級、大型的伸縮模式的變更或者任何需要讓節點下線的情況下,需要對節點進行維護的時候。”

  可伸縮的數據模式

  Indelicato建議創建一種模式,從而讓我們可以很容易地進行數據sharding,他還給出了下面的臨時組件的例子,User和UserFeedEntry:

Collection (or Table, or Entries, etc) User
{
UserId : guid, unique, key
Username :
string
PasswordHash :
string
LastModified : timestamp
Created : timestamp
}

Collection (or Table, or Entries, etc) UserFeedEntry
{
UserFeedEntryId : guid, unique, key
UserId : guid, unique, foreign key
Body :
string
LastModified : timestamp
Created : timestamp
}

it知識庫設計Web應用程序時要注意可伸縮性,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 欧美激情一区二区三区中文字幕 | 开心六月婷婷 | 成人a大片高清在线观看 | 好爽毛片一区二区三区四 | 久青草国产手机在线视频 | 亚洲视频综合 | 中文字幕色站 | 美女网站黄在线看 | 亚洲欧美在线免费观看 | 亚洲香蕉伊在人在线观看9 亚洲香蕉伊综合在人在线 亚洲香蕉影院 | 欧洲精品在线视频 | 男女午夜性爽快免费视频不卡 | 91色在线观看国产 | 欧美五月婷婷 | 激情视频在线播放 | 色哟哟在线影院 | 午夜黄色大片 | 久久亚洲福利 | 成人国产网站 | 视频在线精品 | 国产精品久久久久无毒 | 婷婷色九月 | 狠狠操伊人 | 四虎影视永久在线精品免费播放 | 国产麻豆精品一区二区 | 精品久久久久久综合网 | 日本一区二区三区四区视频 | 69热精品视频在线看影院 | 国内成人精品亚洲日本语音 | 久久久精品影院 | 欧美黑人巨大xxxxx视频 | 色综合老色鬼狼天天 | 国产精品视频在 | 韩国理伦一级毛片 | 99国产精品免费视频 | 久热中文字幕在线精品免费 | 激情小说激情视频激情图片 | 久久久久久久亚洲精品 | 牛牛本精品99久久精品88m | 国产精品亚洲欧美日韩久久 | 亚洲爱视频 |