關於短網址的運營:如何處理龐大的短網址數據庫

FT12短網址運營已經超過5年,隨着用戶的逐漸增多,天天新生成的短連接數量接近20多萬條。這是一個什麼樣的水平呢?也就是說每一年新增短連接數量要接近1億條。對於web服務器來講,沒什麼壓力。可是一億條數據對於數據庫的調整真的是無比的艱難。目前FT12短網址數據庫中總計有將近3億條數據,三億條數據所有查詢一遍大概須要5秒左右。可是,對於短網址用戶來講,打開一天短連接費時5秒是一個沒法接受的時間。短網址的核心就是快,穩定,安全。若是沒法縮短短連接打開時間,提高用戶體驗,那麼這個短網址就是一個失敗的產品。因此咱們從如下幾點對數據進行了優化。html

首先,清理數據庫中常年累月無人訪問的短連接數據。在三億條短網址中,有超過50%的短連接超過2年了沒有任何訪問記錄。這些數據佔用着資源,浪費了廣大用戶的時間,因此咱們首先對其進行了備份,而後刪除這些數據。這個操做一會兒使短網址的數據庫從3億條縮減到了1.2億條。(固然,咱們事先備份了數據庫,若是某些用戶申請恢復這些短連接的訪問,咱們能夠第一時間覈實和處理)mysql

其次,web服務器和mysql服務器分離,所以咱們選擇了阿里雲的RDS數據庫。這樣作的好處有不少:其一,減輕服務器的壓力,是網站的運營更加的穩定,短連接打開速度很是快;其次,RDS數據有實時備份功能,萬一網站奔潰,也能及時恢復數據庫,保證用戶數據的安全。web

最後,咱們優化了數據庫的字段和邏輯。原先設計的短網址數據很是複雜,功能繁多。可是咱們發現不少功能基本上沒有用戶去使用。因此咱們對其進行了精簡。經過這個操做,咱們將數據庫的大小從2G縮減到了1個G,效果很明顯。另外,咱們也從web邏輯方面進行了優化,減小了數據庫的訪問頻次,平均每條短連接的生成和訪問能減小3次對數據庫的請求。sql

通過了以上幾個方面的優化了改進,目前FT12短網址絕對能夠知足任何用戶的需求。數據庫

原文地址:http://www.ft12.com/article_179.html安全

相關文章
相關標籤/搜索