iT邦幫忙

2024 iThome 鐵人賽

DAY 11
0

根據維基百科對於訊息佇列的說明:是一種行程間通訊或同一行程的不同執行緒間的通訊方式,軟體的貯列用來處理一系列的輸入,通常是來自使用者。訊息佇列提供了非同步的通訊協定,每一個貯列中的紀錄包含詳細說明的資料,包含發生的時間,輸入裝置的種類,以及特定的輸入參數,也就是說:訊息的傳送者和接收者不需要同時與訊息佇列互動。

使用時機

  • 我們已經透過 fugle API 走 WebSocket 搭配 callback 可以源源不絕地即時印出行情在螢幕上。
  • 但我希望做到更多的部分是,把這些行情寫進文字檔中。
  • 今天發現,如果在 Callback function 去呼叫開檔寫入的話,會因為 Callback function 的 I/O 過長,導致 Authentication timeout。

技術評估

  • Redis: 如果單純用來快取行情訊息,累積一定量再寫檔案,這是一個便宜的做法。
  • RabbitMQ: 相比於 Redis, RabbitMQ 功能更強大,可以應付資料量 128MB ~ 2GB 左右。 而行情的文字不會這麼大,所以不考慮採用這把牛刀。
  • Amazon SQS: 服務運作在 AWS 上,才會有銜接上的好處。 以目前單機運作來說,我會避免一開始就燒錢。

結論

  • 在 MTXMonitor 中的回呼函數寫檔案會造成斷線。
  • 應該在回呼函數裡,把訊息放到佇列

今日盈虧

  • 因為對岸降準,準備拯救陸股⋯還有美國將息等種種因素,台積重新站回一千元大關。
  • 小弱砲的空單今天都變成空氣了,被割韭菜割得體無完膚。 期權蒸發掉五萬塊左右。
  • 殘血兩張 6116 彩晶 直接變賣換成錢。
  • 要去哭了 QQ
  • 畢業快樂
    • 昨天晚上顧著寫程式,沒有留意在我發文時,就是期貨相對低點,忘記離開就被頂到天上。 這一再地提醒我,不要再靠人肉和意志力盯盤了。 人總有無法看盤的時間。

上一篇
【Day 10】 Implementations of the WebSocket & REST API Monitor / 本日盈虧
下一篇
【Day 12】 安裝 Redis 作為本機程式訊息佇列 / 讀寫程式 / 本日盈虧
系列文
從一萬元開始交易:收割韭菜三十天,量化交易工具製作32
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言