來到新的公司有段時間了。之前就一直codingcoding,現公司雖然系統啊各方面沒有阿里成熟,技術用的也不是很新,但正崗還是比外包崗位好吧,而且公司飛速發展感覺前景還是不錯的。同事相處的也挺好,而且我已經是吃飯小分隊的隊長了。~.~。最近老大分配了個活,乙個單節點系統的擴增公升級為兩台。說實話之前沒做過~而且這個系統的slb居然是要通過dns系統輪訓做的。該篇文章記錄下遇見的問題以及解決方式:
**中有很多基於spring@scheduled實現的定時任務,如果不改造,兩台機器可能會在同一時間同時跑這些定時任務,沒有必要。所以要把這些定時任務的**抽取出來。公司現如今沒有dts分布式定時任務系統。怎麼實現呢?
解決方案:在其中的某一台機器配置linux-crontab計畫任務來實現:
1.1、把所有的定時任務包裝成http介面,這裡我按照型別分了多個http介面,每個介面裡又通過key引數區分不同的任務。
1.2、配置crontab,定時通過curl命令傳送http請求去呼叫任務。
eg:0 */1 * * * curl 每隔一小時執行
常用命令:
crontab -e:編輯計畫任務
crontab -l:列出現有的計畫任務
less /var/log/cron:查詢計畫任務執行日誌
crontab命令詳解
注意:crontab配置:wq後就即可生效。
系統有很多之前上傳的檔案,公司並沒有專門的分布式檔案儲存系統,這些檔案就儲存在當前機器的tomcat中。如果需要擴增一台。那麼這些檔案必須進行copy乙份到新的機器中,否則應用就附件相關功能就會有問題。那麼怎麼做呢?難道乙個檔案乙個檔案scp(遠端copy)?
解決方案:在老的機器上安裝nfs實現資料夾的遠端共享,本地端的系統中來看,那個遠端主機的目錄就好像是自己的乙個磁碟分割槽目錄一樣。
由於運維同學不給root許可權,沒辦法自己在測試機器上安裝nfs了。比較可惜。但起碼思路開啟了。也算是一種收穫把。
nfs伺服器搭建與配置
3.1、crontab配到哪一台機器呢?配到其中某一台,如果這一台down掉了,不就尷尬了。運維小姐姐給的方案是兩台都配上,其中一台先注釋掉,出問題了,再開啟。這解決方案我也醉了。那麼問題又來了。
3.2、如何監控到crontab定時任務的正常執行呢?
linux crontab 定時任務
通過crontab 命令,我們可以在固定的間隔時間執行指定的系統指令或 shell script指令碼。時間間隔的單位可以是分鐘 小時 日 月 周及以上的任意組合。這個命令非常適合週期性的日誌分析或資料備份等工作。命令格式 crontab e l 例如 每隔15分鐘 0,15,30,45 bin e...
Linux Crontab 定時任務
crontab檔案 bash vat command not found hadoop master1 etc cat crontab shell bin bash path sbin bin usr sbin usr bin mailto root home for details see man...
Linux Crontab 定時任務
一 crontab介紹 crontab命令的功能是在一定的時間間隔排程一些命令的執行。1.1 etc crontab檔案 在 etc目錄下有乙個crontab檔案,這裡存放有系統執行的一些排程程式。每個使用者可以建立自己的排程crontab 在 var spool cron目錄下 以下是我本機上的c...