{"id":25144,"date":"2026-10-29T09:41:46","date_gmt":"2026-10-29T09:41:46","guid":{"rendered":"https:\/\/atalnetworks.com\/?p=25144"},"modified":"2026-10-29T09:49:02","modified_gmt":"2026-10-29T09:49:02","slug":"how-many-cpu-cores-server","status":"publish","type":"post","link":"https:\/\/atalnetworks.com\/nl\/how-many-cpu-cores-server\/","title":{"rendered":"How Many CPU Cores Do You Need? Sizing a Dedicated Server"},"content":{"rendered":"<p><span style=\"font-weight: 400;\">A small web application may run well on four CPU cores. A busy database or virtualization host may need sixteen, thirty-two, or more. The right number depends on how much processing your workload requires, how much work can run in parallel, and how quickly each core completes that work.<\/span><\/p>\n<p><b>Choose a dedicated server by measuring peak CPU demand, checking application response times, and testing a configuration with spare capacity.<\/b><span style=\"font-weight: 400;\"> Core count alone cannot tell you whether a server will meet your needs.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">In this guide, we explain how to make that estimate, identify other performance limits, and choose a configuration you can justify.<\/span><\/p>\n<h2><b>How Many CPU Cores Does a Dedicated Server Need?<\/b><\/h2>\n<p><span style=\"font-weight: 400;\">Use core-count ranges to build a shortlist, then test against your actual workload. The following ranges are planning suggestions for initial tests, not minimum requirements or promised capacity.<\/span><\/p>\n<table>\n<tbody>\n<tr>\n<td><b>Workload<\/b><\/td>\n<td><b>Initial physical core count to consider<\/b><\/td>\n<td><b>What changes the requirement<\/b><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">Small website or lightweight application<\/span><\/td>\n<td><span style=\"font-weight: 400;\">4\u20138<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Dynamic requests, caching, background tasks<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">Growing web application or API<\/span><\/td>\n<td><span style=\"font-weight: 400;\">8\u201316<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Request rate, CPU time per request, response-time target<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">Database server<\/span><\/td>\n<td><span style=\"font-weight: 400;\">8\u201316 initially<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Query complexity, active queries, memory, storage<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">One or a few game-server instances<\/span><\/td>\n<td><span style=\"font-weight: 400;\">4\u20138 with strong per-core performance<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Game engine, settings, plugins, active world<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">Small virtualization host<\/span><\/td>\n<td><span style=\"font-weight: 400;\">8\u201316<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Combined VM demand, host services, memory capacity<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">Larger VM host or parallel processing service<\/span><\/td>\n<td><span style=\"font-weight: 400;\">16\u201332+<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Active jobs, contention, workload distribution<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">Build workers or CPU-based encoding<\/span><\/td>\n<td><span style=\"font-weight: 400;\">8\u201332+<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Parallel tasks, job deadlines, memory bandwidth<\/span><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><span style=\"font-weight: 400;\">These ranges overlap because applications behave differently. An efficient service can handle more work on fewer cores than an application that performs expensive processing for every request.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">We recommend treating the table as a starting point for measurement. A four-core server may be sufficient, while a thirty-two-core server may still struggle with a single slow application thread.<\/span><\/p>\n<h3><b>Visitor Counts Do Not Establish CPU Requirements<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">Monthly visitors tell you little about the work a server performs at its busiest moment.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Consider two websites with the same traffic:<\/span><\/p>\n<ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">One serves cached pages through a content delivery network.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">The other generates personalized pages, checks inventory, and runs database queries for each visit.<\/span><\/li>\n<\/ul>\n<p><span style=\"font-weight: 400;\">Their origin servers can have very different CPU requirements.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Measure requests reaching the server, the work performed per request, and the busiest periods. For background processing, measure jobs per second and CPU time per job.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">If you are moving from shared hosting, first confirm which resources your current plan limits. Our explanation of<\/span><a href=\"https:\/\/atalnetworks.com\/nl\/what-is-dedicated-server-hosting\/?utm_source=chatgpt.com\"> <span style=\"font-weight: 400;\">Dedicated serverhosting<\/span><\/a><span style=\"font-weight: 400;\"> covers the basic hosting model.<\/span><\/p>\n<h2><b>Understand Cores, Threads, Sockets, and vCPUs<\/b><\/h2>\n<p><span style=\"font-weight: 400;\">A physical core is a processing unit within a CPU. A socket holds a physical processor. Hardware threads expose additional logical processors that share a core\u2019s resources.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">These numbers describe the hardware, but they do not represent interchangeable units of performance.<\/span><\/p>\n<table>\n<tbody>\n<tr>\n<td><b>Term<\/b><\/td>\n<td><b>Meaning<\/b><\/td>\n<td><b>Sizing implication<\/b><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">CPU socket<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Position for an installed processor<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Count the cores across installed processors<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">Physical core<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Processing unit within a CPU<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Useful starting point for hardware comparisons<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">Hardware thread<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Logical processor sharing a physical core<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Does not provide another full physical core<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">Software thread<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Sequence of application instructions<\/span><\/td>\n<td><span style=\"font-weight: 400;\">May run, wait, or compete for CPU time<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">vCPU<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Processor presented to a virtual machine<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Its performance depends on the host and allocation<\/span><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><span style=\"font-weight: 400;\">For a hypothetical server with two processors, eight cores per processor, and two hardware threads per core:<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Physical cores = 2 \u00d7 8 = 16<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Logical processors = 16 \u00d7 2 = 32<\/span><\/p>\n<p><span style=\"font-weight: 400;\">That server has sixteen physical cores, not thirty-two.<\/span><\/p>\n<h3><b>Hardware Threads Do Not Double CPU Capacity<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">SMT, including Intel Hyper-Threading on supported processors, lets multiple hardware threads share a physical core.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">The performance benefit depends on the application and the resources it uses. Do not assume that enabling SMT doubles throughput or provides a fixed percentage gain.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Test the production workload with the intended configuration.<\/span><\/p>\n<h3><b>vCPUs Cannot Be Converted With One Universal Ratio<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">A sixteen-vCPU cloud instance does not automatically match a sixteen-core dedicated server.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">AWS documents different relationships between vCPUs, physical cores, and threads across instance types. CPU generation, host sharing, and sustained performance also affect the comparison.<\/span> <span style=\"font-weight: 400;\">\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">When moving from a VM to dedicated hardware, use the existing system to measure workload behavior. Then test the destination CPU rather than converting the advertised counts directly.<\/span><\/p>\n<h2><b>When Do Faster Cores Matter More Than More Cores?<\/b><\/h2>\n<p><span style=\"font-weight: 400;\">Faster cores matter when a task depends on a sequence of work that cannot spread across many cores. Additional cores help when the application has enough independent work to keep them busy.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">A web service may process many requests in parallel while each individual request follows a mostly serial path. It needs both sufficient total capacity and adequate performance per core.<\/span><\/p>\n<h3><b>One Busy Thread Can Hide Behind Low Overall CPU Use<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">Consider an eight-core server with SMT disabled. One application thread fully occupies one core while the other cores are mostly idle.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">The server may report roughly 12.5% overall CPU utilization. Yet that thread has no spare processing capacity.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Adding eight more cores may leave the slow operation unchanged. The next step is to inspect the application, its serial work, and the performance of the individual core.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">This pattern can occur in game loops, application workers, and parts of database execution.<\/span><\/p>\n<h3><b>More Cores Help Independent Work<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">Additional cores can support more:<\/span><\/p>\n<ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Independent application requests.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Background workers.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Virtual machines with active workloads.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Parallel build tasks.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Encoding or processing jobs.<\/span><\/li>\n<\/ul>\n<p><span style=\"font-weight: 400;\">The benefit stops growing at the same rate when another resource becomes the limit. Memory bandwidth, shared locks, storage, and application design can all restrict scaling.<\/span><\/p>\n<h3><b>Compare Exact Processor Models<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">Do not choose between servers using core count and GHz alone.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Compare processor generation, sustained performance, cache behavior, memory support, and tests that resemble your workload. A newer processor with fewer cores may complete more useful work than an older processor with a larger core count.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">For larger systems, also consider NUMA. This describes a memory layout where access costs depend on which processor or node owns the memory. Poor placement can affect VM and application performance.<\/span><\/p>\n<h2><b>Measure Your Current Server Before Choosing a Core Count<\/b><\/h2>\n<p><span style=\"font-weight: 400;\">Collect CPU data alongside application performance. A server that stays responsive at high CPU use has a different capacity problem from one that misses response-time targets at moderate use.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Record at least one representative business cycle. Include busy periods, scheduled jobs, backups, imports, and reporting tasks. Use longer records if weekly or seasonal events change demand.<\/span><\/p>\n<h3><b>Check the CPU Configuration<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">On Linux, run:<\/span><\/p>\n<p><span style=\"font-weight: 400;\">lscpu<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Review the model name, sockets, cores per socket, threads per core, and online logical processors.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Inside a VM, the displayed topology usually describes the guest configuration. It may differ from the physical host.\u00a0<\/span><\/p>\n<h3><b>Inspect Activity by Logical Processor<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">Use:<\/span><\/p>\n<p><span style=\"font-weight: 400;\">mpstat -P ALL 1 10<\/span><\/p>\n<p><span style=\"font-weight: 400;\">This produces ten reports at one-second intervals for the available logical processors. Look for uneven activity and sustained CPU work. The command belongs to the <\/span><span style=\"font-weight: 400;\">sysstat<\/span><span style=\"font-weight: 400;\"> package.<\/span> <span style=\"font-weight: 400;\">\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">A short sample helps inspect a current problem. It does not replace historical monitoring.<\/span><\/p>\n<h3><b>Identify Busy Processes and Threads<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">Use:<\/span><\/p>\n<p><span style=\"font-weight: 400;\">pidstat -u 1 10<\/span><\/p>\n<p><span style=\"font-weight: 400;\">For thread-level detail:<\/span><\/p>\n<p><span style=\"font-weight: 400;\">pidstat -u -t 1 10<\/span><\/p>\n<p><span style=\"font-weight: 400;\">pidstat<\/span><span style=\"font-weight: 400;\"> also belongs to <\/span><span style=\"font-weight: 400;\">sysstat<\/span><span style=\"font-weight: 400;\">. Its reporting options affect how CPU percentages are presented. Check whether your monitoring tool treats 100% as one logical processor or the entire system before comparing figures.\u00a0<\/span><\/p>\n<h3><b>Check Runnable Work and Resource Pressure<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">Run:<\/span><\/p>\n<p><span style=\"font-weight: 400;\">vmstat 1 10<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Review runnable tasks, CPU activity, and memory behavior. The first report generally covers activity since boot; later reports cover the sampling interval.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">On systems with Linux Pressure Stall Information enabled, also inspect:<\/span><\/p>\n<p><span style=\"font-weight: 400;\">cat \/proc\/pressure\/cpu<\/span><\/p>\n<p><span style=\"font-weight: 400;\">cat \/proc\/pressure\/memory<\/span><\/p>\n<p><span style=\"font-weight: 400;\">cat \/proc\/pressure\/io<\/span><\/p>\n<p><span style=\"font-weight: 400;\">The CPU <\/span><span style=\"font-weight: 400;\">some<\/span><span style=\"font-weight: 400;\"> measurement reports time during which at least some tasks wait for CPU resources. Use it alongside application latency and other metrics.\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Do not interpret load average as CPU utilization. Linux load average includes runnable tasks and tasks in uninterruptible sleep, often associated with I\/O.<\/span><\/p>\n<h3><b>Record What Users Experience<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">Track these measurements over the same period:<\/span><\/p>\n<table>\n<tbody>\n<tr>\n<td><b>Measurement<\/b><\/td>\n<td><b>What it tells you<\/b><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">Requests or jobs completed per second<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Useful work completed<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">p95 and p99 response time<\/span><\/td>\n<td><span style=\"font-weight: 400;\">How slower requests behave<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">Error and timeout rate<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Whether work fails under load<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">Queue length and job age<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Whether unfinished work accumulates<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">CPU activity and pressure<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Whether processing demand is competing for time<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">Memory and storage behavior<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Whether another resource limits progress<\/span><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><span style=\"font-weight: 400;\">A p95 response time is the value at or below which 95% of measured requests finish. It helps show delays that an average can hide.<\/span><\/p>\n<h2><b>Calculate an Initial CPU Capacity Estimate<\/b><\/h2>\n<p><span style=\"font-weight: 400;\">A useful estimate starts with CPU time consumed during a representative interval.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">CPU time records time spent executing work. It differs from elapsed time, which can include waiting for a database, disk, network response, or lock.<\/span><\/p>\n<h3><b>Method 1: Use Measured CPU Time<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">Calculate:<\/span><\/p>\n<p><span style=\"font-weight: 400;\">CPU demand = CPU-seconds consumed \u00f7 elapsed seconds<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Then apply growth and an operating target:<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Initial capacity estimate =<\/span><\/p>\n<p><span style=\"font-weight: 400;\">CPU demand \u00d7 growth factor \u00f7 target utilization<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Use utilization as a decimal. For example, 65% becomes <\/span><span style=\"font-weight: 400;\">0.65<\/span><span style=\"font-weight: 400;\">.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">The following calculation assumes comparable physical cores, SMT disabled, enough parallel work, and no other limiting resource. It is an illustrative example, not a measured Atal Networks result.<\/span><\/p>\n<table>\n<tbody>\n<tr>\n<td><b>Input<\/b><\/td>\n<td><b>Example value<\/b><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">CPU time consumed<\/span><\/td>\n<td><span style=\"font-weight: 400;\">240 CPU-seconds<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">Measurement interval<\/span><\/td>\n<td><span style=\"font-weight: 400;\">60 seconds<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">Planned workload growth<\/span><\/td>\n<td><span style=\"font-weight: 400;\">25%<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">Target utilization<\/span><\/td>\n<td><span style=\"font-weight: 400;\">65%<\/span><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><span style=\"font-weight: 400;\">First calculate current demand:<\/span><\/p>\n<p><span style=\"font-weight: 400;\">240 \u00f7 60 = 4 CPU-seconds per second<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Then add growth and operating room:<\/span><\/p>\n<p><span style=\"font-weight: 400;\">4 \u00d7 1.25 \u00f7 0.65 = 7.69<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Round up to an eight-core test configuration.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">The 65% target is a chosen planning assumption. It is not a universal operating limit. A service with strict response-time requirements may need more spare capacity. A batch system may tolerate longer queues and higher utilization.<\/span><\/p>\n<p><b>This estimate becomes unreliable if the source server is already saturated.<\/b><span style=\"font-weight: 400;\"> Completed CPU work cannot reveal all unmet demand. A growing request queue or rising timeout rate means you need load tests or another way to estimate the missing work.<\/span><\/p>\n<h3><b>Method 2: Use Requests and CPU Time per Request<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">For a request-driven workload:<\/span><\/p>\n<p><span style=\"font-weight: 400;\">CPU demand =<\/span><\/p>\n<p><span style=\"font-weight: 400;\">requests per second \u00d7 CPU-seconds per request<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Suppose an application processes 200 requests per second. Each request consumes an average of 15 milliseconds of CPU time:<\/span><\/p>\n<p><span style=\"font-weight: 400;\">200 \u00d7 0.015 = 3 CPU-seconds per second<\/span><\/p>\n<p><span style=\"font-weight: 400;\">If separate background work consumes another 0.5 CPU-seconds per second, total measured demand becomes 3.5.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Include that background work only if it was excluded from the request measurement.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Use a representative traffic mix. Login requests, searches, reports, and cached responses may have very different CPU costs.<\/span><\/p>\n<h3><b>Keep the Estimate Within Its Limits<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">These formulas provide test candidates, not guaranteed purchasing answers.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Recheck the result when:<\/span><\/p>\n<ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">The destination CPU differs from the source.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">SMT settings change.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Request types or payload sizes change.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Cache behavior changes.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">The application cannot use additional cores.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Memory or storage already limits performance.<\/span><\/li>\n<\/ul>\n<p><span style=\"font-weight: 400;\">Scheduler time on SMT threads does not translate directly into equivalent physical-core performance. Test the exact target configuration when that distinction affects the decision.<\/span><\/p>\n<h2><b>Adjust CPU Sizing for Your Workload<\/b><\/h2>\n<p><span style=\"font-weight: 400;\">The calculation gives you a baseline. Application behavior determines whether that baseline is useful.<\/span><\/p>\n<h3><b>Websites, WordPress, and APIs<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">Separate cached traffic from requests that reach application workers.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">For WordPress, inspect uncached pages, searches, admin activity, checkout requests, and scheduled tasks. For APIs, measure endpoints separately before calculating a weighted average.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Worker count also matters. Too few workers can leave CPU capacity unused. Too many can create memory pressure or overload the database.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Increase worker limits through testing, with CPU, RAM, and database behavior recorded at each step.<\/span><\/p>\n<h3><b>MySQL and PostgreSQL Databases<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">Database CPU requirements depend on active queries and the work they perform.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Check query plans, indexes, lock waits, and storage delays before adding cores. A query that scans unnecessary rows can consume more CPU than a correctly indexed query serving the same request.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Memory matters because frequently accessed data may need to stay in RAM. Storage matters when queries wait for reads or writes.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Some database workloads benefit from strong per-core performance. Others can use substantial parallel capacity. The label \u201cdatabase server\u201d alone does not identify which applies.<\/span><\/p>\n<h3><b>Minecraft and Other Game Servers<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">For game hosting, check the performance of the main simulation work as well as total CPU use.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">A single instance may reach a thread limit while the server still has idle cores. Several independent instances can use more of the machine.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Game version, plugins, mods, world activity, and server settings all affect demand. There is no dependable player-per-core rule that applies across games.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Match the CPU to measure game performance before comparing<\/span><a href=\"https:\/\/atalnetworks.com\/nl\/dedicated-game-servers\/?utm_source=chatgpt.com\"> <span style=\"font-weight: 400;\">dedicated game server options<\/span><\/a><span style=\"font-weight: 400;\">.<\/span><\/p>\n<h3><b>Proxmox, Virtual Machines, and Containers<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">A total of forty allocated vCPUs does not mean the host needs forty physical cores. It also does not prove that a smaller host will perform well.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Measure the guests\u2019 combined activity during overlapping busy periods. Include host services, storage work, backups, and migration tasks.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">For containers, check CPU quotas. Linux cgroup controls can limit CPU time even when the host has spare capacity. Review throttling statistics before buying more hardware.\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Avoid fixed VM-per-core ratios. Ten mostly idle VMs and ten CPU-heavy VMs create different requirements.<\/span><\/p>\n<h3><b>Build Jobs, Encoding, and AI Services<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">Parallel jobs can use many cores, but memory and storage must keep pace.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">For build systems, measure completion time at different job counts. For encoding, confirm whether the work uses the CPU or a hardware encoder.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">For AI services, distinguish CPU-only inference from workloads that use GPUs. CPU preprocessing, memory bandwidth, accelerator access, and request concurrency can each become the limit.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Choose capacity from the actual processing path rather than assigning a fixed number of cores to each GPU.<\/span><\/p>\n<h2><b>Check Whether CPU Is the Real Bottleneck<\/b><\/h2>\n<p><span style=\"font-weight: 400;\">Adding cores helps when usable CPU capacity limits the work. It will not automatically fix storage delays, lock contention, or application limits.<\/span><\/p>\n<table>\n<tbody>\n<tr>\n<td><b>Observed condition<\/b><\/td>\n<td><b>Investigate first<\/b><\/td>\n<td><b>Possible response<\/b><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">One thread stays busy while other CPUs have capacity<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Serial code, locks, per-core performance<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Tune the application or test a faster core<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">Many CPUs stay busy and runnable work grows<\/span><\/td>\n<td><span style=\"font-weight: 400;\">CPU demand and application efficiency<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Add capacity or reduce CPU cost<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">Low CPU use with high storage latency<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Queries, storage path, I\/O pattern<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Improve storage or reduce I\/O<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">Memory pressure with active swapping<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Working set and RAM allocation<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Add RAM or reduce memory demand<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">Container throttling with idle host capacity<\/span><\/td>\n<td><span style=\"font-weight: 400;\">CPU quota and scheduling controls<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Adjust limits where appropriate<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">Long database lock waits<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Transaction length and lock behavior<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Change queries or transaction design<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">Network throughput reaches a ceiling<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Port capacity, packet processing, network path<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Address the network limit<\/span><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><span style=\"font-weight: 400;\">Treat these as investigation paths. Confirm the cause using several measurements.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Moving a workload from sixteen to thirty-two cores can increase cost while leaving response time unchanged if the workload still waits on the same disk or lock.<\/span><\/p>\n<h2><b>Plan Spare Capacity, Growth, and Failover<\/b><\/h2>\n<p><span style=\"font-weight: 400;\">Spare CPU capacity supports bursts and workload changes. The amount you need depends on service targets and how quickly you can add capacity.<\/span><\/p>\n<h3><b>Separate Growth From Operating Headroom<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">Growth describes additional work you expect.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Headroom describes unused capacity you retain at the planned workload.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">If your calculation already divides by a target utilization, it already includes operating headroom. Do not add another percentage for the same purpose without explaining the reason.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Include background jobs separately only when the original measurement excluded them.<\/span><\/p>\n<h3><b>Size Surviving Servers for Failover<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">Suppose two comparable servers normally share traffic evenly. Each operates at 35% CPU during the planned peak.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">If one fails, the remaining server could approach 70% under a simple proportional estimate. Replication, recovery, and changed cache behavior may add more work.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Test the failure condition, not just normal operation.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Two processors in one server do not provide server-level failover. A second server is a separate availability decision. AMD\u2019s server guidance makes this distinction between processor count and failover capacity.\u00a0<\/span><\/p>\n<h3><b>Decide Whether to Add Cores or Another Server<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">A larger server may suit a workload that benefits from shared memory and a simple deployment.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Additional servers may suit independent application instances, separate game worlds, or worker queues. They can also support availability requirements.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Account for the operational work involved: load balancing, shared state, replication, monitoring, and recovery.<\/span><\/p>\n<h2><b>Test the Configuration Before Committing<\/b><\/h2>\n<p><span style=\"font-weight: 400;\">A load test should answer whether the configuration meets your service targets under expected demand.<\/span><\/p>\n<h3><b>Reproduce the Work That Matters<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">Use representative data, requests, and background tasks.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Include normal cache behavior and relevant recovery conditions. A test that serves only warm cached pages cannot establish capacity for uncached checkout or search traffic.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Run controlled tests in an appropriate environment. Uncontrolled production load can disrupt users.<\/span><\/p>\n<h3><b>Increase Load in Steps<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">At each level, record:<\/span><\/p>\n<ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Completed requests or jobs.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Response times.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Errors and timeouts.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">CPU activity and pressure.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Memory use.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Storage latency.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Queue growth.<\/span><\/li>\n<\/ul>\n<p><span style=\"font-weight: 400;\">Run long enough to observe sustained behavior and relevant background tasks. Stop treating a configuration as sufficient when it misses the chosen service targets, even if average CPU use looks acceptable.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Also confirm that the load generator is not the limiting system.<\/span><\/p>\n<h3><b>Record the Test Conditions<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">Keep a short test record:<\/span><\/p>\n<table>\n<tbody>\n<tr>\n<td><b>Item<\/b><\/td>\n<td><b>Record<\/b><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">Hardware<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Exact CPU model, physical cores, SMT setting<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">Memory<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Capacity and configuration<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">Opslagruimte<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Drive type and layout<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">Software<\/span><\/td>\n<td><span style=\"font-weight: 400;\">OS, application, database, and runtime versions<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">Workload<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Request mix, data size, concurrency<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">Duration<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Test length and background tasks included<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">Pass criteria<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Latency, errors, throughput, queue limits<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">Result<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Highest tested load that met the criteria<\/span><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><span style=\"font-weight: 400;\">A reproducible result is more useful than a generic CPU benchmark.<\/span><\/p>\n<h2><b>Choose a Dedicated Server From the Results<\/b><\/h2>\n<p><span style=\"font-weight: 400;\">Once the workload passes testing, compare the complete server configuration.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Confirm the exact CPU model and physical core count. Then check RAM, storage, network capacity, and any application-specific requirements.<\/span><\/p>\n<h3><b>Include Software Licensing<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">Some products charge according to physical cores, virtual cores, editions, or deployment rights. Extra cores can therefore change software cost as well as hosting cost.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Check the current terms for your software and hosting arrangement. Do not assume that disabling cores or reducing VM allocations changes the license bill.<\/span><\/p>\n<h3><b>Confirm the Upgrade Path<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">Dedicated-server CPU changes may require compatible hardware, downtime, or migration to another machine.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Before ordering, confirm:<\/span><\/p>\n<ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Which upgrades are available.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Whether CPU changes require migration.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">How long the change may take.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">How backups and rollbacks will work.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Whether another server would be a better expansion path.<\/span><\/li>\n<\/ul>\n<p><span style=\"font-weight: 400;\">Atal Networks\u2019<\/span><a href=\"https:\/\/atalnetworks.com\/nl\/dedicated-servers\/?utm_source=chatgpt.com\"> <span style=\"font-weight: 400;\">dedicated server configurations<\/span><\/a><span style=\"font-weight: 400;\"> provide a place to compare available options. Share your application requirements, peak-load measurements, and test results when discussing a configuration with our team.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">We recommend choosing from those requirements rather than selecting the plan with the largest advertised core count.<\/span><\/p>\n<h2><b>Veel gestelde vragen<\/b><\/h2>\n<h3><b>Is Four Cores Enough for a Dedicated Server?<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">Four physical cores can be enough for a lightweight application, small website, or limited background workload. The CPU model, caching, and peak demand determine whether it fits. Test the busiest expected period before committing.<\/span><\/p>\n<h3><b>Is Eight Cores Enough for a Web Server?<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">Eight cores can provide a useful starting point for many web applications. Capacity depends on request processing cost, traffic reaching the origin, worker settings, and database behavior. There is no fixed visitor count that eight cores will support.<\/span><\/p>\n<h3><b>Does Eight Cores and Sixteen Threads Mean Sixteen Cores?<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">No. It means eight physical cores expose sixteen hardware threads. Threads sharing one core also share execution resources. They do not provide the same capacity as sixteen independent physical cores.<\/span><\/p>\n<h3><b>Can Eight Newer Cores Outperform Sixteen Older Cores?<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">Yes, depending on the processors and workload. Architecture, performance per core, cache, and memory behavior affect results. Compare exact models using the application you intend to run.<\/span><\/p>\n<h3><b>How Many Cores Do I Need for Ten Virtual Machines?<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">VM count alone cannot answer that question. Measure their combined peak CPU demand, include host work, and check whether their busy periods overlap. Confirm that RAM and storage can support the same workload.<\/span><\/p>\n<h3><b>Why Is My Server Slow When CPU Usage Is Low?<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">A single busy thread, storage delay, database lock, memory pressure, or CPU quota can limit performance. Overall CPU utilization can hide these conditions. Inspect process activity and resource waits alongside response times.<\/span><\/p>\n<h3><b>Can I Size a Server From Monthly Visitors?<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">Monthly visitors are insufficient for CPU sizing. You need peak request rates, the share of traffic reaching the server, and the CPU cost of those requests. Scheduled work also contributes to demand.<\/span><\/p>\n<h3><b>Can I Add CPU Cores Later?<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">Sometimes, but it depends on the physical platform and provider. An upgrade may require a different processor or migration to another server. Confirm the process before renting the original configuration.<\/span><\/p>\n<h2><b>Recommended Next Steps<\/b><\/h2>\n<p><span style=\"font-weight: 400;\">Start with your busiest workload period. Record CPU demand, application response times, memory behavior, and storage delays.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Then:<\/span><\/p>\n<ol>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Identify whether total CPU capacity or one busy thread limits performance.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Calculate an initial configuration using clear growth and headroom assumptions.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Test comparable hardware with representative work.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Check licensing and migration requirements.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Choose the configuration that meets your service targets with room to grow.<\/span><\/li>\n<\/ol>\n<p><b>The right core count is the one that passes your workload test at an acceptable total cost.<\/b><\/p>","protected":false},"excerpt":{"rendered":"<p>A small web application may run well on four CPU cores. A busy database or virtualization host may need sixteen, [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":25146,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"default","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"set","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"categories":[1],"tags":[],"class_list":["post-25144","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-enterprise-grade-server"],"acf":[],"_links":{"self":[{"href":"https:\/\/atalnetworks.com\/nl\/wp-json\/wp\/v2\/posts\/25144","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/atalnetworks.com\/nl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/atalnetworks.com\/nl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/atalnetworks.com\/nl\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/atalnetworks.com\/nl\/wp-json\/wp\/v2\/comments?post=25144"}],"version-history":[{"count":1,"href":"https:\/\/atalnetworks.com\/nl\/wp-json\/wp\/v2\/posts\/25144\/revisions"}],"predecessor-version":[{"id":25145,"href":"https:\/\/atalnetworks.com\/nl\/wp-json\/wp\/v2\/posts\/25144\/revisions\/25145"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/atalnetworks.com\/nl\/wp-json\/wp\/v2\/media\/25146"}],"wp:attachment":[{"href":"https:\/\/atalnetworks.com\/nl\/wp-json\/wp\/v2\/media?parent=25144"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/atalnetworks.com\/nl\/wp-json\/wp\/v2\/categories?post=25144"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/atalnetworks.com\/nl\/wp-json\/wp\/v2\/tags?post=25144"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}