Open kelly-ye opened 3 years ago
Thanks @kelly-ye to bring these suggestions. It could be better if you can describe them in English and I think it could be much helpful for more people.
Spring Boot components are used in the following places
In Actor mode (saga)
About Channel Model(redis queue or kafka queue)
In DB mode(saga or tcc)
Alpha UI
Use spring boot Thymeleaf for UI 2.Use spring boot WebSocket for push indicator data to the Alpha UI
Non-state machine mode uses spring boot data jpa
The spring cloud component is also used to realize the registration of some third-party registration centers, eureka, nacos
Thank you @zhfeng for your reply,
Thank you @zhfeng for your reply,
- How to handle the asynchronous invoking of the Saga?
I think it depends on the async framwork you use, such as java concurrency future, vertx, etc. I can not find the discussion on the github issues but maybe on the gitter, @WillemJiang can you recall ?
- In Akka mode, whether the actor status can be persisted to the database. Currently, the actor status is persisted to the Redis. However, if the Redis is unreliable, data will be lost, which may cause the actor to fail to be restored.
I think there is an issue for the redis cluster and persistent.
@zhfeng I guess you are looking for this: https://lists.apache.org/thread.html/33aa0d9827cf10933796971ebe20cd47205fac8011fba32c5d03a222%40%3Cdev.servicecomb.apache.org%3E
Thanks @chanjarster and yeah, this is exactly I want to work out. OK, it looks like a good opportunity to revisit our saga framework to support the async or reactive programming model at this time.
1、springboot框架还是比较大的,想只基于spring开发,是否可以剥离springboot框架 2、使用的中间件,如:Kafka、缓存、数据库是否可以提供接口,由业务方进行适配实现接口进行对接 3、当前很多场景是通过异步回调的方式来判断分支事务是否结束,不是同一个线程,怎么在回调方法里面来告诉alpha事务的结果 4、一个分支事务会增加时延几十毫秒甚至上百毫秒,性能需要再优化