Back to Portfolio
High-Traffic Media

High-Traffic National News Portals (Bisnisindonesia.id, Hypeabis.id, Dataindonesia.id)

Managing and optimizing three high-reputation national news portals collectively serving over 10 million active readers every month. The main challenge is maintaining system performance and reliability under highly fluctuating traffic loads.

Role

Senior Developer & Infrastructure Reliability Engineer

Timeline

2021 – Present

Organization

PT. Jurnalindo Aksara Grafika (Bisnis Indonesia Group)

PHPNext.jsLinux (Ubuntu)NginxPostgreSQL/MySQLProfiling ToolsRedis

Impact & Tangible Results

10M+

Monthly Active Readers

Collective traffic of three portals consistently maintained for reliability and performance.

99.9%

Uptime Target

Maintained even during breaking national news with sudden traffic spikes.

<200ms

Target Response Time

Article response time after caching and query tuning optimization.

0 Downtime

Critical Events

Successfully navigated major coverage events without significant system incidents.

Problem Statement

National news portals faced unexpected extreme traffic surges during major events (elections, national disasters, economic data releases). The old PHP monolithic stack frequently experienced CPU spikes near 100%, causing slow or inaccessible pages that directly impacted advertising revenue and media reputation.

Solution & Architecture

A combination of reactive (incident response & profiling) and proactive (multi-layer caching architecture, CDN optimization, and continuous query tuning) approaches to build infrastructure resilient to peak loads.

Architecture Details

Multi-layer caching: Redis object cache at the application level, Nginx FastCGI cache at the server level.

Intelligent CDN routing to distribute static assets to reader-nearest edge servers.

PostgreSQL and MySQL query optimization with EXPLAIN ANALYZE and strategic indexing.

Nginx load balancer with upstream health checks and connection pooling.

Netdata-based monitoring for real-time alerting on CPU, memory, and disk I/O.

Process profiling using strace, top, and PHP-FPM status for incident diagnosis.

Key Modules & Features

Incident Response & Server Profiling

In-depth system process analysis during CPU spikes, identifying PHP-FPM bottlenecks, N+1 queries, and memory leaks.

Linux ToolsstracePHP-FPMNginx

Caching Architecture

Redis implementation for object caching of popular articles, session store, and rate limiting; combined with page caching in Nginx.

RedisNginxPHP

CDN & Asset Optimization

CDN routing for media assets with automatic cache invalidation when content is updated by editors.

CDNNginxShell Scripting

Database Performance Tuning

Review and optimization of slow queries with EXPLAIN ANALYZE, composite indexes, and denormalization for read performance.

PostgreSQLMySQLSQL Tuning

Feature Development

Development of new editorial features (paywall, bookmark, push notifications, interactive calculators) using Next.js and internal APIs.

Next.jsReactPHP

Challenges & Engineering Solutions

Challenge #1

Server CPU reaching 98%, causing all portals to become unresponsive.

Solution

Profiling PHP-FPM processes with strace revealed zombie processes not terminating correctly. Correct pm.max_requests configuration resolved the issue permanently.

Challenge #2

High latency on article pages with many dynamic widgets (trending, related, comment count).

Solution

Refactored widgets into separate Redis-cached API calls with different TTLs, combined with lazy loading on the frontend.

Challenge #3

Inaccurate cache invalidation causing readers to see old content after article updates.

Solution

Implemented tag-based cache invalidation with unique cache keys automatically purged when an article is published or updated via the CMS.