JCache (JSR 107) হলো একটি ক্যাশিং API স্ট্যান্ডার্ড যা Java প্ল্যাটফর্মের জন্য ডিফাইন করা হয়েছে। এটি ডিস্ট্রিবিউটেড এবং লোকাল ক্যাশ ম্যানেজমেন্টের জন্য একটি সাধারণ ইন্টারফেস প্রদান করে। Hazelcast JCache API সমর্থন করে, যা আপনাকে Hazelcast-কে JCache স্ট্যান্ডার্ডের মাধ্যমে ব্যবহার করতে সাহায্য করে। এই কনফিগারেশনের মাধ্যমে আপনি Hazelcast ক্যাশিং-এর শক্তিশালী সুবিধাগুলি JCache API এর সাহায্যে উপভোগ করতে পারবেন।
Hazelcast এ JCache (JSR 107) কনফিগারেশন করতে হলে নিম্নলিখিত পদক্ষেপগুলি অনুসরণ করতে হবে।
প্রথমে, আপনাকে Hazelcast-এর জন্য JCache কনফিগারেশন উপলব্ধ করতে হবে। Maven প্রকল্পে Hazelcast এবং JCache এর জন্য নির্দিষ্ট ডিপেনডেন্সি যুক্ত করতে হবে।
Maven Dependency Example:
<dependency>
<groupId>com.hazelcast</groupId>
<artifactId>hazelcast</artifactId>
<version>5.0</version>
</dependency>
<dependency>
<groupId>javax.cache</groupId>
<artifactId>javax.cache-api</artifactId>
<version>1.1.1</version>
</dependency>
<dependency>
<groupId>com.hazelcast</groupId>
<artifactId>hazelcast-jcache</artifactId>
<version>5.0</version>
</dependency>
এখানে hazelcast-jcache
ডিপেনডেন্সি Hazelcast এবং JCache ইন্টিগ্রেশনের জন্য প্রয়োজন।
Hazelcast JCache API ব্যবহার করতে হলে, আপনাকে Hazelcast কনফিগারেশন ফাইল বা কোডের মাধ্যমে CacheManager তৈরি করতে হবে। নিচে এর একটি উদাহরণ দেওয়া হলো:
import com.hazelcast.cache.Cache;
import com.hazelcast.cache.CacheManager;
import com.hazelcast.cache.impl.HazelcastCachingProvider;
import javax.cache.Cache;
import javax.cache.CacheException;
import javax.cache.configuration.MutableConfiguration;
import javax.cache.spi.CachingProvider;
import javax.cache.CacheManager;
public class JCacheExample {
public static void main(String[] args) {
// Caching Provider তৈরি
CachingProvider cachingProvider = HazelcastCachingProvider.createCachingProvider();
// CacheManager তৈরি
CacheManager cacheManager = cachingProvider.getCacheManager();
// Cache কনফিগারেশন তৈরি
MutableConfiguration<String, String> config = new MutableConfiguration<>();
config.setTypes(String.class, String.class); // Key এবং Value টাইপ
config.setStoreByValue(false); // Value বাই-রেফারেন্স বা বাই-ভ্যালু হবে
// Cache তৈরি করা
Cache<String, String> cache = cacheManager.createCache("myCache", config);
// Cache ব্যবহার
cache.put("key1", "value1");
System.out.println("Cache Value: " + cache.get("key1")); // "value1"
// Cache বন্ধ করা
cacheManager.close();
}
}
এখানে:
MutableConfiguration
ব্যবহার করে আপনি ক্যাশের কনফিগারেশন নির্ধারণ করতে পারবেন (যেমন কী-ভ্যালু টাইপ, স্টোর বাই-ভ্যালু বা বাই-রেফারেন্স ইত্যাদি)।Hazelcast এর সাথে JCache ব্যবহার করতে হলে, আপনাকে HazelcastCacheManager ব্যবহার করতে হবে, যা Hazelcast ক্যাশে অ্যাক্সেস করতে সহায়ক। এইভাবে আপনি Hazelcast ক্যাশ এবং JCache API এর মাধ্যমে একই ক্যাশ পরিচালনা করতে পারবেন।
import com.hazelcast.cache.Cache;
import com.hazelcast.cache.HazelcastCacheManager;
import com.hazelcast.core.Hazelcast;
import com.hazelcast.core.HazelcastInstance;
import javax.cache.Cache;
import javax.cache.CacheManager;
import javax.cache.configuration.MutableConfiguration;
public class HazelcastJCacheExample {
public static void main(String[] args) {
// Hazelcast instance তৈরি করা
HazelcastInstance hzInstance = Hazelcast.newHazelcastInstance();
// Hazelcast CacheManager তৈরি করা
HazelcastCacheManager cacheManager = (HazelcastCacheManager) hzInstance.getCacheManager();
// Cache কনফিগারেশন তৈরি করা
MutableConfiguration<String, String> config = new MutableConfiguration<>();
config.setTypes(String.class, String.class);
// Cache তৈরি করা
Cache<String, String> cache = cacheManager.createCache("myHazelcastCache", config);
// Cache ব্যবহার
cache.put("key1", "value1");
System.out.println("Hazelcast Cache Value: " + cache.get("key1")); // "value1"
// Cache বন্ধ করা
cacheManager.close();
}
}
এই উদাহরণে, আমরা Hazelcast ক্লাস্টারে JCache API ব্যবহার করে ক্যাশ তৈরি করেছি এবং তার মধ্যে ডেটা যোগ/পড়ে দেখেছি।
JCache (JSR 107) API Hazelcast ক্যাশিং সমাধানগুলির সাথে ইন্টিগ্রেশন করার একটি স্ট্যান্ডার্ড পদ্ধতি। Hazelcast জাভা প্ল্যাটফর্মের জন্য একটি অত্যন্ত স্কেলেবল ক্যাশিং সিস্টেম প্রদান করে যা জাভা অ্যাপ্লিকেশনে ইন-মেমরি ক্যাশিং কার্যকারিতা সক্ষম করে। Hazelcast-এর মাধ্যমে JCache কনফিগারেশন ও ব্যবহারে আপনি দ্রুত পারফরম্যান্স এবং স্কেলেবিলিটি অর্জন করতে পারেন।
common.read_more