海量資料且更新頻繁的列表該怎麼最佳化
來源:互聯網
上載者:User
海量資料且更新頻繁的列表該如何最佳化?
現在網站資料特別多,而且更新頻繁,這樣的站內容列表頁面該如何最佳化?目前我們是產生了靜態,可資料越來越多,這樣每次產生消耗的時間會很可怕。有誰知道那些大網站的列表是如何處理的嗎?跪求方案。。。。
------解決方案--------------------
竟然是大網站就要做一些大網站的做法.比如硬體上的跟進等等
更新頻繁的東西就不適合做靜態了,為什麼更新頻繁的東西要做靜態呢?
如果是構架問題那就得考慮重新構架才行
如何最佳化可以引入memcache等 多台伺服器共用資料的方式來處理。
或者動態讀取變動的部分內容.
------解決方案--------------------
由於更新頻繁,所以列表頁只需更換最近的幾頁就可以了
比如每頁50條,那麼原來的第1頁在新增50條後就變成第2頁了,並且內容與原先的第一頁一樣
另外需要注意一個事實:極少有人會沿著分頁條翻頁10次以上。而多使用搜尋功能
------解決方案--------------------
更新頻繁不適合在用靜態了。前一分鐘剛產生了 下一分鐘就又來更新,那不是。。。
------解決方案--------------------
探討
更新頻繁不適合在用靜態了。前一分鐘剛產生了 下一分鐘就又來更新,那不是。。。
------解決方案--------------------
統計到底哪些地方人查的地多,例如電子商品前一百個,可以把這一百個產生個靜態頁,多用使用者搜尋功能,避免導致使用者無效又浪費的操作,資料庫要是查的慢,除了演算法語句、索引等最佳化,還可把資料進行分表等,例如,把火爆的電子商品從商品裡提出來,可以緩解部分壓力,大網站架構才是核心
------解決方案--------------------
那還是得看他的頻繁更新到底是有多頻繁才行。使用緩衝技術是必須的.方法有很多種,構架可能需要重新設計...
一旦涉及到大流量高並發的時候都需要硬體上不斷的跟進.沒有實際的環境,也都只能泛泛的給你扯一扯了..
------解決方案--------------------
探討
那還是得看他的頻繁更新到底是有多頻繁才行。使用緩衝技術是必須的.方法有很多種,構架可能需要重新設計...
一旦涉及到大流量高並發的時候都需要硬體上不斷的跟進.沒有實際的環境,也都只能泛泛的給你扯一扯了..
------解決方案--------------------
我是進來學習的
實在不行換資料庫?
------解決方案--------------------
這個得學習一下。
------解決方案--------------------
探討
引用:
由於更新頻繁,所以列表頁只需更換最近的幾頁就可以了
比如每頁50條,那麼原來的第1頁在新增50條後就變成第2頁了,並且內容與原先的第一頁一樣
另外需要注意一個事實:極少有人會沿著分頁條翻頁10次以上。而多使用搜尋功能
更新每天有幾百的樣子,嘮叨老大,按你說的,後續的頁面採用動態?
------解決方案--------------------
探討
引用:
由於更新頻繁,所以列表頁只需更換最近的幾頁就可以了
比如每頁50條,那麼原來的第1頁在新增50條後就變成第2頁了,並且內容與原先的第一頁一樣
另外需要注意一個事實:極少有人會沿著分頁條翻頁10次以上。而多使用搜尋功能
更新每天有幾百的樣子,嘮叨老大,按你說的,後續的頁面採用動態?
------解決方案--------------------
靜態又不是萬能的……根本就不應該靜態,關鍵的地方不同的緩衝措施即可
為了所謂的降低壓力,這個措施居然成了壓力,不搞笑?
------解決方案--------------------
採用單頁用戶訪問觸發的方式來產生靜態就好了,這麼做的好處是後台產生單頁更新,對於不常常訪問的頁面不會因為頻繁做無謂的產生浪費資源,而常常訪問的頁面會被頻繁更新產生,原理是:
假如某頁面上次產生靜態時間是11點,當12點的時候有使用者訪問,那麼只需要通過調用js的方式觸發一下重建該頁面就好了,當下一個訪客訪問的時候實際上看到的就是12點更新的頁面了,這樣每次更新的只有一頁而已,不會佔用太久的時間,而且js觸發後台產生也不會影響到前台的訪問.
如果你擔心訪客太多頻繁更新的話,可以用php擷取這個需要更新的頁面上次的更新時間,如果更新時間距現在的時間小於半個小時則忽略更新,如果超過了半個小時,那麼就重建新的靜態頁就好了.
我以前做的一個大型門戶網站就是用這個方式來做自動更新的,完全不需要後台人工產生,不但不浪費人力而且效果也很棒.
------解決方案--------------------
探討
靜態又不是萬能的……根本就不應該靜態,關鍵的地方不同的緩衝措施即可
為了所謂的降低壓力,這個措施居然成了壓力,不搞笑?
------解決方案--------------------
定時服務,自動產生頁面,然後push過去就好啦
------解決方案--------------------
探討
引用:
更新頻繁不適合在用靜態了。前一分鐘剛產生了 下一分鐘就又來更新,那不是。。。
不然!
假設每分鐘有 100 人訪問
產生一個靜態頁面只要操作一次
而動態需要操作100次
況且,更新列表頁只是在有資料提交時才做的
------解決方案--------------------