中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁(yè) > news >正文

怎樣登陸wordpress短視頻seo詢盤獲客系統(tǒng)軟件

怎樣登陸wordpress,短視頻seo詢盤獲客系統(tǒng)軟件,設(shè)計(jì)企業(yè)vi,個(gè)人網(wǎng)站不備案可以嗎在文件的內(nèi)容發(fā)生變動(dòng)時(shí),應(yīng)用可以感知這種變種,并重新加載文件內(nèi)容,更新應(yīng)用內(nèi)部緩存 實(shí)現(xiàn) 輪詢:定時(shí)器Timer,ScheduledExecutorService 判斷文件修改:根據(jù)java.io.File#lastModified獲取文件的上次修改時(shí)…
  1. 在文件的內(nèi)容發(fā)生變動(dòng)時(shí),應(yīng)用可以感知這種變種,并重新加載文件內(nèi)容,更新應(yīng)用內(nèi)部緩存

  2. 實(shí)現(xiàn)

    1. 輪詢:定時(shí)器Timer,ScheduledExecutorService

    2. 判斷文件修改:根據(jù)java.io.File#lastModified獲取文件的上次修改時(shí)間,比對(duì)

    3. public class FileUpTest{private long lastTime;private void ttt(){throw new NullPointerException();}@Testpublic void testFileUpdate(){File file = new File("/tmp/alarmConfig");//首先文件的最近一次修改時(shí)間戳lastTime = file.lastModified();//定時(shí)任務(wù),每秒來(lái)判斷一下文件是否發(fā)生變動(dòng),即判斷l(xiāng)astModified是否改變ScheduledExecutorService scheduledExcutorService = Executors.newScheduledThreadPool(1);scheduledExecutorService.scheduleAtFixedRate(new Runnable(){@Oveerridepublic void run(){if(file.lastModified() > lastTime){System.out.println("file update! time : "+ file.lastModified());lastTime = file.getlastModified();ttt();}}},0,1,TimeUnit.SECONDS);try{Thread.sleep(100*60);}catch(InterruptedException e){e.printStackTrace();}}
      }
      
    4. 使用這種的,如果定時(shí)任務(wù)執(zhí)行過(guò)程中遇到發(fā)生異常,則后面的任務(wù)將不再執(zhí)行

  3. apache版本

    1. <dependency><groupId>commons-io</groupId><artifactId>commons-io</artifactId><version>2.6</version>
      </dependency>
      
    2. 借助工具中FileAlterationObserver,FileAlterationListener,FileAlterationMonitor三個(gè)類實(shí)現(xiàn)相關(guān)需求

    3. public class PropertiesConfListenerHelper{public static boolean registerConfChangeListener(File file,Function<File,Map<String,AlarmConfig>> func){try{//輪詢間隔5秒long interval = TimeUnit.SECONDS.toMillis(5);//因?yàn)楸O(jiān)聽是以目錄為單位進(jìn)行的,所以這里直接獲取文件的根目錄File dir = file.getParentFile();//創(chuàng)建一個(gè)文件觀察期用于過(guò)濾FileAlterationObserver observer = new FileAlterationObserver(dir,FileFilterUtils.and(FileFilterUtils.fileFileFilter(),FileFilterUtils.nameFileFilter(file.getName())));//設(shè)置文件變化監(jiān)聽器observer.addListener(new MyFileListener(func));FileAlterationMonitor monitor = new FileAlterationMonitor(interval,observer);monitor.start();return true;}catch(Exception e){log.error("register properties change listener error! e:{}",e);return false;}}static final class MyFileListener extends FileAlterationListenerAdaptor{private Function<File,Map<String,AlarmConfig>> func;public MyfileListener(Function<File,Map<String,AlarmConfig>> func){this.func = func;}@Overridepublic void onFileChange(File file){Map<String,AlarmConfig> ans = func.apply(file);//如果加載失敗,打印一條日志log.warn("PropertiesConfig changed ! reload ans: {}",ans);}}
      }
      
    4. 介紹

      1. 這個(gè)文件監(jiān)聽,是以目錄為根源,可以設(shè)置過(guò)濾器,來(lái)實(shí)現(xiàn)對(duì)應(yīng)文件變動(dòng)的監(jiān)聽
      2. 上面的registerConfChangeListener方法,傳入的file是具體的配置文件,因此構(gòu)建參數(shù)的時(shí)候,拿到目錄,拿到文件名作為過(guò)濾
      3. 第二個(gè)參數(shù)是jdk1.8語(yǔ)法,其中為具體的讀取配置文件內(nèi)容,并影射為對(duì)應(yīng)的實(shí)體對(duì)象
      4. 如果func方式執(zhí)行時(shí),拋出了一場(chǎng),程序失敗,不在運(yùn)行
  4. JDK版本

    1. JDK1.7提供了一個(gè)WatchService,可以用來(lái)實(shí)現(xiàn)文件變動(dòng)的監(jiān)聽

    2. @Test
      public void testFileUpWather() throws IOException{//監(jiān)聽必須是目錄Path path = Paths.get("/tmp");WatchService watcher = FileSystems.getDefault().newWatchService();path.register(watcher,ENTRY_MODIFY);new Thread(() ->{try{while(true){WatchKey key = watcher.take();for(WatchEvent<?> event : key.pollEvents()){if(event.kind() == OVERFLOW){                        // 實(shí)踐可能lost or discardedcontinue}Path fileName = (Path)event.context();System.out.println("文件更新:"+fileName);}if(!key.reset()){//重設(shè)WatchKeybreak}}}catch(Exception e){e.printStackTrace();}}).start();try{Thread.sleep(1000* 60 * 10);}catch(InterruptedException e){e.printStackTrace();}
      }
      
    3. 千萬(wàn)不要在定時(shí)任務(wù)或者文件變動(dòng)的回調(diào)方法中拋出異常

    4. 為了避免異常斷開情況,一個(gè)是可以做的實(shí)現(xiàn)借助EventBus的異步消息通知機(jī)制來(lái)實(shí)現(xiàn),當(dāng)文件變動(dòng)之后,發(fā)送一個(gè)消息即可,然后在具體的重新加載文件內(nèi)容的方法上,添加一個(gè)@Subscribe注解即可,這樣既實(shí)現(xiàn)了解耦,也避免了一場(chǎng)導(dǎo)致的服務(wù)異常

http://www.risenshineclean.com/news/37511.html

相關(guān)文章:

  • 遵義做網(wǎng)站哪個(gè)公司最好百度推廣優(yōu)化怎么做的
  • 網(wǎng)站建設(shè)內(nèi)容錄入論文百度如何收錄網(wǎng)站
  • b站破解2023免費(fèi)版下載抖音企業(yè)推廣
  • 做電商網(wǎng)站價(jià)錢16種營(yíng)銷模型
  • 怎樣做淘寶網(wǎng)站建設(shè)電商網(wǎng)站平臺(tái)搭建
  • 做網(wǎng)站 當(dāng)站長(zhǎng)紹興seo排名外包
  • 給政府做網(wǎng)站怎么報(bào)價(jià)深圳網(wǎng)站建設(shè)服務(wù)
  • 青島網(wǎng)站站長(zhǎng)之家權(quán)重查詢
  • 網(wǎng)站會(huì)員功能長(zhǎng)春seo排名
  • 用vue框架做的網(wǎng)站網(wǎng)站建設(shè)網(wǎng)站
  • 網(wǎng)站開發(fā)技術(shù)路線網(wǎng)站制作流程和方法
  • 關(guān)于政府補(bǔ)貼企業(yè)做網(wǎng)站的事免費(fèi)推廣引流平臺(tái)
  • 精品課程網(wǎng)站建設(shè) 碧輝騰樂(lè)發(fā)稿網(wǎng)
  • 網(wǎng)站的外鏈?zhǔn)鞘裁醋鼍W(wǎng)站公司哪家正規(guī)
  • 如何用網(wǎng)頁(yè)設(shè)計(jì)制作個(gè)人網(wǎng)站seo優(yōu)化包括
  • 純色直播河南seo外包
  • android 做分享的網(wǎng)站seo的中文含義是
  • 做網(wǎng)站買了域名之后谷歌搜索官網(wǎng)
  • 學(xué)做網(wǎng)站平臺(tái)建立網(wǎng)站需要多少錢
  • 推廣方案如何寫南京網(wǎng)絡(luò)優(yōu)化公司有哪些
  • 抖音代運(yùn)營(yíng)服務(wù)協(xié)議網(wǎng)絡(luò)快速排名優(yōu)化方法
  • 構(gòu)建動(dòng)態(tài)網(wǎng)站設(shè)計(jì)網(wǎng)絡(luò)公關(guān)公司聯(lián)系方式
  • 清遠(yuǎn)專業(yè)網(wǎng)站建設(shè)服務(wù)網(wǎng)頁(yè)設(shè)計(jì)工作室長(zhǎng)沙
  • 為什么要立刻做網(wǎng)站時(shí)事熱點(diǎn)新聞
  • 做a三級(jí)視頻在線觀看網(wǎng)站上海seo優(yōu)化bwyseo
  • 如何進(jìn)行企業(yè)營(yíng)銷型網(wǎng)站建設(shè)網(wǎng)站設(shè)計(jì)規(guī)劃
  • 網(wǎng)站開發(fā)有幾種語(yǔ)言網(wǎng)站推廣的常用途徑有哪些
  • 觸摸屏html網(wǎng)站搜索引擎哪個(gè)好用
  • 地方門戶類網(wǎng)站有哪些seo策略主要包括
  • 南京凱盛建設(shè)集團(tuán)官方網(wǎng)站網(wǎng)絡(luò)營(yíng)銷推廣專家