Skip Ribbon Commands
Skip to main content

​​​​​​

Azure & DSVM ରେ ନିୟୋଜନ କରି BigDL ର ସ୍ୱୟଂଚାଳିତ ସ୍ଥାପନା

ଧରାଯାଉ ଆପଣଙ୍କ ପାଖରେ ସେହି Azure ଆପ୍‌ ସର୍ଭିସ ୱେବ ଆପ୍‌ ଅଛି ଯାହାକି ଏକ ବଡ଼ ମାତ୍ରାର ଯାତାୟାତକୁ ନିୟନ୍ତ୍ରଣ କରିଥାଏ ଏବଂ ଡାଟାବେସ୍‌କୁ, ଚିତ୍ର ୧ ରେ ଦର୍ଶାଯାଇଥିବା ପରି ସଂରଚନା ସହିତ ଅଭିଗମ୍ୟ କରିଥାଏ। ଆପଣ ନିୟୋଜନ କରିବା ସମୟରେ ଆପଣ ବଗ୍‌ଗୁଡ଼ିକୁ ନିୟୋଜନ କରିବାର ବିପଦକୁ ଉଠାଇବାକୁ ଚାହୁଁନଥିବେ ଅଥବା ନୂଆ ପ୍ରକାଶକୁ ନିୟୋଜନ କରିବା ସମୟରେ ଯଥେଷ୍ଟ ଡାଉନଟାଇମ ରଖିଥିବା ଉଚିତ, ନିୟୋଜନ ସ୍ଲଟରେ ଏହାକୁ ହିଁ ଆପଣ ଚାହୁଁଥିବେ।  ନିୟୋଜନ ସ୍ଲଟ ହେଉଛି Azure ଆପ୍‌ ସର୍ଭିସ ୱେବ ଆପ୍‌ ଦୃଷ୍ଟାନ୍ତ (W3WP) ଯାହାକି ସମାନ ନାମ ବିଶିଷ୍ଟ ଆପଣଙ୍କର ଉତ୍ପାଦନ Azure ଆପ୍‌ ସର୍ଭିସ ୱେବ ଆପ୍‌ ସହିତ ~ବାନ୍ଧିହୋଇଥାଏ ଏବଂ ସେହି ଆପ୍‌ ସର୍ଭିସ ଯୋଜନା (ASP) ସହିତ ଚାଲିଥାଏ ଯାହାକି ମୁଁ here  ଆଲୋଚନା କରିଛି।  ଏହି ବିକାଶ ସ୍ଲଟ୍‌ ଆପଣଙ୍କୁ ଆପଣଙ୍କର ପରୀକ୍ଷାମୂଳକ ଏବଂ ଉତ୍ପାଦନରେ ବ୍ୟବହାର ହେଉନଥିବା ପ୍ରସ୍ତୁତ କୋଡ୍‌କୁ ଲାଇଭ ୱେବ ଆପ୍‌ରେ ପ୍ରକାଶ କରିବା ପୂର୍ବରୁ ପରୀକ୍ଷା ପାଇଁ ନିୟୋଜିତ କରିଥାଏ।  ଏହି ନିୟୋଜନ ସ୍ଲଟର ସୁନ୍ଦରତା ହେଉଛି ଯେ ଆପଣ ଏକ ବଟନ କ୍ଲିକ କରି ନୂଆ ସଂସ୍କରଣକୁ ଧାରଣ କରିଥିବା ନିୟୋଜନ ସ୍ଲଟଟି ଉତ୍ପାଦନ ସ୍ଲଟ ସହିତ ବଦଳ ହୋଇଯିବ, ଏବଂ କାର୍ଯ୍ୟଶେଷ, ସେହି ନୂଆ ସଂସ୍କରଣଟି କେବଳ ଗୋଟିଏ କ୍ଲିକ ଦ୍ୱାରା, ଲାଇଭ ହୋଇଯିବ।

