Maksym H.
Winning proposal- Projects 28
- Rating 5.0
- Rating 3 598
Budget: 1500 UAH Deadline: 1 day
Hello!
The problem is not with the external parser and not with the request limits — these are just symptoms. The server crashes due to MySQL overload from heavy SQL queries. It worked for 10 years, and now it has started — most likely, the product database has grown, the cache has failed, and the filter queries can no longer keep up.
I will start working on it right now. I will quickly diagnose, find the cause, and fix it. The server will stop hanging.
Budget: 10000 UAH Deadline: 10 days
Based on the provided htop screenshot, it can be concluded that your server is in a state of critical overload. As an administrator managing systems with root privileges, you have likely already noticed significant lag in operation. Here is a detailed analysis of key metrics:
1. Extreme Load (Load Average)
Load Average: 47.53, 44.80, 44.96.
The system has 4 cores (threads), as seen from the top indicators (1-4). For a 4-core system, the normal Load Average should be around 4.0. A figure of 47.53 means that the system is overloaded by approximately 11-12 times. Over 40 processes are constantly queued for execution, waiting for CPU availability.
2. CPU and Memory Status
CPU: All 4 cores are loaded at 100%. This is the system's bottleneck at this time.
RAM: 3.03 GB used out of 3.85 GB. Although there is still memory available, the remaining amount is small.
Swap: 0K/0K. There is no swap file or partition configured on the server at all. In the event of a spike in memory consumption by MySQL (which is the main consumer), the system may simply "crash" or start killing processes due to OOM Killer.
3. Process Analysis
The main factor of the load is MySQL (mysqld):
The process with PID 12866 is consuming 188% CPU (which is nearly two full cores in total).
The list shows a huge number of mysql threads, each consuming between 6% to 8% CPU.
There is also activity from nginx and user konstanti processes (likely PHP scripts via phpfarm), but they are secondary compared to the database.
There are several potential solutions.
Budget: 1000 UAH Deadline: 3 days
Good day!
We have encountered a problem with the VPS hanging due to high MySQL load, likely from an external parser. I am ready to analyze the logs and set up request limiting rules to stabilize the server's operation. I have experience in optimizing MySQL and configuring servers.
Message me privately, and we will clarify the details.
Budget: 800 UAH Deadline: 1 day
Hello
We have already collaborated
I will set everything up now
Message me privately
I will start right away
Budget: 1000 UAH Deadline: 1 day
Good day, I have successful experience in solving similar tasks, for discussion please write to me in private messages.
Budget: 2000 UAH Deadline: 1 day
Hello. I have a good understanding of VPS, and I can perform analysis on databases. Feel free to contact me, most often this can be overcome.
Budget: 12100 UAH Deadline: 2 days
Please let us know which hosting/panel you are currently using (cPanel/ISPmanager/other) and if Cloudflare is connected? Will you be able to provide access to the panel or at least screenshots from the latest MySQL load peaks — this is enough to identify the source of parsing and adjust the limits.
We have experience in quickly resolving such "hangs": we set up rate limiting and bot blocking (nginx/Cloudflare/fail2ban), connection limits, caching, as well as basic MySQL optimization (slow queries, indexes). We work with MySQL and Redis; Python/JS — 4 years in production.
We are ready to start today: we will conduct a short audit and immediately set rules so that MySQL does not overload the server. Write to us — we will agree on access and start.
Proposals are currently absent
Proposals concealed
-
Serhii Motchany 4 MayДоброго дня.
Підкажіть:
1. Який у вас хостинг?
2. Скільки у вас сайтів на VPS і яка у них CMS.
Дякую.
Current freelance projects in the category Databases & SQL
There is an active production platform with a catalog and automatic updates of external offers and prices. Stack: — Node.js / TypeScript; — PostgreSQL; — existing price refresh service and cron; — separate ready Python module for validation and selection of offers; — staging and production. It is necessary to make targeted improvements to the existing price refresh pipeline without completely rewriting the backend. MANDATORY SCOPE 1. Integration of the Python module — The Python module remains a separate component; — returns a structured result: offers, selected offer, statuses, and risk flags; — Node.js validates the result and performs a write to the database; — provide for error handling and partial/failed runs; — the legacy pipeline is not turned off until QA is completed. 2. Launch refresh by list Add launch: — by one slug/id; — by the provided list of slug/id. Assume CLI or existing service API. A new user interface is not required. 3. Shadow Mode New results must be recorded separately and not affect production until QA. Shadow fields required: — price; — selected offer ID; — direct URL; — offer status; — risk/QA flags; — checkedAt; — engineVersion. 4. Expanding the existing offers table Add: — source; — external_offer_id; — last_seen_at; — last_checked_at; — engine_version; — risk flags or storage in existing JSON; — unique constraint to protect against duplicates. It is not required to create a new parallel offer system if the existing table can be safely expanded. 5. UPSERT, STALE, and DB transaction Replace the current DELETE → CREATE scheme: — UPSERT existing and new offers; — offers missing in the full successful snapshot are translated to STALE; — in case of API error, partial result, or incomplete snapshot, active offers should not become STALE; — updating offers, selected offer metadata, and shadow fields for one model is performed within one DB transaction; — in case of an error, a full rollback is performed. 6. Canonical-safe refresh Price refresh should not change: — brand; — reference; — model; — collection; — name/title; — slug; — descriptions; — images; — SEO fields. Only offer, price, and shadow data are updated. 7. Preserving current cron logic Preserve: — existing cron; — rolling batches; — cooldown; — checking PRICE_REFRESH_MIN_DAYS before calling the external API; — legacy production pipeline until Shadow QA is completed. 8. Audit output One option is sufficient: — shadow columns in the existing admin table; or — CSV export. Minimum data: — model/reference; — production price; — shadow price; — delta; — production/shadow URL; — status; — risk flags; — checkedAt; — engineVersion. A new complex dashboard is not required. 9. Staging and QA — DB migrations; — staging deployment; — smoke test on 5 provided models; — then Shadow Mode on approximately 50 models; — fixing technical errors identified during these runs; — brief documentation of the Python → Node.js contract and rollback procedure. OPTIONALLY ASSESS SEPARATELY Simple technical promotion without a new UI: — promotion of one model by slug; — promotion of a list of slugs; — transferring confirmed shadow values to production; — technical check after rollout. RESULT — Pull Request; — DB migrations; — working integration Python → Node.js; — Shadow Mode; — UPSERT, STALE, and transactional update; — launch by slug/id; — staging deployment; — smoke-test results; — brief documentation; — at least 7 days of bug fixes for the implemented scope after acceptance. IN RESPONSE, INDICATE 1. Fixed price for the mandatory scope. 2. Separate cost for the promotion mechanism. 3. Timeline. 4. Hourly estimate. 5. When you are ready to start. 6. Experience with PostgreSQL transactions, migrations, and ingestion pipelines. 7. What questions need to be clarified before starting. 8. Whether staging, QA, migrations, and bug-fix period are included. Template responses without specific estimates will not be considered. Access to production is not provided at the first stage. Work begins with limited code review and staging.
A centralized server system for collecting and storing data from Planfix, 1C, Meta Ads, and Google Ads is needed, as well as a web dashboard for displaying and analyzing this data. All data, change history, calculations, and aggregated metrics must be stored exclusively in the server database. The dashboard should not store or duplicate business data. It must retrieve the necessary information from the server database via API according to user requests and display it in the form of KPIs, charts, tables, and detailed reports.
We are looking for support for a project based on Yii , we need to make edits and improvements to the database, there is partially a connection with the previous contractor .....................
It is necessary to migrate the database from CRM G-PLUS to MyChatBot Database volume - 26 thousand leads 2 funnels - Call center and Sales department with their own funnels Lead cards (besides name and number) have many different fields Leads also have voice recordings of calls. These also need to be transferred I expect an approximate amount and implementation timeline from the candidate
Create a dashboard for monitoring and analyzing the performance of the company's location network (branches) in Google Business Profile (GBP) through the official Google Business Profile API. Process via a script based on Google Apps Script (link to Google Sheets). Record data in Google Sheets (which serves as a database for Looker Studio). Update: Daily (with an indication of the last update date). Create a Google Cloud service account. The script runs once a day (trigger at 03:00 AM) and sends a request to the GBP API. It retrieves metrics for the previous day for each location (locationId). Records data in a flat format (row = unique combination of Date + Branch ID + Metrics). Key Performance Indicator CardsCard NameGBP MetricDynamic FormatProfile ViewsImpressions (Search + Maps)Percentage %, Sparkline (blue)CallsLocal Services Phone CallsPercentage %, Sparkline (green)Website ClicksWebsite ClicksPercentage %, Sparkline (purple)Direction RequestsDirection RequestsPercentage %, Sparkline (orange)Average RatingAverage Review RatingAbsolute change (e.g., +0.1), Sparkline (yellow)New ReviewsNew Reviews CountPercentage %, Sparkline (turquoise)