MicroStream + Helidon高效能Java持久層
MicroStream是行業中真正的遊戲規則改變者。如果你想建立真正高效能的微服務,在真正高壓的環境中工作,那麼Helidon + MicroStream是一個非常好的選擇!它不僅易於設定和使用,而且現在已完全整合。
MicroStream 取代了重量級的 JPA,並允許您儲存和部分載入任何 Java 物件圖或子圖。它還提供微秒響應時間和超高吞吐量以及最小延遲。現在,您可以將 MicroStream 與 Helidon 2.4 結合使用來建立超快速的記憶體中資料庫應用程式和微服務。
MicroStream提供高效能的 Java 原生物件圖永續性。
MicroStream 徹底改造了 Java 的序列化機制,提供了將部分載入的物件直接儲存到磁碟、資料庫或雲物件儲存的能力。只需選擇正確的商店經理。
Helidon現在已經完全整合了這項技術。
MicroStream + Helidon MP
MicroStream 現在與 Helidon 完全整合,這意味著 MicroStream 元件可以直接從 Helidon 配置讀取其所有配置。
有一組特殊的註釋可以注入儲存管理器:
首先,新增 Maven 依賴項:
<dependency> <groupId>io.helidon.integrations.microstream</groupId> <artifactId>helidon-integrations-microstream-cdi</artifactId> </dependency> |
然後你可以使用 MicroStream 支援:
@Inject public GreetingProvider(@MicrostreamStorage(configNode = "one.microstream.storage.greetings") EmbeddedStorageManager storage) { super(); this.storage = storage; greetingMessages = (List<String>) storage.root(); if (greetingMessages == null) { greetingMessages = new ArrayList<>(); storage.setRoot(greetingMessages); storage.storeRoot(); addGreeting("Hello"); } } |
它從microprofile-config.properties檔案中讀取配置。
one.microstream.storage.greetings.storage-directory=./greetingsStorage |
你可以用這個例子自己試試:案例原始碼
MicroStream 快取
MicroStream 提供了自己的 JSR107 實現——快取支援。
新增此 Maven 依賴項時可用:
<dependency> <groupId>io.helidon.integrations.microstream</groupId> <artifactId>helidon-integrations-microstream-cdi</artifactId> </dependency> |
然後我們可以修改我們的 Greetings 應用程式來為我們的問候使用快取:
Cache<String, String> greetingsCache; @Inject public GreetingsProvider(@MicrostreamCache(configNode= "one.microstream.cache", name = "greetingsCache") Cache<String, String> cache) { super(); this.greetingsCache = cache; } public String get(String key) { return greetingsCache.get(key); } public void add(String key, String responseObject) { greetingsCache.put(key, responseObject); } |
有一個特殊的@MicrostreamCache註釋將從microprofile-config.properties讀取所有快取配置:
Microstream cache config one.microstream.cache.storage.storage-directory = ./greetingsCache one.microstream.cache.keyType = java.lang.String one.microstream.cache.valueType = java.lang.String one.microstream.cache.readThrough = true one.microstream.cache.writeThrough = true |
相關文章
- Java資料持久層Java
- Java 持久層框架之 MyBatisJava框架MyBatis
- Java持久層框架Mybatis入門Java框架MyBatis
- Spring 持久層整合Spring
- Oracle推出用於微服務的Java庫: HelidonOracle微服務Java
- 在Java SE下測試CDI Bean和持久層 - relationJavaBean
- 河青的持久層框架hqbatis框架BAT
- Oracle釋出開源的輕量級 Java 微服務框架 HelidonOracleJava微服務框架
- 甲骨文推出的 Java 微服務框架 Helidon:輕量簡單Java微服務框架
- MyBatis--優秀的持久層框架MyBatis框架
- 持久層Mybatis3底層原始碼分析,原理解析MyBatisS3原始碼
- 自己動手寫一個持久層框架框架
- RxCache 整合 Android 的持久層框架 greenDAO、RoomAndroid框架OOM
- 使用db-scheduler實現高效能持久佇列佇列
- Java emoji持久化mysqlJava持久化MySql
- 使用 Java 持久化 APIJava持久化API
- iOS的高效能、高實時性key-value持久化元件iOS持久化元件
- RocketMQ高效能之底層儲存設計MQ
- Binder Java層分析Java
- Java學習筆記:Redis的持久化Java筆記Redis持久化
- 使用Spring Data JPA實現持久化層的簡化開發Spring持久化
- 用一個專案把控制層、業務層、持久層說明白了,每一句話都講的很清楚
- 閉關修煉180天--手寫持久層框架(mybatis簡易版)框架MyBatis
- 高效能的Redis之物件底層實現原理詳解Redis物件
- java高效能反射及效能對比Java反射
- 實現Java集合迭代的高效能Java
- 編寫高效能的Java程式碼Java
- Java高效能本地快取框架CaffeineJava快取框架
- java自動生成實體類(帶註釋)和controller層,service層 dao層 xml層JavaControllerXML
- Java中的四層框架Java框架
- Redis資料持久化—RDB持久化與AOF持久化Redis持久化
- 14個高效能Java永續性技巧Java
- Android訊息機制,從Java層到Native層剖析AndroidJava
- java學習----底層原理一Java
- java併發系列——底層CPUJava
- SpringBoot2 基礎案例(09):整合JPA持久層框架,簡化資料庫操作Spring Boot框架資料庫
- JAVA樹形結構 通用程式碼(高效能)Java
- 雲原生時代高效能Java框架—Quarkus(一)Java框架