ଚିତ୍ର ୧ ରେ ଦେଖନ୍ତୁ ସେଠାରେ ଏକ SQL ସର୍ଭର ଅଛି ଯେଉଁଥିରେ 2 SQL Azure ଡାଟାବେସ ଅଛି, ଗୋଟିଏକୁ stickyslot-pro ଏବଂ ଅନ୍ୟଟିକୁ stickyslot-tst କୁହାଯାଏ।  ଏହା ସହିତ, ସେଠାରେ ଏକ ଆପ୍‌ ସର୍ଭିସ ଯୋଜନା (ASP) ଅଛି ଯାହାକୁ STICKYSLOT-ASP କୁହାଯାଏ ଯାହାକି stickyslot ନାମକ Azure ଆପ୍‌ ସର୍ଭିସ ୱେବ ଆପ୍‌କୁ testing ନାମକ ନିୟୋଜନ ସ୍ଲଟ ସହିତ ଚଲାଇଥାଏ।  ଏହି ସବୁଗୁଡ଼ିକୁ STICKSLOT-RG ନାମକ ଏକ ଉତ୍ସ ସମୂହ ମଧ୍ଯରେ ରଖାଯାଇଥାଏ।


 

 
 

ଚିତ୍ର ୧, ଉତ୍ତମ ପରିସ୍ଥିତି, ଆପ୍‌ ସର୍ଭିସ ସଂରଚନା ଚିତ୍ର

Here ଏକ ଭଲ ପତ୍ରିକା ଅଛି ଯାହାକି ଷ୍ଟିକି ସ୍ଲଟଗୁଡ଼ିକୁ ଆଲୋଚନା କରିଥାଏ।

ଏହି ଉଲ୍ଲେଖରେ ମୁଁ Azure ଆପ୍‌ ସର୍ଭିସ ୱେବ ଆପ୍‌ ନିୟୋଜନ ସ୍ଲଟଗୁଡ଼ିକୁ PRO (ଉତ୍ପାଦନ) ରୁ TST (ପରୀକ୍ଷା ଦୃଷ୍ଟାନ୍ତ)କୁ ଅଦଳ ବଦଳ କରିବା ବିଷୟରେ ଧ୍ୟାନ ଦେଇଥାଏ।  ସମସ୍ୟା ହେଉଛି, ପୂର୍ବନିର୍ଦ୍ଧାରିତ ଭାବରେ, ଆପ୍‌ ସେଟିଂସ୍‌ ଏବଂ ଡାଟାବେସ ସଂଯୋଗ ଷ୍ଟ୍ରିଙ୍ଗଗୁଡ଼ିକ ସ୍ଲଟ ସହିତ ଷ୍ଟିକି ନୁହଁ ଏବଂ ୱେବ ଆପ୍‌କୁ ଅନୁସରଣ କରିଥାଏ ଯେତେବେଳେ ପରୀକ୍ଷା ସ୍ଲଟକୁ ଉତ୍ପାଦନ ସ୍ଲଟ ସହିତ ବଦଳାଯାଇଥାଏ।  ଏହି ପରିସ୍ଥିତିରେ, ଏହାର ଅର୍ଥ ହେଉଛି ଯେ ଯେତେବେଳେ ମୁଁ  testing ନିୟୋଜନ ସ୍ଲଟକୁ ବଦଳାଇଥାଏ, ଯାହାକି, ସେହି ସମୟରେ, stickslot-tst ଡାଟାବେସରୁ, ଉତ୍ପାଦନ ସ୍ଲଟକୁ ତଥ୍ୟ ଆଣିଥାଏ, ଏବଂ ତାପରେ ୱେବ ଆପ୍‌କୁ ବଦଳାଇଥାଏ ସେତେବେଳେ ତାହା stickyslot-tst ଡାଟାବେସକୁ ସୂଚାଇଥାଏ ଯେଉଁଠିକି ତାହାକୁ stickyslot-pro ଡାଟାବେସକୁ ଦର୍ଶାଇବା ଉଚିତ।  ତେଣୁ, ମୋତେ ଆବଶ୍ୟକ ହେଉଛି ଏକ ଉପାୟ ଯାହାଫଳରେ ମୁଁ ୱେବ ଆପ୍‌ ଡେଭେଲପମେଣ୍ଟ ସ୍ଲଟକୁ ବଦଳାଇ ପାରିବି କିନ୍ତୁ ଡାଟାବେସ ସଂଯୋଗ ଷ୍ଟ୍ରିଙ୍ଗ ପ୍ରଚଳିତ ଉତ୍ପାଦନ ୱେବ ଆପ୍‌କୁ ଦର୍ଶାଉଥିବା ଆବଶ୍ୟକ ଏବଂ ପରୀକ୍ଷା ପାଇଁ ଥିବା ସ୍ଲଟ ପରୀକ୍ଷା ଡାଟାବେସକୁ ଦର୍ଶାଉଥିବା ଆବଶ୍ୟକ।  ‘ସ୍ଲଟ ପାଇଁ ଥିବା ଷ୍ଟିକି ରେ ସେଟିଂସ୍‌ ଦ୍ୱାରା ଏହା ହାସଲ ହୋଇଛି।

