স্প্রিং ক্লাউড টাস্ক (Spring Cloud Task) হলো এক-বার চলমান (short-lived) মাইক্রোসার্ভিস বা জব (Job) তৈরি করার জন্য একটি ফ্রেমওয়ার্ক। এটি স্প্রিং বুটের (Spring Boot) উপর ভিত্তি করে তৈরি এবং ডেটা প্রসেসিং, ব্যাচ প্রসেসিং, বা যেকোনো সাময়িক টাস্ক সম্পাদনের জন্য উপযুক্ত।
স্প্রিং ক্লাউড টাস্ক-এর বৈশিষ্ট্য
- শর্ট-লিভড টাস্ক: টাস্ক সম্পন্ন হওয়ার পর স্বয়ংক্রিয়ভাবে অ্যাপ্লিকেশন বন্ধ হয়ে যায়।
- ইন্টিগ্রেশন: এটি সহজেই স্প্রিং বুট ব্যাচ (Spring Batch) এবং স্প্রিং ক্লাউড ডেটা ফ্লো (Spring Cloud Data Flow)-এর সাথে ইন্টিগ্রেট করা যায়।
- টাস্ক মনিটরিং: টাস্ক এক্সিকিউশনের স্ট্যাটাস, মেটাডেটা এবং লগ ম্যানেজমেন্ট সরবরাহ করে।
- পোর্টেবল: স্প্রিং ক্লাউড টাস্ক সহজে ক্লাউড পরিবেশে ডিপ্লয় করা যায়।
উদাহরণ: স্প্রিং ক্লাউড টাস্ক তৈরি
প্রজেক্ট সেটআপ
স্প্রিং ইনিশিয়ালাইজার (Spring Initializr) থেকে একটি স্প্রিং বুট প্রজেক্ট তৈরি করুন। প্রয়োজনীয় ডিপেন্ডেন্সি যুক্ত করুন:
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-task</artifactId>
</dependency>
টাস্ক ক্লাস তৈরি
@EnableTask অ্যানোটেশন ব্যবহার করে একটি স্প্রিং ক্লাউড টাস্ক তৈরি করুন:
import org.springframework.boot.CommandLineRunner;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.task.configuration.EnableTask;
@SpringBootApplication
@EnableTask
public class SpringCloudTaskApplication implements CommandLineRunner {
public static void main(String[] args) {
SpringApplication.run(SpringCloudTaskApplication.class, args);
}
@Override
public void run(String... args) {
System.out.println("Spring Cloud Task is running!");
System.out.println("Arguments: ");
for (String arg : args) {
System.out.println(arg);
}
}
}
অ্যাপ্লিকেশন প্রোপার্টিজ কনফিগারেশন
application.properties ফাইলে স্প্রিং ক্লাউড টাস্কের জন্য প্রাথমিক কনফিগারেশন যোগ করুন:
spring.application.name=spring-cloud-task-example
spring.cloud.task.closecontext.enabled=true
টাস্ক চালানো
ম্যাভেন বা গ্র্যাডল ব্যবহার করে অ্যাপ্লিকেশন চালান:
mvn spring-boot:run -Dspring-boot.run.arguments="arg1 arg2"
আউটপুটে আপনি নিম্নলিখিত দেখতে পাবেন:
Spring Cloud Task is running!
Arguments:
arg1
arg2
স্প্রিং ক্লাউড টাস্ক-এর ব্যবহার
- ডেটা প্রসেসিং: ডেটা মাইগ্রেশন, ফাইল প্রক্রিয়াজাতকরণ ইত্যাদির জন্য।
- ব্যাচ জব: স্প্রিং ব্যাচের মাধ্যমে ডেটা ব্যাচ প্রসেসিং।
- সিস্টেম রক্ষণাবেক্ষণ: সাময়িক রক্ষণাবেক্ষণের কাজ বা টুলস।
স্প্রিং ক্লাউড টাস্ক একটি সংক্ষিপ্ত এবং কার্যকর উপায় প্রদানের মাধ্যমে ডেভেলপারদের মাইক্রোসার্ভিস জব সহজে সম্পন্ন করতে সাহায্য করে। এটি স্প্রিং ক্লাউড ডেটা ফ্লো-এর মাধ্যমে বৃহৎ স্কেল অ্যাপ্লিকেশন পরিচালনার একটি শক্তিশালী উপাদান।
Read more