The situation
Globalfinanz runs piensin.com, a health insurance comparison engine with access to seven different companies. Each query involved sequential API calls to each insurer: the first responded, it was processed, then the second, and so on through all seven. Users waited 35 to 40 seconds staring at a screen before seeing any results. In a sector where purchase decisions are made in seconds, that wait was unacceptable.
The decision
The problem wasn't the server or bandwidth — it was architecture. Seven calls were being made in series when they could be made in parallel. The decision was to rewrite the query system using curl_multi and PHP Workers to fire all requests simultaneously, process each response as it arrived, and return progressive results to the frontend without waiting for the slowest one to finish. No provider change, no new infrastructure, no migration.
The execution
A custom PHP plugin was developed to replace the existing query system. The new engine fired all seven requests in parallel using curl_multi_exec and PHP Workers, managed individual timeouts per insurer so a slow provider wouldn't block the rest, and sent results to the frontend as they arrived. Synchronisation with the external CRM stayed intact — each query's data was still recorded correctly regardless of response order. The deployment was done with no downtime on the live system, with a documented rollback to the previous system just in case.
The outcome
In production, comparison time dropped from 40 seconds to between 10 and 12 — a 73% reduction. Users see results in less than a third of the previous time, with the same company coverage and no visible change to the interface. CRM synchronisation kept working without modification. The system has been running in production since without any incidents attributable to the change.