ଧରାଯାଉ ମୋର ଉତ୍ପାଦନ ୱେବ ଆପ୍‌ ପାଇଁ, ମୋ ପାଖରେ 2 ଟି ମୂଲ୍ୟ ଅଛି ଯାହାକୁ ମୁଁ ଉତ୍ପାଦନ ରେ ରଖିବାକୁ ଚାହୁଁଛି ଯେତେବେଳେ ମୁଁ ଅଦଳ ବଦଳ କରିବାକୁ ଯିବି।  ଚିତ୍ର ୨ କୁ ଦେଖନ୍ତୁ।

 

ଚିତ୍ର ୨, ଷ୍ଟିକି ସ୍ଲଟ ସେଟିଂସ୍‌ ଯାହାକି ଉତ୍ପାଦନରେ ରହିଥାଏ ପରୀକ୍ଷା ସ୍ଲଟ ସହିତ ବଦଳ କରିସାରିବା ପରେ ମଧ୍ଯ

ଦେଖନ୍ତୁ ସେଠାରେ STICKSLOT ନାମକ ଏକ ଆପ୍‌ ସେଟିଂସ୍‌ ଅଛି ଯାହାର Value = ProductionEnvironment ଏବଂ ସଂଯୋଗ ଷ୍ଟ୍ରିଙ୍ଗର ନାମ StickySlotConnectionString ଯେଉଁଥିରେ ଉଦାହରଣ ସ୍ୱରୂପ ଉତ୍ପାଦନ ଡାଟାବେସ୍‌ ନାମ, ବ୍ୟବହାରକାରୀ ଆଇଡି ଏବଂ ପ୍ରବେଶ ସଂକେତ ଥାଏ।  ବିଶେଷକରି, ଦେଖନ୍ତୁ ଯେ ସ୍ଲଟ ସେଟିଂ ଚେକ୍‌ ବକ୍ସଟି ବଛାହୋଇଛି ଯାହାର ଅର୍ଥ ହେଉଛି ଏହା ୱେବ ଆପ୍‌ ସହିତ ରହିଥାଏ ଏବଂ ବଦଳାଇବା ସମୟରେ ସ୍ଥାନାନ୍ତରିତ ହୋଇନଥାଏ।  ଏହା ମଧ୍ଯ ଦେଖନ୍ତୁ ଯେ ପରୀକ୍ଷା ଡେଭଲପମେଣ୍ଟ ସ୍ଲଟରେ, ଚିତ୍ର ୩ କୁ ଦେଖନ୍ତୁ, ମୋ ପାଖରେ ସମାନ ଆପ୍‌ ସେଟିଂ ଏବଂ ସଂଯୋଗ ଷ୍ଟ୍ରିଙ୍ଗ ଅଛି (କି ଏବଂ ନାମ), କିନ୍ତୁ ସେଗୁଡ଼ିକର ମୂଲ୍ୟ ଅଲଗା, ଏବଂ ସ୍ଲଟ ସେଟିଂ ଚେକବକ୍ସ ବଛାହୋଇଛି, ତେଣୁ ଏହା ପରୀକ୍ଷା ୱେବ ଆପ୍‌ରେ ରହିଥାଏ, ମୋର ପରୀକ୍ଷା ୱେବ ଆପ୍‌କୁ ଉତ୍ପାଦନ ପରିବେଶ ଭାବେ ଦର୍ଶାଇବା ପାଇଁ କୌଣସି ଉପାୟ ନାହିଁ।

 
 

