linux crontab计划任务有关,该怎么处理
linux crontab计划任务有关
现在要跑个计划任务 发短信的。
因为crontab最小只能设置分钟为单位,而短信需要比较快发送。我让一分钟执行发送60条。
从数据库队列表查出未锁定的60条 循环处理的时候 每次更新一个字段表示被锁定。一般短信量很少,1分钟内都执行完了。今天突然一下子有很多,导致一分钟处理60条未处理完,crontab又发出下一次请求。因为是逐个处理完了才做的锁定,所以就出现了并发。(有些短信在这次请求里还未被处理也就会被包含在下一次的请求中)。导致短信重复下发。
一直是想改进这个的,因为一直量比较少,没用心考虑。
应该是将查出来的60条 全部锁定后再做下发处理。但是何时解锁是个问题。
利用第三方队列服务:
想把短信存到数据库,其自增id存到memcacheq中,然后定时执行。(定时执行好像也不行,一分钟一次太慢。用php写个死循环作为守护进程?(可以设置个休息时间)这样一直执行着是否吃内存厉害?)
想知道网站关于下发短信一般是怎么做的?没有守护进程没法做到即时发送吧。。。
------解决方案--------------------
好像弄得有些麻烦?
可以写个shell脚本,每秒用curl请求一次(可以不等请求结束,也可以等执行完再等1秒后发送下次请求),设置一个步长(每次发送的最大数量),然后每次取与步长相同个数的短信,先把它们锁定,然后再逐个发送,即使发送未完成时下一次请求被执行了,这一部分也不会重复发送。
------解决方案--------------------
我这边都是用JAVA做的, 正如你所说的要用守护进程,
python也行,
php也行,
php写成脚本启动就行了,
------解决方案--------------------
contab 定时调用php程序发短信

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

Golang在性能和可擴展性方面優於Python。 1)Golang的編譯型特性和高效並發模型使其在高並發場景下表現出色。 2)Python作為解釋型語言,執行速度較慢,但通過工具如Cython可優化性能。

PHP仍然流行的原因是其易用性、靈活性和強大的生態系統。 1)易用性和簡單語法使其成為初學者的首選。 2)與web開發緊密結合,處理HTTP請求和數據庫交互出色。 3)龐大的生態系統提供了豐富的工具和庫。 4)活躍的社區和開源性質使其適應新需求和技術趨勢。

Python更易學且易用,C 則更強大但複雜。 1.Python語法簡潔,適合初學者,動態類型和自動內存管理使其易用,但可能導致運行時錯誤。 2.C 提供低級控制和高級特性,適合高性能應用,但學習門檻高,需手動管理內存和類型安全。

Python和JavaScript在開發環境上的選擇都很重要。 1)Python的開發環境包括PyCharm、JupyterNotebook和Anaconda,適合數據科學和快速原型開發。 2)JavaScript的開發環境包括Node.js、VSCode和Webpack,適用於前端和後端開發。根據項目需求選擇合適的工具可以提高開發效率和項目成功率。

IIS和PHP可以兼容,通過FastCGI實現。 1.IIS通過配置文件將.php文件請求轉發給FastCGI模塊。 2.FastCGI模塊啟動PHP進程處理請求,提高性能和穩定性。 3.實際應用中需注意配置細節、錯誤調試和性能優化。

Golangisidealforbuildingscalablesystemsduetoitsefficiencyandconcurrency,whilePythonexcelsinquickscriptinganddataanalysisduetoitssimplicityandvastecosystem.Golang'sdesignencouragesclean,readablecodeanditsgoroutinesenableefficientconcurrentoperations,t

Python和C 各有優勢,選擇應基於項目需求。 1)Python適合快速開發和數據處理,因其簡潔語法和動態類型。 2)C 適用於高性能和系統編程,因其靜態類型和手動內存管理。

Laravel適合團隊熟悉PHP且需功能豐富的項目,Python框架則視項目需求而定。 1.Laravel提供優雅語法和豐富功能,適合需要快速開發和靈活性的項目。 2.Django適合複雜應用,因其“電池包含”理念。 3.Flask適用於快速原型和小型項目,提供極大靈活性。
