Page 4 - Monthly Archives: December 2025
-
Maxim Mironjuk
-
December 28, 2025
A dashboard shows 40 percent CPU usage, yet timeouts and latency spikes keep piling up. The contradiction almost always resolves itself once you look at cpu.stat: the container is being throttled long before its average usage comes anywhere near a limit.
-
Maxim Mironjuk
-
December 28, 2025
Intermittent GraphQL errors are hard to reproduce because context is missing. Structured logging, request tracing, and correlation IDs make every error traceable, even days after it occurred, even across multiple resolver chains.
-
Maxim Mironjuk
-
December 28, 2025
Tabular data shows up in almost every automation task: export files, reports, configuration, migration sources. With the right tools, awk for column operations, read with IFS for line-based processing, mapfile for in-memory work, CSV and TSV files can be processed reliably in Bash without external dependencies.
-
Maxim Mironjuk
-
December 28, 2025
A Magento shop that gets deployed straight into a single directory cannot be rolled back in seconds. The symlink model with releases/, current/ and shared/ is the foundation of every zero-downtime deployment, and it needs to be built correctly once, before the first pipeline ever runs.
-
Maxim Mironjuk
-
December 28, 2025
Push notifications are not a single, uniform feature but an interplay of APNs, Firebase Cloud Messaging, operating system permissions and app state. Anyone who wires up FCM in React Native without a clean setup for foreground, background and quit state loses notifications exactly when users need them most. This article shows how the Firebase project, the FCM SDK, permissions, payloads, deep linking and token management fit together reliably in React Native.
-
Maxim Mironjuk
-
December 28, 2025
Magento's full page cache invalidates entries through tags like cat_p_123 or cat_c_45, which are entity-scoped but not store-specific by default. In a multi-store installation with several websites, store groups, and store views, that means a change actually relevant to only a single store view, such as a store-specific price rule or an individual approval status, can still invalidate cache entries for every other store because they share the same tag namespace. Anyone running many stores needs to deliberately decide how granular tags should be, without sliding into a tag explosion with an unmanageable number of barely reused tags.
-
Maxim Mironjuk
-
December 28, 2025
API design is one of the decisions that accompanies a product for years, because breaking changes are expensive. Claude helps with API design assistance by checking resource naming, versioning strategy, error formats and pagination against existing conventions before the first endpoint is implemented.
-
Maxim Mironjuk
-
December 28, 2025
Throwing media files, static assets and build artifacts into the same bucket in Magento deployments makes rollbacks dangerous and deployments slow. Each of these three categories has its own lifecycle, its own ownership and its own deployment strategy, and that must be reflected in the structure of the pipeline.
-
Maxim Mironjuk
-
December 28, 2025
A spinner shows that a script is active even when the duration of a step is unknown and no percentage can be calculated. This article shows how a spinner animation emerges as a background process in Bash, how it is synchronized cleanly with a running command, and how trap ensures no spinner process is left orphaned.
-
Maxim Mironjuk
-
December 28, 2025
Anyone who creates new indices for logs, metrics or orders every day knows the problem: without a central definition, mappings and settings drift apart until queries return inconsistent results. Composable index templates and reusable component templates solve exactly that by defining mapping rules once and applying them automatically to every new index that matches a naming pattern.
-