ଚିତ୍ର ୩, ଷ୍ଟିକି ସ୍ଲଟ୍‌ ସେଟିଂ ଯାହାକି ଉତ୍ପାଦନ ସ୍ଲଟ ସହିତ ବଦଳାଇବା ସତ୍ତ୍ୱେ ମଧ୍ଯ ପରୀକ୍ଷାରେ ରହିଥାଏ

ମୁଁ ଅତିରିକ୍ତ ଆପ୍‌ ସେଟିଂକୁ ଯୋଡ଼ିଛି, MoveWhenSwapped, ଯାହାକୁ ମୁଁ ଷ୍ଟିକି ଭାବରେ କରିନାହିଁ, ଯେପରିକି ଏହି ଗୋଟିକ ବଦଳ ସମୟରେ ପରିବର୍ତ୍ତିତ ହେବ।  ତେଣୁ, ଯେତେବେଳେ ମୁଁ ଉତ୍ପାଦନକୁ ପରୀକ୍ଷାରେ ବଦଳାଇଥାଏ, ତାପରେ ସେହି ଆପ୍‌ ସେଟିଂଟି ଉତ୍ପାଦନ ୱେବ ଆପ୍‌ ସଂରଚନାରେ ରହିବ ଏବଂ ପରୀକ୍ଷାରେ ନୁହଁ।  ଚାଲନ୍ତୁ ଦେଖିବା, ଯେତେବେଳେ ସବୁଗୁଡ଼ିକର ପରୀକ୍ଷା ଶେଷ ହେବ ଏବଂ ପରୀକ୍ଷା ପରିବେଶରେ ଉତ୍ପାଦନ ପାଇଁ ପ୍ରସ୍ତୁତ ହେବ, ସେତେବେଳେ ପରୀକ୍ଷା ୱେବ ଆପ୍‌କୁ ଯାଆନ୍ତୁ ଏବଂ ବଦଳାନ୍ତୁ ଲିଙ୍କକୁ କ୍ଲିକ କରନ୍ତୁ, ଚିତ୍ର ୪ ରେ ଦର୍ଶାଯାଇଥିବା ପରି।

ଚିତ୍ର ୪, Azure ଆପ୍‌ ସର୍ଭିସ ୱେବ ଆପ୍‌କୁ ସ୍ଲଟ୍‌, ଷ୍ଟିକି ସ୍ଲଟ୍‌ଗୁଡ଼ିକ ମଧ୍ଯରେ ବଦଳାନ୍ତୁ

ସେଠାରେ “swap with preview” ନାମକ ଏକ ବିଶେଷତା ଅଛି ଯେଉଁଥିରେ ଏକ ଭଲ ଲେଖା ରହିଛି here ବିଶେଷତଃ, ଏହି ବିଶେଷତା ଆପଣଙ୍କୁ ନିଜର ପରୀକ୍ଷା ପରିବେଶକୁ ଉତ୍ପାଦନ ଭାବରେ ଦର୍ଶାଇଥାଏ କେବଳ ଏତିକି ନିଶ୍ଚିତ କରିବା ପାଇଁ ଯେ ଆପଣ ପ୍ରକୃତ ଯାତାୟାତକୁ ଆରମ୍ଭ କରିବା ପୂର୍ବରୁ ସବୁକିଛି ଆଶାନୁରୂପେ କାମ କରୁଛି କି ନାହିଁ।  ନିଶ୍ଚିତ କରନ୍ତୁ ଯେ ଆପଣ ବଦଳ କାମ ଶେଷ କରିସାରିଥିବେ ଅଥବା ପୂର୍ବ ଅବସ୍ଥାକୁ ପରିବର୍ତ୍ତନ କରନ୍ତୁ ଯେପରି କି ଆପଣ ନିଜର ପରୀକ୍ଷାକୁ ଅଧିକ ସମୟ ପର୍ଯ୍ୟନ୍ତ ଉତ୍ପାଦନ ଭାବରେ ଦର୍ଶାଇବାକୁ ଚାହୁଁନାହାନ୍ତି।  ଏହା ସମସ୍ତ ପରିସ୍ଥିତିରେ ହୁଏତଃ କାମ କରିନପାରେ ଯଦି ସେଠାରେ କୌଣସି ଡାଟାବେସ ସଂରଚନା ପରିବର୍ତ୍ତନ ହୋଇଥିବ ଯାହାକି ଉତ୍ପାଦନ ପରିବେଶକୁ ନଷ୍ଟ କରିଦେବ ଯଦି ନିୟୋଜନ କରାଯାଏ ଏବଂ ପରୀକ୍ଷା ପରିବେଶ ସ୍ଥିତବାନ ଉତ୍ପାଦନ ଡାଟାବେସ ଉପରେ ବିନା ଅପଗ୍ରେଡ୍‌ରେ ଚାଲିନପାରେ।  ତଥାପି, ଥରେ ଚେଷ୍ଟା କରି ଦେଖନ୍ତୁ JIC.  କିଛିନହେଲେ, ବଦଳ କାର୍ଯ୍ୟଟିକୁ କରନ୍ତୁ ଏବଂ ତାପରେ ଆପ୍‌ ସେଟିଂ ଏବଂ ସଂଯୋଗ ଷ୍ଟ୍ରିଙ୍ଗଗୁଡ଼ିକ ଆଶାକରାଯାଇଥିବା ଫଳାନୁସାରେ ହୋଇଛି କି ନାହିଁ ତାହାକୁ ନିଶ୍ଚିତ କରିବା ପାଇଁ ଉତ୍ପାଦନ ୱେବ ଆପ୍‌କୁ ଯାଞ୍ଚ କରନ୍ତୁ।  ପ୍ରକୃତରେ ସେଗୁଡ଼ିକୁ ଚିତ୍ର ୫ ରେ ଦର୍ଶାଯାଇଛି।

 

