标签: microstream

MicroStream(反)序列化如何工作?

我想知道 MicroStream 的序列化是如何详细工作的。既然它被描述为“超快”,它必须依赖于代码生成,对吗?还是基于反射?
与 Protobuf-Serialization 相比,它的性能如何,Protobuf-Serialization 依赖于直接读取 java 字段并将它们写入字节缓冲区的代码生成,反之亦然。
在大规模序列化​​对象时,使用反射会大大降低性能,不是吗?

我正在寻找一种快速的方法来传输和保存多人游戏的对象,并且每一毫秒都很重要。:)

提前致谢!

PS:由于我没有足够的声望,我无法创建“微流”标签。https://microstream.one/

java serialization deserialization microstream

2
推荐指数
1
解决办法
391
查看次数

spring bean 配置中的 microstream EmbeddedStorageManager

我想将 microstream 的 EmbeddedStorageManager 配置为 Spring Boot 应用程序(2.5.0)中的 bean。

@Configuration
public class MicrostreamConfig {

    @Value("${microstream.store.location}")
    String location;

    @Bean
    DataRoot dataRoot() {
        DataRoot dataRoot = new DataRoot();
        dataRoot.setProjectList(new ArrayList<>());
        return dataRoot;
    }
    
    @Bean
    public EmbeddedStorageManager storageManager() {

        EmbeddedStorageManager storageManager = EmbeddedStorage.start(
                dataRoot(),          // root object
                Paths.get(location) // storage directory
        );
        return storageManager;
    }
}
Run Code Online (Sandbox Code Playgroud)

并将其注入存储库类中

@Component
public class DataRepository {

    @Autowired
    private DataRoot dataRoot;

    @Autowired
    private EmbeddedStorageManager storageManager;

    public void addProject(Project project) {
        dataRoot.getProjectList().add(project);
        storageManager.storeAll(dataRoot.getProjectList());
    }

    public List<Project> getProjectList() {
        return …
Run Code Online (Sandbox Code Playgroud)

java spring-boot microstream

2
推荐指数
1
解决办法
523
查看次数