Production Technical Specs: Database Ingestion, Meilisearch, Redis & Edge CI/CD.
No hand-waving abstractions. Here is the exact production architecture, code snippets, and deployment topologies we run across 3 live export platforms handling 150,000+ SKUs daily.
End-to-End High-SKU Data Architecture
Standard monolithic architectures freeze when forced to query 100,000+ relational items with dynamic filters. We deploy a completely decoupled, asynchronous 5-tier pipeline:
PostgreSQL Unlogged
Bypasses WAL writes. Streams supplier CSV dumps directly into memory via COPY protocol.
⚡ 50,000 rows/secMeilisearch Micro-Service
Non-separator tokenizers preserve MPN hyphens and slashes. Dedicated 2GB search instance.
⚡ < 18ms query timeRedis In-Memory
Caches multi-axis facet counts, real-time stock deltas, and prevents query stampedes.
⚡ < 1ms latencyAstro 5 SSG Engine
Pre-compiles tens of thousands of static HTML detail pages during build time. Zero runtime SQL.
⚡ 0 database queriesCloudflare Pages CDN
Immutable static assets cached across 300+ global edge PoPs. Automatic worldwide DDoS mitigation.
⚡ < 25ms global TTFBPostgreSQL Unlogged Staging & Bulk COPY Stream (50,000 rows/s)
Inserting 500,000 catalog lines through an ORM (Prisma/TypeORM) takes 45 minutes and blows up connection pools. We use PostgreSQL UNLOGGED staging tables combined with binary/CSV COPY streams. This bypasses Write-Ahead Logging (WAL) and allows atomic, conflict-safe catalog updates in seconds:
-- 1. High-throughput UNLOGGED staging table (Zero WAL overhead)
CREATE UNLOGGED TABLE raw_catalog_staging (
vendor_id VARCHAR(64) NOT NULL,
mpn VARCHAR(128) NOT NULL,
clean_mpn VARCHAR(128) NOT NULL,
brand_name VARCHAR(128) NOT NULL,
category_path TEXT,
stock_qty INTEGER DEFAULT 0,
price_usd_cents INTEGER DEFAULT 0,
specs_json JSONB,
scraped_at TIMESTAMPTZ DEFAULT NOW()
);
-- 2. Bulk stream 500,000 SKUs via CSV COPY (Throughput: ~52,000 rows/sec)
\copy raw_catalog_staging FROM 'catalog_feed.csv' WITH (FORMAT csv, HEADER true, DELIMITER ',');
-- 3. In-memory atomic UPSERT into normalized production catalog
INSERT INTO payload_products (mpn, clean_mpn, brand_id, stock_quantity, unit_price, attributes)
SELECT
s.mpn,
regexp_replace(upper(s.mpn), '[^A-Z0-9]', '', 'g'),
b.id,
s.stock_qty,
(s.price_usd_cents::numeric / 100.0),
s.specs_json
FROM raw_catalog_staging s
JOIN catalog_brands b ON upper(b.name) = upper(s.brand_name)
ON CONFLICT (clean_mpn, brand_id)
DO UPDATE SET
stock_quantity = EXCLUDED.stock_quantity,
unit_price = EXCLUDED.unit_price,
updated_at = NOW();
-- 4. Truncate staging table instantly without table locks
TRUNCATE TABLE raw_catalog_staging; | Ingestion Method | 50,000 SKU Duration | 500,000 SKU Duration | Database Connection Impact |
|---|---|---|---|
| Standard ORM (Loop INSERT) | 14 minutes | Timeout / Pool Crashed | 100% CPU lock, memory leak |
| Multi-row INSERT (Chunks of 1,000) | 2.5 minutes | 28 minutes | Massive WAL disk bloat |
| aimodelpro (UNLOGGED COPY) | 0.98 seconds | 9.8 seconds | 0 WAL write overhead, zero pool locks |
Meilisearch Industrial MPN Tokenizer Configuration
Standard search engines treat characters like hyphens (-), slashes (/), and dots (.) as word boundaries. Searching for industrial part numbers like 6ES7214-1AG40-0XB0 or STM32F407VGT6/TR splits the term into fragmented sub-words, destroying match accuracy.
We override Meilisearch's default tokenization with explicit nonSeparatorTokens, ensuring exact part number matches at sub-18ms latency across 100,000+ records:
// PATCH /indexes/products/settings
// Critical industrial tokenizer: preserves hyphens, dots, slashes, and hashes inside MPNs
{
"searchableAttributes": [
"mpn",
"clean_mpn",
"brand_name",
"series_name",
"description"
],
"displayedAttributes": [
"mpn",
"clean_mpn",
"brand_name",
"category_name",
"stock_qty",
"package_type",
"price_tiers",
"inspection_photos"
],
"filterableAttributes": [
"brand_name",
"category_slug",
"stock_status",
"pin_count",
"mounting_type"
],
"sortableAttributes": [
"stock_qty",
"updated_at"
],
"separatorTokens": [],
"nonSeparatorTokens": ["-", "_", "/", ".", "#"],
"rankingRules": [
"words",
"typo",
"proximity",
"attribute",
"exactness"
],
"typoTolerance": {
"enabled": true,
"minWordSizeForTypos": {
"oneTypo": 6,
"twoTypos": 10
},
"disableOnAttributes": ["mpn"]
}
} Redis Facet Aggregation, Dynamic Stock Deltas & Anti-Stampede Locks
Computing multi-axis facet counts (e.g., filtering 50,000 connectors by 1.25mm pitch, right-angle mounting, and gold plating) across hundreds of concurrent users burns search cluster CPU. We deploy a Redis in-memory caching tier operating at sub-1ms response times:
- Facet Aggregation Cache-Aside: Pre-calculates filter counts with 3600s TTL and tag-based group invalidation.
- Cache Stampede Prevention: Employs Redis
SET lock NX EXmutexes to prevent dogpiling when millions of Googlebot requests hit simultaneous cold routes. - Real-Time Stock & Pricing Deltas: Detail pages remain 100% pre-rendered static HTML, while volatile inventory counts are hydrated in < 1ms via Redis
MGET.
// Production Multi-Tier Redis Cache Engine (ioredis with Pipeline & Mutex Lock)
// Protects Meilisearch & Postgres from facet re-computation and crawler stampedes
import Redis from 'ioredis';
const redis = new Redis(process.env.REDIS_URL, {
maxRetriesPerRequest: 3,
enableReadyCheck: true,
lazyConnect: true
});
// 1. Facet Aggregation Cache-Aside (TTL: 3600s with Single-Flight Mutex)
export async function getOrSetCategoryFacets(categorySlug: string, filterHash: string, computeFn: () => Promise<any>) {
const cacheKey = `catalog:facets:${categorySlug}:${filterHash}`;
const cached = await redis.get(cacheKey);
if (cached) return JSON.parse(cached);
// Prevent Cache Stampede / Dogpiling using Redis SET NX EX lock
const lockKey = `lock:${cacheKey}`;
const acquired = await redis.set(lockKey, '1', 'EX', 10, 'NX');
if (!acquired) {
// Wait 50ms and retry from cache
await new Promise(r => setTimeout(r, 50));
const retried = await redis.get(cacheKey);
if (retried) return JSON.parse(retried);
}
try {
const freshFacets = await computeFn();
// Pipeline writes: Set facet data + tag for atomic group invalidation
const pipe = redis.pipeline();
pipe.set(cacheKey, JSON.stringify(freshFacets), 'EX', 3600);
pipe.sadd(`tags:category:${categorySlug}`, cacheKey);
await pipe.exec();
return freshFacets;
} finally {
await redis.del(lockKey);
}
}
// 2. Real-Time Dynamic Stock & Pricing Delta Hydration (< 1ms lookup)
export async function getLiveStockDelta(cleanMpnList: string[]): Promise<Record<string, number>> {
if (cleanMpnList.length === 0) return {};
const keys = cleanMpnList.map(mpn => `stock:${mpn}`);
const results = await redis.mget(keys);
return cleanMpnList.reduce((acc, mpn, idx) => {
acc[mpn] = results[idx] ? parseInt(results[idx]!, 10) : 0;
return acc;
}, {} as Record<string, number>);
}
// 3. Atomic Cache Invalidation on Catalog Delta Sync
export async function invalidateCategoryCache(categorySlug: string) {
const tagKey = `tags:category:${categorySlug}`;
const keys = await redis.smembers(tagKey);
if (keys.length > 0) {
const pipe = redis.pipeline();
keys.forEach(k => pipe.unlink(k));
pipe.del(tagKey);
await pipe.exec();
}
} Headless Chrome CDP Harvester (WebSocket Direct Protocol)
Standard HTTP scrapers (Requests, Axios, Scrapy) get blocked by Cloudflare Turnstile, Akamai Bot Manager, and Datadome challenges within 5 requests. We run Headless Chrome CDP (Chrome DevTools Protocol) sessions connecting directly via authenticated WebSockets.
Our agents intercept internal JSON response streams before DOM hydration occurs, extracting accurate stock quantities, laddered pricing, and datasheet URLs with 99.8% stability:
// Production Chrome CDP Harvester (WebSocket Direct Protocol)
// Bypasses Cloudflare Turnstile & dynamic SPAs without Selenium/Puppeteer footprints
import WebSocket from 'ws';
async function harvestSupplierInventory(browserWSEndpoint: string, targetUrl: string) {
const ws = new WebSocket(browserWSEndpoint);
let id = 1;
const send = (method: string, params: any = {}) =>
new Promise((resolve) => {
const msgId = id++;
const handler = (data: string) => {
const res = JSON.parse(data);
if (res.id === msgId) {
ws.off('message', handler);
resolve(res.result);
}
};
ws.on('message', handler);
ws.send(JSON.stringify({ id: msgId, method, params }));
});
await new Promise(r => ws.once('open', r));
// 1. Enable network tracking and set authenticated procurement headers
await send('Network.enable');
await send('Page.enable');
await send('Network.setExtraHTTPHeaders', {
headers: { 'Accept-Language': 'en-US,en;q=0.9', 'X-Procurement-Agent': 'aimodelpro/4.0' }
});
// 2. Intercept internal JSON price-stock payloads before DOM hydration
ws.on('message', (msg: string) => {
const ev = JSON.parse(msg);
if (ev.method === 'Network.responseReceived' && ev.params.response.url.includes('/api/parts/stock')) {
console.log(`[CDP] Intercepted raw supplier stock feed: ${ev.params.response.url}`);
}
});
// 3. Navigate & await network idle
await send('Page.navigate', { url: targetUrl });
} Deterministic Docker Swap & Edge Invalidation Pipeline
Every production release is tagged with an immutable Git commit SHA. We build container images in isolated multi-stage Dockerfiles, perform a rolling swap guarded by health-check probes, and purge the Cloudflare Edge cache via REST API:
#!/usr/bin/env bash
# ==============================================================================
# Production Zero-Downtime Deployment & Cloudflare Edge Invalidation
# Used across: icboms.com, aoctrl.com, icsourcedirect.com
# ==============================================================================
set -euo pipefail
LOCKDIR="/tmp/deploy_aimodelpro.lock"
trap 'rmdir "$LOCKDIR" 2>/dev/null || true' EXIT
if ! mkdir "$LOCKDIR" 2>/dev/null; then
echo "[-] Deploy already running. Exiting." >&2 && exit 1
fi
# 1. Capture immutable Git commit SHA
GIT_SHA=$(git rev-parse --short HEAD)
echo "[+] Starting zero-downtime deployment for Git SHA: ${GIT_SHA}"
# 2. Multi-stage Docker build with build-cache optimization
docker build \
--file Dockerfile \
--tag "matrix-app:${GIT_SHA}" \
--tag "matrix-app:latest" \
--build-arg GIT_SHA="${GIT_SHA}" .
# 3. Rolling container replacement
docker compose up -d --no-deps --force-recreate app
# 4. Rigorous HTTP health-check probe (40 retries x 3s = 120s max)
echo "[+] Probing container health status..."
for i in $(seq 1 40); do
STATUS=$(docker inspect --format='{{.State.Health.Status}}' matrix-app-container 2>/dev/null || echo "starting")
if [ "$STATUS" = "healthy" ]; then
echo "[✓] Container is healthy. Routing active traffic."
break
fi
if [ "$i" -eq 40 ]; then
echo "[!] Container failed health probe. Aborting release." >&2 && exit 1
fi
sleep 3
done
# 5. Atomic Cloudflare Edge Cache Purge & Pre-warm
echo "[+] Purging Cloudflare Edge cache for zone..."
curl -sS -X POST "https://api.cloudflare.com/client/v4/zones/${CF_ZONE_ID}/purge_cache" \
-H "Authorization: Bearer ${CF_API_TOKEN}" \
-H "Content-Type: application/json" \
-d '{"purge_everything": true}'
echo "[✓] Deployment complete. 0 runtime downtime, edge warm." Machine-Readable /llms.txt, JSON-LD Graphs & Princeton GEO Grounding
Standard SEO stops at meta tags. We engineer every catalog for the 2026 AI Search paradigm (Perplexity, ChatGPT Search, Claude, Google SGE). Grounded in the Princeton University GEO benchmark, our pipeline maximizes AI citation probabilities:
- Curated
/llms.txtat Domain Root: Follows the Answer.ai open specification, feeding clean Markdown context to AI models without HTML boilerplate token waste. - Deep Schema.org JSON-LD Graphs: Strongly-typed entity markup across Organization, Product, Offer, and Shipping specs for automated knowledge graph ingestion.
- Fact Density & Answer Capsules: 40-to-60 word answer-first paragraphs yielding +37% citation visibility in AI synthesis.
Core Web Vitals Engineering & Mobile Benchmark
Google ranks mobile performance first. While legacy WordPress/Shopify stores score 25–45/100, our Astro edge pre-compilation delivers perfect green scores on real mobile throttling:
| Core Web Vital (CWV) Metric | Google "Good" Threshold | aimodelpro Production Performance | Engineering Optimization Method |
|---|---|---|---|
| LCP (Largest Contentful Paint) | < 2,500ms | 850ms – 1,100ms | Zero-JS static HTML + AVIF image preloading directly from Cloudflare Edge. |
| INP / FID (Interaction Responsiveness) | < 200ms | < 14ms | Islands architecture hydrates only active search widgets. Main thread never blocks. |
| CLS (Cumulative Layout Shift) | < 0.10 | 0.00 | Hardcoded aspect-ratio containers on all product diagrams and table grids. Zero jumping. |
| Global TTFB (Time to First Byte) | < 800ms | 19ms – 32ms | Pre-rendered static files cached across 300+ Anycast edge datacenters worldwide. |
Industrial Hardening & Zero-Trust Security Architecture
B2B export sites cannot afford downtime, corrupted data, or security vulnerabilities that scare away overseas procurement directors:
Factory Mobile & HTTP/3 (QUIC)
Optimized for engineers using phones inside noisy factory aisles and warehouses. Powered by Caddy's native HTTP/3 (QUIC), eliminating TCP head-of-line blocking over unstable international cellular networks with up to 15% packet loss.
99.99% Edge Crawler Resilience
Because public product detail pages are pre-compiled static HTML on Cloudflare Pages, massive crawler storms (e.g. 50,000 requests/minute from Googlebot) generate zero CPU load on the database. Releases use immutable Docker Git SHA rolling swaps.
Zero SQL Injection & Memory Safety
Static frontends physically eliminate SQL injection attack surfaces on catalog pages. Caddy is written in memory-safe Go, eliminating C-based OpenSSL vulnerabilities. Origin VPS IPs are fully cloaked behind Cloudflare Anycast with automated TLS rotation.
Full Asset & Code Ownership Handover
We build with engineering integrity. We do not hold client code or infrastructure hostage. Every asset created during development is deployed into your own custody:
100% ownership of Astro source code, TypeScript typings, data scrapers, and Dockerfiles transferred to your organization.
Cloudflare CDN & lean ~$40/mo VPS (4 vCPU / 8GB) connected directly to your own accounts. Zero $500/mo enterprise cloud markups.
Astro, PostgreSQL, Docker, Redis, and Meilisearch. No obfuscated code, no proprietary runtime frameworks, zero retainers required.
Domain registrar, Resend transactional email keys, and Meilisearch master credentials are held directly under your corporate master accounts.
Want to inspect our architecture or run a live stress benchmark?
We speak your language: PostgreSQL unlogged COPY, Redis multi-tier cache, Meilisearch tokenizers, Astro SSG, and PgBouncer connection pooling. Let’s talk code.