ଚିତ୍ର ୫, ଷ୍ଟିକି ସ୍ଲଟ୍‌ସ Azure ଆପ୍‌ ସର୍ଭିସ ୱେବ ଆପ୍‌ ଆପ୍‌ ସେଟିଂସ୍‌ ଏବଂ ସଂଯୋଗ ସେଟିଂସ୍‌

ମୂଲ୍ୟଟି ଆଶାନୁରୂପେ ରହିଥାଏ ଏବଂ MoveWhenSwapped ପରୀକ୍ଷାରୁ ଉତ୍ପାଦନ ୱେବ ଆପ୍‌ ପଦ୍ଧତିକୁ ବଦଳ ହୋଇଥାଏ।  ଏହା ମଧ୍ଯ ମନେରଖନ୍ତୁ ଯେ MoveWhenSwapped ସ୍ଥାନାନ୍ତରିତ ହୋଇଥାଏ, ଯାହା ଅର୍ଥ ହେଉଛି ଏହା ପରୀକ୍ଷା ୱେବ ଆପ୍‌ ରେ ରହିନଥାଏ।  ଏହା ଅର୍ଥ, ଯଦି ଆପଣ ନିଜର ୱେବ ଆପ୍‌କୁ ବଦଳାଇବାକୁ ଚାହାନ୍ତି ଏବଂ ସଂଯୋଗ ଷ୍ଟ୍ରିଙ୍ଗକୁ ଅପରିବର୍ତ୍ତିତ ରଖିବା ପାଇଁ ଚାହାନ୍ତି, ତେବେ ସ୍ଲଟ ସେଟିଂ ଚେକ୍‌ ବକ୍ସକୁ ବାଛିକରି ସେଟିଂକୁ ଷ୍ଟିକି ଭାବରେ ଚିହ୍ନଟ କରିରଖନ୍ତୁ ଏବଂ ତାପରେ ଆପଣଙ୍କ କାର୍ଯ୍ୟ ଶେଷ।

ଆମେ ଟିକେ ଗଭୀରତାକୁ ଯିବା

ମୋର କିଛି ପ୍ରଶ୍ନ ଅଛି:

  • ମୁଁ କିପରି ସଂଯୋଗ ଷ୍ଟ୍ରିଙ୍ଗ ଏବଂ ଆପ୍‌ ସେଟିଂସ୍‌କୁ ମୋର କୋଡ୍‌ରୁ ପାଇପାରିବି
  • କଣ ହେବ ଯଦି ମୋର web.config ଫାଇଲରେ ଏକ ସଂଯୋଗ ଷ୍ଟ୍ରିଙ୍ଗ ଥାଏ ଏବଂ କଣ ହେବ ଯଦି ଉଭୟ ଥାଏ

