[請益] 多腳本依序取得傳輸權

作者: m2251000 (akakaze 二兵 >)   2017-04-14 10:17:35
各位大大好
小弟我現在想做一個功能,是將從聊天室得來的資料送去另一個的伺服器,在那邊處理完
後取得返回資料
聊天室的發言資料是即時取得的,且由於對方是個公開的伺服器,有聲明太密集的傳送會
被當成攻擊擋掉,因此我希望每個送過去的訊息之間都有3秒的間隔
所以我的想法是,每個因應發言而執行的腳本都會檢查同一個變數,這個變數代表現在是
否可以使用傳輸,當有訊息傳給對方伺服器的時候,改變變數並sleep(3)後再把變數改回

目前查到最簡單的方法是對一個file做flock,將"檢查file是否有lock"當作傳輸的使用權
雖然覺得這個方法不夠漂亮,但是也找不到能夠這樣跨腳本改變並且讀取的變數,因此上
PTT來請教各位大大,是不是有更好的解法呢?
作者: MOONRAKER (㊣牛鶴鰻毛人)   2017-04-14 10:28:00
不是也有一些Linux service這樣寫 沒什麼不好的不要放在太容易被摸到的地方就好
作者: dinos (守護神)   2017-04-15 07:08:00
不然試試shared memory或memcached
作者: dou0228 (7777)   2017-04-17 11:03:00
不太懂為啥用 flock 做,如果是為了間隔至少三秒才作業所以是有一堆 script 想要對同一台聊天室傳送訊息?

Links booklink

Contact Us: admin [ a t ] ucptt.com