tech-matrix
Provides access to a reference document about Monopoly's 'tech-matrix'. It's useful for looking up specific technologies within that context.
What it does
This tool helps choose the right technology for different parts of a software project, like databases, messaging systems, or API protocols. It provides tables and a guide to aid decision-making.
When to use it
- ✓When starting a new software project and needing to select technologies.
- ✓When evaluating if the current technology is still the best fit.
- ✓When comparing different database or messaging system options.
Example of what to ask your AI
“Which database is best for storing geographic location data?”
Want more? Open the sections below.
How to use
The easiest way: copy the message below and paste it into Claude, ChatGPT, Cursor or any AI. It reads the skill and follows the instructions.
Skill link
Ready-to-paste message
How it works
The tool compares popular technologies in categories like databases, caching, and message queues. It shows what each is good for, when to avoid it, and its scaling limits, helping you make an informed choice.
Installation
Easiest way: copy the skill link and paste it into Claude, ChatGPT or Cursor asking it to follow the instructions.
In the terminal (Claude Code, Codex, Cursor), in your project folder:
npx skills add sickn33/agentic-awesome-skills --skill tech-matrixOr download just the file:
curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/monopoly/tech-matrix/SKILL.md -o SKILL.mdTechnical content (original SKILL.md)
Original text by the author, straight from GitHub.
MONOPOLY — Technology Decision Matrix
When to Use
- Use this skill when the task matches this description: Reference document for monopoly tech-matrix.
Table of Contents
- Database Selection
- Cache Selection
- Message Queue / Event Streaming
- API Protocol
- Search Engine
- Object Storage
- Container Orchestration
- Load Balancer
- Observability Stack
- CDN
1. Database Selection
Relational (SQL)
| Database | Best For | Avoid When | Scale Ceiling |
|---|---|---|---|
| PostgreSQL | Complex queries, JSONB, GIS, strong consistency, most default use cases | Ultra-high write throughput (>100K writes/s) | ~10TB single node; use Citus for horizontal |
| MySQL / MariaDB | Read-heavy apps, legacy systems, WordPress/Drupal ecosystem | Complex queries, full ACID at scale | ~10TB; use Vitess for sharding |
| CockroachDB | Global distributed SQL, geo-partitioning, multi-region | Simple single-region apps (overkill) | Petabyte-scale |
| PlanetScale | MySQL-compatible, serverless, branch-based workflow | Complex JOINs (foreign keys removed by design) | Very high — Vitess based |
| Amazon Aurora | AWS-native apps, managed PostgreSQL/MySQL, high availability | Non-AWS environments | Up to 128TB, 15 replicas |
NoSQL
| Database | Best For | Avoid When | Scale Ceiling |
|---|---|---|---|
| MongoDB | Flexible schema, document model, prototyping | Financial transactions requiring ACID | Petabyte-scale with sharding |
| DynamoDB | Key-value at massive scale, AWS-native, serverless, predictable latency | Complex queries, ad-hoc analytics, JOINs | Unlimited (AWS-managed) |
| Cassandra | Write-heavy, time-series, wide-column, geographically distributed | Read-heavy with complex queries | Petabyte-scale; used at Apple, Netflix |
| Redis | Cache, sessions, leaderboards, pub/sub, rate limiting | Primary data store for complex models | ~1TB per node; cluster for more |
| Elasticsearch | Full-text search, log aggregation, analytics | Primary database (durability risk) | Petabyte-scale with clusters |
| InfluxDB | Time-series metrics, IoT, monitoring data | General-purpose data | Very high write throughput |
| Neo4j | Graph data, social networks, recommendation engines, fraud detection | Non-graph data (overhead not worth it) | Billions of nodes |
Decision Framework
Is your data relational (joins, foreign keys, transactions)?
YES → Start with PostgreSQL
NO → Continue below
Is your primary access pattern key-value?
YES, need extreme scale → DynamoDB or Cassandra
YES, need speed/cache → Redis
Is your data document-shaped (nested, flexible schema)?
YES → MongoDB
Is it time-series (metrics, logs, IoT)?
YES → InfluxDB or TimescaleDB
Is it graph (relationships are the data)?
YES → Neo4j
Is it search?
YES → Elasticsearch / OpenSearch
2. Cache Selection
| Technology | Best For | Max Single Node | Cluster Support |
|---|---|---|---|
| Redis | Sessions, leaderboards, pub/sub, complex data structures, Lua scripting | ~1TB RAM | Yes (Redis Cluster, Redis Sentinel) |
| Memcached | Simple key-value, multi-threaded, large object cache | ~64GB RAM | Yes (client-side sharding) |
| Varnish | HTTP reverse proxy cache, full-page caching | RAM bound | Limited |
| CloudFront / CDN | Static assets, edge caching globally | N/A (distributed) | Built-in global distribution |
Default recommendation: Redis — more features, better ecosystem, active development.
Use Memcached only when: you need multi-threading for CPU-bound caching workloads and don't need data structures beyond string.
3. Message Queue / Event Streaming
| Technology | Model | Best For | Throughput | Retention |
|---|---|---|---|---|
| Apache Kafka | Log-based streaming | Event sourcing, high-throughput pipelines, replay, audit | Millions msg/s | Days to forever |
| RabbitMQ | AMQP message broker | Task queues, RPC, routing, fanout | 50K–100K msg/s | Until consumed |
| AWS SQS | Managed queue | AWS-native, simple task queue, serverless | Very high (managed) | Up to 14 days |
| AWS SNS | Pub/sub notification | Fan-out to many subscribers (email, SMS, Lambda, SQS) | Very high (managed) | No retention |
…
FAQ
What is a relational database?
It's a type of database that organizes data into tables with rows and columns, like a spreadsheet, and allows you to link information between them.
What is a NoSQL database?
It's a type of database that doesn't use the traditional table format. It's more flexible and good for large data volumes or data with varied structures.
What is an 'API protocol'?
It's a set of rules that defines how different software programs can communicate with each other, like a common language for exchanging information.
Details
Original description by the author
Reference document for monopoly tech-matrix.
Popularity
- GitHub stars
- 48k
- Ranking position
- #3622
- License
- MIT
- Updated
- 10/15/2026
Comments
- …
More skills from this repository
00-andruia-consultant
Helps your agent start or improve AI projects. It analyzes code, suggests tools, and creates action plans in Spanish.
sickn33/agentic-awesome-skills
007
Lets your agent perform security audits and threat modeling. It's useful for protecting projects against attacks and vulnerabilities.
sickn33/agentic-awesome-skills
10-andruia-skill-smith
Helps your agent create or improve AI tools. It defines how tools work, writes documentation, and validates the structure.
sickn33/agentic-awesome-skills
20-andruia-niche-intelligence
Lets your agent create a summary about a specific industry. It's useful for understanding the context, rules, usage patterns, and risks of a project, using reliable sources.
sickn33/agentic-awesome-skills
Similar skills
dashboard-builder
Helps your agent create useful monitoring dashboards. It turns data into charts that answer important system questions.
affaan-m/ECC
dev-team
Simulates a collaborative development team where different roles respond to a problem together. It's useful for getting multiple perspectives without manually switching agents.
affaan-m/ECC
ecc-council
Has your agent convene a four-voice council for difficult decisions. It's useful when there are multiple good options and debate is needed before choosing.
affaan-m/ECC