Java 11 နှင့်အတူသွန်းသော့ခတ်ကိုမည်သို့အသုံးပြုရမည်နည်း။

May 16, 2025

Tinggalkan pesanan

Tom Zhang
Tom Zhang
Saya adalah ketua pembuatan di Lianhu, mengawasi proses pengeluaran untuk memastikan kecekapan dan kemampanan. Matlamat saya adalah untuk mengekalkan reputasi kami untuk produk perkakasan berkualiti tinggi sambil mengurangkan kesan alam sekitar.

ဟေ့အဲဒီမှာ! သွန်းလောင်းထားသောသော့ခတ်ပေးသွင်းသူတစ် ဦး အနေဖြင့် Java 11 နှင့်အတူသွန်းသော့ခတ်ကိုမည်သို့အသုံးပြုရမည်ကိုသင်နှင့်အတူမျှဝေရန်လှုံ့ဆော်ခဲ့သည်။ Shed Lock သည် java application တွင်ဖြန့်ဝေထားသောသော့ခတ်များကိုကိုင်တွယ်ရန်ကူညီပေးသောကြောက်မက်ဘွယ်ကိရိယာတစ်ခုဖြစ်သည်။ သင်၏အက်ပလီကေးရှင်း၏ဖြစ်ရပ်မျိုးစုံရှိစဉ်ကသင်၌အသုံးဝင်သည်။ သင်အချို့သောအလုပ်များကိုတစ်ကြိမ်တည်းသာလုပ်ဆောင်ရန်သေချာစေရန်လိုအပ်သည်။

သွန်းသော့ခတ်ဆိုတာဘာလဲ

ကျနော်တို့ဘယ်လိုငုပ်ဒီကိုမငုပ်ခြင်းမပြုမီ, Shed Lock သည်ဖြန့်ဝေထားသောသော့များကိုအကောင်အထည်ဖော်ရန်ရိုးရှင်းသောနည်းလမ်းတစ်ခုကိုပေးသော Java စာကြည့်တိုက်တစ်ခုဖြစ်သည်။ ၎င်းသည် JDBC, Redis, MongoDB ကဲ့သို့သောသိုလှောင်မှုယန္တရားအမျိုးမျိုးကိုထောက်ပံ့သည်။ ဤပြောင်းလွယ်ပြင်လွယ်သည်အမျိုးမျိုးသောစီမံကိန်းများအတွက်အလွန်ရွေးချယ်စရာဖြစ်သည်။

စီမံကိန်းကိုတည်ဆောက်ခြင်း

ပထမ ဦး စွာပထမအချက်များ, သင်သည်သင်၏ Java 11 စီမံကိန်းကိုတည်ဆောက်ရန်လိုအပ်သည်။ အကယ်. သင်သည် MAVEN ကိုအသုံးပြုနေပါက,pom.xml။ JDBC အကောင်အထည်ဖော်မှုကိုဘယ်လိုထည့်သွင်းရမယ်ဆိုတာဥပမာတစ်ခုပါ။

<RESSANCARE> <Groupid> Net.Gavacrumbs.shedlock <artloclock> ShedLock-Provider-JDBC-template> <groupid> net art.javacrumbs.shedlock.shedlock </ groupidlock </ bromcipactid> </ artifiactid> <version> 4.42.0 </ version> </ မှီခိုခြင်း>

သင်သည် Graglle ကိုအသုံးပြုနေပါကဤလိုင်းများကိုသင်၏တံခါးများထည့်ပါbuild.gradleဖြေ -

အကောင်အထည်ဖော်မှု 'Net.javacrumbs.shedlock: ShedLock-Provider-JDBC-template: 4.42.0' implements.shedlock: SHEDLock-Spring: SHEDLock-Spring: 4.42.0 '

သော့ခတ်ပံ့ပိုးပေး configuring

မှီခိုမှုကိုသင်ထည့်ပြီးတာနဲ့သော့ခတ်ပံ့ပိုးသူကို configure လုပ်ဖို့လိုတယ်။ ငါတို့ JDBC database ကိုသုံးနေတယ်ဆိုပါစို့။ သင်တစ် ဦး ဖန်တီးရန်လိုအပ်သည်LockProviderသင့်ရဲ့နွေ ဦး ပြင်ဆင်မှုအတွက်ပဲ။

