ES裡的資料需要頻繁更新,有沒有什麼方案能應對這種場景?

時間 2021-06-02 02:50:06

1樓:

0,bulk ops,可以體驗一下bulk和非bulk的區別:

#coding=utf-8

'''Created on 2023年4月6日

@author: Felix

'''import time

from datetime import datetime

from elasticsearch import Elasticsearch

from elasticsearch import helpers

def test_normal():

es = Elasticsearch(['dn-3', 'dn-4', 'dn-5', 'dn-6', 'dn-7', 'dn-8', 'dn-9', 'dn-10', 'dn-11'sniff_on_start=Truesniff_on_connection_fail=Truesniffer_timeout=60doc39;author': 'Felixལtext': 'This is just coolལts':

datetime.nowstart = time.time()

i = 0

for _ in range(100000es.index(index="test-index", doc_type='tweet', body=doci += 1

if i % 1000 == 0print(i)

print(time.time() - start)

def test_bulk():

es = Elasticsearch(['dn-3', 'dn-4', 'dn-5', 'dn-6', 'dn-7', 'dn-8', 'dn-9', 'dn-10', 'dn-11'sniff_on_start=Truesniff_on_connection_fail=Truesniffer_timeout=60doc39;author': 'Felixལtext': 'This is just coolལts':

datetime.nowstart = time.time()

i = 0

if i % 1000 == 0print(ihelpers.bulk(es, actionsactionsprint(time.time() - start)

if __name__ == '__main__':

test_bulk

1,優化es,非同步更新,加大記憶體,防止出現記憶體交換

2,加快取層,直接將熱資料快取到記憶體裡,避免直接去es中計算距離

模仿暴雪,以頻繁更新遊戲的核心資料和演算法為準則開發遊戲的話,得到的好處和遇到的困難可能有哪些?

悠然 好處是顯而易見的 首先,遊戲畢竟是遊戲,設計者所呈現給玩家的東西最終肯定會讓玩家全部看到,當全部都看完之後,所謂的厭倦感就出來了,這也是網遊和單機的最大區別,網遊正因為有版本迭代,所以可以做得很長線。其次,任何乙個遊戲系統或者玩法的開發,從最原始的出發點僅僅是設計者覺得應該這麼做,或者這麼做會...

有沒有專業的大佬幫我看看我的小本需要更新什麼硬體?

不寫書的作家 首先你得先明白一件事情,影響遊戲fps主要還是顯示卡和cpu,而筆記本的cpu和顯示卡基本是不可換的,因為這兩樣東西一般是不單賣的,而且還涉及主機板供電問題和散熱問題,即使你能換更好的cpu和顯示卡,你的主機板供電和散熱也不見得跟得上。換主機板就更不要想了.筆記本的主機板都是定製的,不...

小白跑步,這是今天的資料,有沒有需要改進?

行者老應 從您的資料能看出,你的裝備配備得非常到位,說明在跑步這事兒上,你是認真的。資料反映出來最大的問題是你跑得有些太快了。這裡說的快,不是指配速,指的是相對於你的有氧能力而言。你跑了18分鐘,無氧狀態佔了15分鐘多,在這段時間裡,你的心率超過了最大心率的85 作為初跑者,你的有氧能力還比較弱。在...