| Aspec | Unit | Contract | API |
|---|---|---|---|
| Way to execute | local | local | environment |
| Feedback time | fast | medium | slow |
| Setup complexity | low | medium | high |
| Cross-team collaboration | no | yes | yes |
| Aspect | Pact | Spring Cloud Contract |
|---|---|---|
| Deployment / Administration / Hosting | - Pactflow - paid - Broker - free a |
| ๐ broker | |
| ๐ consumer | |
| ๐ order | |
| ๐ v1 | |
| ๐ teamOne | |
| ๐ .gitlab-ci.yml | |
| ๐ 200.json | |
| ๐ teamTwo | |
| ๐ .gitlab-ci.yml | |
| ๐ 200.json |
| Stage | Phase | Name | Goal | Responsibilites | Outcome | Checlist | | ----- | ----- | -------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------ | ----------------------- | ----------------------------------------------------------------------------------------------------------------------------------------
| Parameters | ETL | ELT |
|---|---|---|
| process | data is transformed at staging server and then transferred to Datawarehouse DB | data remains in the DB of the Datawarehouse |
| code usage | compute-intensive transformations and for small amount of data | high amounts of data |
| transformation | done in server/staging area |
| Features | RAML | OAS |
|---|---|---|
| popularity | less popular | more popular and widely used |
| backed by | Mulesoft | OpenAPI Initiative, which is a consortium of industry leaders and experts |
| expressiveness | more expressive and flexible | less due to lack of annotations, overlays, extensions, libraries |
| interoperability | less compatable | more interoperable and compatible |
| maintenance | relatively less updates | more actively maintained and updated with a clear roadmap and vision for its future |
| focused on | modeling APIs |
| Type | Threads | Stop-the-world | Concurrent | Throughput | Latency | Memory | Fragmentation | Tuning | JVM arguments |
|---|---|---|---|---|---|---|---|---|---|
| Serial | Single | Yes | No | Low | High | Low | Low | Easy | -XX:+UseSerialGC |
| Parallel | Multiple | Yes | No | High | High | High | Low | Moderate | -XX:+UseParallelGC |
| CMS | Multiple | Yes (briefly) | Yes (mostly) | Moderate | Low | Moderate | High | Difficult | -XX:+UseConcMarkSweepGC |
| G1 | Multiple | Yes (briefly) | Yes (mostly) | High | Low | High | Low | Moderate | -XX:+UseG1GC |
| ZGC | Multiple | No | Yes (fully) | High | Ultra-low | Very high | Low | Easy | -XX:+UseZGC |
| Feature | NPM | YARN | PNPM |
|---|---|---|---|
| Speed | Slow | Fast | Faster |
| Disk Space | High | Low | Lower |
| Security | Low | High | Higher |
| Compatibility | High | Medium | Medium |
| Popularity | High | Medium | Low |
| Ecosystem | Rich | Medium | Medium |
| Metric | NPM | YARN | PNPM |
|---|---|---|---|
| Installation time (cold cache) | 67.4s | 47.6s | 32.3s |
| Installation time (warm cache) | 9.1s | 4.9s | 4.4s |
| Disk space used | 237 MB | 175 MB | 39 MB |
| Package Manager | Workspaces | Lockfiles | Scripts | Hooks | Audit |
|---|---|---|---|---|---|
| NPM | Yes | Yes | Yes | No | Yes |
| YARN | Yes | Yes | Yes | Yes | Yes |
| PNPM | Yes | Yes | Yes | Yes | No |