7-3
Import.javacrumbs.Shedlock.core.docore.docore.SockProvider Import.Javacrumbs.shedlock.provid.provider.jdbctider.jdbctive.jdbctplate.jdbctplate.jdbctplate.gdbctplate.gdbctplate.Jdbctplate.provathover org.springframework.context.nontext.nontext.annotation.Said; ORG.SPRINGFRAMEWRAMEWORK.Context.AnontEt.Context.Context.Context.Context.Context.Context.Context org.springframework.jdbc.core.jdore.jdebctemplate ကိုတင်သွင်းပါ။ Import Javix.SQL.DataSource ကိုတင်သွင်းပါ။ @Configuration Public Class Shedlokconfigonfig {@Bean ပြည်သူ့ Lockprovider Tockprovider (DataSource DataSource) {JDBCTESTEMPLATESOUSOROUSOROUPER ။ (JDBCTEMTEMPLATIONPEROUTION.BUIDER (JDBCTEMPLATED) ); }

ဒီကုဒ်ကဖန်တီးသည်LockProviderBean သည် datbase နှင့်အပြန်အလှန်ဆက်သွယ်ရန် JDBC template ကိုအသုံးပြုသည်။ အပေြာင်းtodipbtime ()Methody သည် Doctabase ၏အချိန်ကိုသော့ခတ်ရန်စီမံခန့်ခွဲမှုအတွက်သော့ခတ်ထားသည့်အချိန်ကိုအသုံးပြုသည်။

7-2

သင့်ဝန်ဆောင်မှုတွင်သွန်းသော့ခတ်ကိုအသုံးပြုခြင်း

ယခုပြင်ဆင်မှုပြီးဆုံးသွားပြီဆိုလျှင်သင်၏ 0 န်ဆောင်မှုတွင်သွန်းသော့ကိုမည်သို့အသုံးပြုရမည်ကိုကြည့်ကြပါစို့။ သင်သော့ခတ်ချင်သောဝန်ဆောင်မှုနည်းလမ်းရှိသည်ဆိုပါစို့။ သင်အသုံးပြုနိုင်သည်@schedulerlockသွန်းသော့ခတ်ခြင်းဖြင့်ပေးထားသောမှတ်စု။

Import.Javacrumbs.shedlock.spring.stroling.Stpring.Snotation.Schedulerlock ။ Org.Schingframework.Scheduling.Scheduling.Scheduling.Scheduled; Org.SpringFramework.StereOtyPe.Sertice ကိုတင်သွင်းပါ။ @service အများပိုင်အတန်း MyService @schedulerlock (fixedrate = 60000) @schedulerlock (fixedulerlock = "mytasklock), Lockatlask =" 59s ", Lockatlastor =" 30s ") {" ငါ့အလုပ်ကိုပြေး ... "ဒီမှာနှိပ်ပါ။ ) }

ဒီဥပမာမှာ@scheduledမှတ်ချက်ပေးသည်mytask ()စက္ကန့် 60 တိုင်းတွင်နည်းလမ်း။ အပေြာင်း@schedulerlockမှတ်ချက်သည်လျှောက်လွှာ၏ဥပမာတစ်ခုသာဤနည်းလမ်းကိုတစ်ကြိမ်တွင်လုပ်ဆောင်နိုင်ကြောင်းသေချာစေသည်။ အပေြာင်းနံမယ်attribute သည်သော့ခတ်မှုအတွက်ထူးခြားသောအမှတ်အသားဖြစ်သည်။ အပေြာင်းcurl -postforattribute သည်သော့ခတ်ထားသောအချိန်ကိုသတ်မှတ်သည်။Lockatlastforattribute သည်သော့ခတ်ထားသင့်သည့်အနည်းဆုံးအချိန်ကိုသတ်မှတ်သည်။

ကွဲပြားခြားနားသောသော့ခတ်ပံ့ပိုးပေး

ငါအစောပိုင်းကဖော်ပြခဲ့တဲ့အတိုင်း, သွန်းသော့ခတ်ကွဲပြားခြားနားသောသော့ခတ်ပံ့ပိုးပေးထောက်ခံပါတယ်။ Redis ကို Lock Provider တစ်ခုအနေနဲ့ကြည့်ဖို့ကြည့်ရအောင်။

ပထမ ဦး စွာသင်၏စီမံကိန်းသို့ပြန်လည်ထူထောင်ရေးကိုထည့်ပါ။ သင် MAVAN ကိုအသုံးပြုနေပါက

<မှီခိုမှု> <brotherid> net.javacrumbs.shedlock <artlock-spring-sking <artlock-provider-sking <artlock-spring <artlock-dry-sking <artifactid> </ artifactid> 4.42.0 <artifactid> <Redifactid> <version> 4.42.0 <group>

နှင့် gragle များအတွက်:

အကောင်အထည်ဖော်မှု 'Net.Javacrumbs.shedlock: ShedLock-Provider-Redis-Spring: 4.42.0'

ထို့နောက်သင်၏ Spring Configuration တွင် Redis Lock Provider ကို configure လုပ်ပါ။

Import.javacrumbs.Shedlock.core.docore.docore.SockProvider Import.Javacrumbs.shedlock.Provider.Provider.Sprovider.Sprovider.Sprovider.Spring.Spring.Spring.Spring.Spring.Spring.rediscrovider; org.springframework.context.nontext.nontext.annotation.Said; ORG.SPRINGFRAMEWRAMEWORK.Context.AnontEt.Context.Context.Context.Context.Context.Context.Context import org.springframework.data.redis.connection.RedisConnectionFactory; @Configuration Public Class Redisshedlockconfigfig @Bean ပြည်သူ့ Lockprovider Lockprovider (RedisconferenptionFactory RedisconnectionFactory) {RedisconnectionFrovider (RedisconferenptionFactider) ။ }

သင်အတူတူကိုသုံးနိုင်သည်@schedulerlockသင်၏ 0 န်ဆောင်မှုနည်းစနစ်များနှင့်သွန်းလောင်းထားသောသော့ခတ်သည်သော့ခတ်များကိုစီမံရန် Redis ကိုအသုံးပြုလိမ့်မည်။

8-3

ပြသာနာရှာဖွေရှင်းပေးခြင်း

တစ်ခါတစ်ရံတွင်အခြေအနေများသည်စီစဉ်ထားသည့်အတိုင်းမသွားနိုင်ပါ။ သင်သွန်းလောင်းသောသော့ခတ်ခြင်းနှင့်ပြ issues နာများရှိပါကဤနေရာတွင်ဘုံပြ problems နာများနှင့်ဖြေရှင်းနည်းများဖြစ်သည်။

  • သော့ခတ်မလွှတ်ရ: စစ်ဆေးပါcurl -postforattribute ။ အကယ်. ၎င်းသည်ရှည်လျားလွန်းပါကသော့ခတ်ခြင်းကိုအချိန်မီမထုတ်ပြန်နိုင်ပါ။ သော့ခတ်ခြင်းကိုစနစ်တကျလွတ်လွတ်လပ်လပ်ထုတ်ဖော်ပြောဆိုခြင်းကိုတားဆီးနိုင်သောသင်၏ကုဒ်တွင်ခြွင်းချက်များရှိမရှိစစ်ဆေးနိုင်သည်။
  • သော့ခတ်အလုပ်ကိုကွပ်မျက်ဖြေ - သာဓကအားလုံးဟာ Lock ပံ့ပိုးသူနဲ့ configuration ကိုသုံးနေတယ်ဆိုတာသေချာအောင်လုပ်ပါ။ ဒါ့အပြင်ဒေတာဘေ့စ်သို့မဟုတ် Redis ဆာဗာများကိုဖြစ်ရပ်အားလုံးမှကြည့်ရှုနိုင်သလားစစ်ဆေးပါ။

အခြားသော့ခလောက်များကိုကျွန်ုပ်တို့ကမ်းလှမ်းသည်

ငါတို့ဟာသွန်းသော့တွေလောက်ပဲမဟုတ်ဘူး။ ကွဲပြားခြားနားသော application များအတွက်အသုံးဝင်သောအခြားသော့ခလောက်အမျိုးမျိုးကိုကျွန်တော်တို့ကမ်းလှမ်းပါတယ်။ ဥပမာအားဖြင့်ငါတို့ထွက်စစ်ဆေးပါဘေးထွက်တံခါးသော့ခတ်အရာဘေးထွက်တံခါးများလုံခြုံအတွက်ပြီးပြည့်စုံသောအရာ။ ကျွန်တော်တို့၏မိမိကိုယ်ကိုသော့ခတ်ထားသောတံခါးသင်အလိုအလျောက်သော့ခတ်ထားသောတံခါးကိုလိုချင်လျှင်အလွန်ကောင်းမွန်သောရွေးချယ်မှုတစ်ခုဖြစ်သည်။ အကယ်. သင်သည်သိုလှောင်ခန်းတစ်ခုအတွက်လုံခြုံမှုရှိရန်လိုအပ်ပါကသိုလှောင်ခန်းသော့ခတ်သင်လိုအပ်တာပဲ။

ကောက်ချက်

Shed Lock ကို Java 11 ဖြင့်အသုံးပြုခြင်းသည်သင်၏လျှောက်လွှာတွင်ဖြန့်ဝေထားသောသော့ခလောက်များကိုစီမံရန်အကောင်းဆုံးနည်းလမ်းဖြစ်သည်။ ကွဲပြားခြားနားသောသော့ခလောက်ပံ့ပိုးသူများနှင့်ပြောင်းလွယ်ပြင်လွယ်စွာပြောင်းလွယ်ပြင်လွယ်များစွာပေးရန်လွယ်ကူသည်။ သင် JDBC, Redis, Redis (သို့) အခြားအထောက်အပံ့သိုလှောင်မှုယန္တရားကိုအသုံးပြုသည်ဖြစ်စေ,

အကယ်. သင်သည်ကျွန်ုပ်တို့၏သွန်းသောသော့ခလောက်များသို့မဟုတ်ကျွန်ုပ်တို့၏အခြားသော့ခတ်ထားသောဖြေရှင်းနည်းများကို 0 ယ်ရန်စိတ်ဝင်စားပါကသင်နှင့်စကားပြောရန်ကျွန်ုပ်တို့နှစ်သက်သည်။ 0 ယ်ယူမှုဆွေးနွေးမှုများကိုစတင်ရန်နှင့်သင်၏လိုအပ်ချက်များအတွက်အကောင်းဆုံးသော့ခတ်ဖြေရှင်းချက်ကိုရှာရန်ကျွန်ုပ်တို့ထံဆက်သွယ်ပါ။

7-6

ကိုးကားခြင်း

  • သော့ခတ်တရားဝင်စာရွက်စာတမ်းများသွန်းလောင်း
  • Spring မူဘောင်မှတ်တမ်းတင်ခြင်း
Hantar pertanyaan