spring-cloud-contract
stubr
spring-cloud-contract | stubr | |
---|---|---|
1 | 2 | |
703 | 58 | |
0.6% | - | |
9.2 | 5.6 | |
about 1 month ago | 23 days ago | |
Java | Rust | |
Apache License 2.0 | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
spring-cloud-contract
-
stubr: Wiremock in Rust
A few weeks ago I was another victim of the RIIR (Rewrite It In Rust) agenda. I got inspired by the awesome wiremock-rs. At first sight, I saw it hadn't the ability to start a mock server from json stubs. That's the kind of functionality I'm intensively using in my daily job of Java developer ; may it be for contract testing with Spring Cloud Contract or for mocking external services in integration (sometimes perf) tests.
stubr
-
Bringing in contract testing !
Stubr is producer-driven. Why ? One one hand, being producer-driven allows you to write a contract only once, on the producer side and to reuse it. On the other hand, consumer-driven, while being more flexible, requires the contract to be written for each consumer. It prevents reuse and is more verbose to write and cumbersome to maintain as it requires some complex CI workflows to test the latest consumer contracts on a live instance of the producer.
-
stubr: Wiremock in Rust
I also set up an incremental benchmark to track down progresses made in each version of stubr. I also did a (very naive) benchmark of stubr against the original Java Wiremock here. Though too simple and not very objective (Wiremock not optimized at all), it still highlights a mean cpu usage divided by 4 and a mean memory usage divided by 100+ more a slightly better and steadier throughput.
What are some alternatives?
microservices-java-grpc - Java microservices with REST, and gRPC using BFF pattern. This repository contains backend services. Everything is dockerized and ready to "Go" actually "Java" :-)
wiremock-rs - HTTP mocking to test Rust applications.
Springy-Store-Microservices - Springy Store is a conceptual simple μServices-based project using the latest cutting-edge technologies, to demonstrate how the Store services are created to be a cloud-native and 12-factor app agnostic. Those μServices are developed based on Spring Boot & Cloud framework that implements cloud-native intuitive, design patterns, and best practices.
spring-cloud-kubernetes - Kubernetes integration with Spring Cloud Discovery Client, Configuration, etc...
apollo - Apollo is a reliable configuration management system suitable for microservice configuration management scenarios.
spring-cloud-vault - Configuration Integration with HashiCorp Vault
hazelcast-kubernetes - Kubernetes Discovery for Hazelcast
SpringCloud-Learning - Spring Cloud基础教程,持续连载更新中
clap-rs - A full featured, fast Command Line Argument Parser for Rust