2017-08-25 62 views
1

我不得不爲用戶應用程式自動通知(機器人應用),這是自動通知用戶策略

  1. 安裝應用程序之前或之後,沒有配準之後的情況。
  2. 註冊後沒有任何操作。
  3. 之後詢問問題並且不採取任何措施。

每個部分在'之後'具有靈活時間(例如1小時後,1天后,3天后等)。

我是後端開發人員,對於調度程序我現在使用sidekiq,cron(每當)和當前正在使用firebase進行通知。現在我只有兩個策略

  1. Sidekiq

    擲每個動作的工作爲每一位用戶。

    問題:隊列,因爲我現在有tweenty後臺作業

    • 積聚。
    • 目前我在每臺服務器上使用3(負載均衡器)服務器和sidekiq - redis。我不能停止/找到給sidekiq一些工作(例如,在服務器X上安裝後段的工作),當用戶註冊後,安裝在服務器Y.
  2. 的Cron

    添加一個cronjob,並設置時間表每隔1小時查詢每個動作

    問題:

    • 需要更多的工作在查詢每隔1小時
    • 時間表將不適合給予靈活的時間。

我應該使用一個從上面還是需要一個這樣做的另一個最好的方法?

+0

有多少用戶? –

+0

@ c0de222 20.000安裝人員/天,17.000註冊日/天 – itx

+0

我會把所有內容放在sidekiq中,而不用擔心現在的隊列長度。如果安裝人員每天增加到10K,那麼我會選擇下面提到的答案。 –

回答

0

我會把所有的1小時在sidekiq和1天3天的cron工作中每天運行一次。