ଚାଲନ୍ତୁ ସେହି ପ୍ରଶ୍ନଗୁଡ଼ିକର ଉତ୍ତର ଦେବା।

ମୁଁ କିପରି ସଂଯୋଗ ଷ୍ଟ୍ରିଙ୍ଗ ଏବଂ ଆପ୍‌ ସେଟିଂସ୍‌କୁ ମୋର କୋଡ୍‌ରୁ ପାଇପାରିବି

ସଂଯୋଗ ଷ୍ଟ୍ରିଙ୍ଗକୁ ପୋର୍ଟାଲରେ ବିନ୍ୟାସିତ ମୂଲ୍ୟରୁ ଅଥବା web.config ରୁ ପାଇବା ପାଇଁ ଆପଣ ନିମ୍ନଲିଖିତ କୋଡ୍‌କୁ ବ୍ୟବହାର କରନ୍ତୁ।

ConfigurationManager.ConnectionStrings["StickySlotConnectionString"]?.ConnectionString;

 
ସଂଯୋଗ ଷ୍ଟ୍ରିଙ୍ଗର ନାମ ପ୍ରଦାନ କରନ୍ତୁ ଏବଂ ତାହାର ମୂଲ୍ୟ ଫେରିପାଇବେ।

ଆପ୍‌ ସେଟିଂ ମୂଲ୍ୟ ପାଇବା ପାଇଁ, ନିମ୍ନଲିଖିତକୁ ବ୍ୟବହାର କରନ୍ତୁ।

ConfigurationManager.AppSettings["STICKYSLOT"];

 
କଣ ହେବ ଯଦି ମୋର web.config ଫାଇଲରେ ଏକ ସଂଯୋଗ ଷ୍ଟ୍ରିଙ୍ଗ ଥାଏ ଏବଂ କଣ ହେବ ଯଦି ଉଭୟ ଥାଏ

ପ୍ରକୃତରେ କିଛି ହେବ ନାହିଁ, ଯେପର୍ଯ୍ୟନ୍ତ ସେହି ନାମଟି ଅନନ୍ୟ ହୋଇଥିବ, ଏବଂ ସେହି ମୂଲ୍ୟଟି web.config  ରେ ଥିବ, ତେବେ ତାହା ମିଳିଯିବ ଏବଂ ଯଦି ସେହି ମୂଲ୍ୟଟି ପୋର୍ଟାଲରେ ଥିବ, ତେବେ ତାହା ମଧ୍ଯ ମିଳିଯିବ।  ଧ୍ୟାନଦିଅନ୍ତୁ ଯେପରି ଆପଣଙ୍କ ପାଖରେ ସମାନ ନାମ ବିଶିଷ୍ଟ ସଂଯୋଗ ଷ୍ଟ୍ରିଙ୍ଗ କିମ୍ବା ଆପ୍‌ ସେଟିଂ ନଥିବ।  ଯଦି ଏହା ଘଟେ, ତେବେ, ମୁଁ ପରୀକ୍ଷା କରିବା ସମୟରେ, ପୋର୍ଟାଲରେ ବିନ୍ୟାସିତ ମୂଲ୍ୟଗୁଡ଼ିକ କୋଡ୍‌ ଦ୍ୱାରା ମିଳିଥିବା ମୂଲ୍ୟ ସହିତ ସମାନ ହେବ।  ତେଣୁ, ଯଦି ଆପଣଙ୍କ ପାଖରେ StickySlotConnectionString ନାମକ ସଂଯୋଗ ଷ୍ଟ୍ରିଙ୍ଗ ଉଭୟ ପୋର୍ଟାଲ ଏବଂ web.config ରେ ଥାଏ, ତେବେ web.config ରେ କରାଯାଉଥିବା ପରିବର୍ତ୍ତନଗୁଡ଼ିକୁ ଅଗ୍ରାହ୍ୟ ହେବ।​​

​​​
​​​​​​​​​​​​​​ ​​​​​
This site uses Unicode and Open Type fonts for Indic Languages. Powered by Microsoft SharePoint
©2017 Microsoft Corporation. All rights reserved.