Какво е сървър? Ясно ръководство за строители на приложения
Сървърът е компютър — или програма, която работи на компютър — който чака заявки и им отговаря. Когато отворите уебсайт, браузърът ви (клиентът) изпраща заявка през интернет, а някакъв сървър някъде изпраща обратно страницата, изображенията или данните. Всяко приложение, което ползвате — от имейл до онлайн банкиране, — разчита на сървъри, които правят това милиони пъти на ден.
Защо сървърите са важни, когато строите с AI
Когато AI платформа ви създава приложение, част от кода работи в браузъра на посетителя, а част обикновено работи на сървър. Частта на сървъра върши онова, на което браузърът не може да се довери или не може да извърши сам:
- Записване и зареждане на данни от база данни.
- Пазене на тайни, като ключове за API на плащания или AI доставчици, които никога не трябва да стигат до браузъра.
- Проверка на правата — гарантиране, че потребителят вижда и променя само своите записи.
- Комуникация с други услуги: таксуване на карта, изпращане на имейл, извикване на AI модел.
Знанието какво прави сървърът ви помага да разберете къде реално живеят правилата на приложението, защо някои промени изискват ново публикуване и за какво плащате, когато хоствате приложение. За разделението между двете части вижте фронтенд срещу бекенд.
Ежедневна аналогия
Сървърът е като служител на гишето в пощата. Той не търси клиенти; чака. Клиентът (клиентът на заявката) идва с искане — „изпрати този пакет“, „има ли писма за мен?“ — и служителят го обработва и връща резултат. Един служител може да обслужва много клиенти един след друг, а натоварената поща отваря още гишета.
Пощата също има правила, които клиентът не може да заобиколи: за да получите пратка, трябва да покажете документ. Това е работата на сървъра и в приложението — браузърът може да поиска каквото си иска, но сървърът решава какво ще получи.
Как една заявка стига до сървъра
Когато някой посети https://bookings.example.com/schedule:
- DNS търсене. Браузърът пита системата за имена на домейни към кой IP адрес сочи
bookings.example.com. Вижте как работят домейните и DNS. - Връзка. Браузърът се свързва с този адрес, на порт 443 за HTTPS, и установява шифрована връзка. Вижте какво е HTTPS.
- Заявка. Изпраща HTTP заявка:
GET /schedule. - Работа. Сървърът изпълнява кода, който обработва
/schedule— може би търси днешните записвания в базата данни. - Отговор. Връща статус код (
200 OK) и съдържанието — HTML страница или JSON данни, които страницата показва.
Цялото това обикновено отнема част от секундата.
Видове сървъри, които ще чуете
| Термин | Какво означава |
|---|---|
| Уеб сървър | Софтуер, който отговаря на HTTP заявки — изпраща файлове или предава заявките към кода на приложението. |
| Сървър на приложението / бекенд | Вашият собствен код, който работи на сървър: API-то, което обработва записвания, влизания и плащания. |
| Сървър за база данни | Сървър, чиято работа е да съхранява и търси данни — като Postgres базата, с която говори приложението ви. |
| Файлов / статичен сървър | Изпраща готови файлове (HTML, изображения, скриптове) без да изпълнява персонален код за всяка заявка. |
| Физически сървър | Реална машина в стелаж в дата център. |
| Виртуална машина (VM) / VPS | Част от физическа машина, която се държи като собствен компютър. |
| Контейнер | По-лек пакет от приложение и всичко, от което се нуждае, пуснат на споделена машина. Много платформи внедряват приложения така. |
| Serverless | Качвате код, а доставчикът го изпълнява при поискване — на сървъри, които никога не управлявате. Вижте какво означава serverless. |
Имайте предвид, че „сървър“ означава и машината, и програмата. Фразата „сървърът се срина“ може да значи и едното, и другото.
Практически пример: приложение за резервации в салон
Ето какво прави сървърът в малко приложение за резервации в салон:
- Посетител отваря сайта. Сървърът (или CDN пред него) изпраща файловете на страницата.
- Страницата пита сървъра
GET /api/slots?date=2026-10-03. Сървърът заявява свободните часове от базата данни и ги връща като JSON. - Посетителят резервира 14:00. Страницата изпраща
POST /api/bookings. Сървърът проверява дали часът още е свободен — не се доверява на думата на браузъра — записва резервацията и връща201 Created. - Сървърът извиква услуга за имейли с секретен ключ, пазен на сървъра, за да изпрати потвърждение.
Ако изключите сървъра, страницата може още да се зареди от CDN, но няма да може да показва часове или да записва резервации.
Какво е нужно на сървъра, за да работи добре
- Памет (RAM) и процесор (CPU). Твърде малко памет и приложението се срива под натоварване; твърде малко процесор и се забавя.
- Да работи. Сървър, който е изключен, не може да отговаря. Някои платформи приспиват неизползваните приложения и ги събуждат при следващото посещение, което спестява пари, но може първата заявка да е по-бавна.
- Конфигурация и тайни, подадени като променливи на средата.
- Логове — записът на сървъра за случилото се, където първо гледате, когато нещо се счупи.
- Актуализации и мерки за сигурност, за които управляваният хостинг се грижи вместо вас.
Чести заблуди
- „Облакът значи без сървъри.“ Облакът са сървърите на други компании, наети по час или според употребата.
- „Сървърът е голям специален компютър.“ Всеки компютър може да е сървър. Вашият лаптоп работи като такъв, когато отворите
localhostпри разработка. - „Ако бутонът е скрит, потребителите не могат да го натиснат.“ Всеки може да изпрати заявки директно до сървъра ви. Проверките на правата трябва да се извършват на сървъра, не само в страницата.
- „Още сървъри оправят бавността.“ Често истинската причина е бавна заявка към базата данни или външно API. Първо намерете тясното място.
- „Трябва да управлявам сървър, за да имам приложение.“ Управляваните платформи поддържат сървърите вместо вас; вие внедрявате кода, а те се грижат за машините.
Какво да попитате AI платформата
- „Кои части от това приложение работят на сървъра, а кои в браузъра?“
- „Пази всички API ключове на сървъра и ги чети от променливи на средата.“
- „Проверявай правата на сървъра при всяка заявка, която чете или променя данни.“
- „Къде са логовете на сървъра и какво казват за тази грешка?“
- „Изисква ли това приложение изобщо сървър, или може да бъде статичен сайт?“
- „Какво се случва с първата заявка след като приложението е било неактивно?“
Сървъри в Mythex
В Mythex не настройвате и не управлявате сървъри. Докато строите, приложението ви работи в частна облачна среда за живия преглед. Когато публикувате, Mythex го внедрява — статичните фронтенди като статични сайтове, а бекендите (Node, Python, C#, Java и други) като контейнери, построени от Dockerfile — без да трябва сами да конфигурирате хостинг. Mythex избира размера на машината при внедряване: по подразбиране 1 процесор и 512 MB памет, като по заявка има повече (до 1 GB в Free и до 2 процесора, 4 GB и 3 машини в Pro). Публикуваните приложения се приспиват при неактивност и се събуждат при следващото посещение, а приспялото приложение не изразходва изчисления. Подробности има в документацията за API бекенди и ограниченията на хостинга, а нашето ръководство за уеб хостинг описва по-широката картина.
Въпроси
Какво е сървър с прости думи?
Сървърът е компютър или програма, която работи на компютър и чака заявки от други устройства, за да им отговори. Когато отворите уебсайт, браузърът ви пита сървър за страницата, а сървърът я изпраща обратно.
Сървърът е физическа машина или софтуер?
Използват се и двете значения. „Сървър“ може да означава физическия или виртуалния компютър, или програмата на него, която обработва заявките, например уеб сървър. Повечето съвременни приложения работят на виртуални машини или контейнери в дата център на облачен доставчик, а не на собствено железо.
Всеки уебсайт ли се нуждае от сървър?
Да, нещо винаги трябва да изпрати файловете на посетителя. Статичният сайт се нуждае само от прост файлов сървър или CDN. Приложение, което пази данни, обработва влизания или пази секретни API ключове, се нуждае и от бекенд сървър, който изпълнява вашия код.
Какво означава localhost?
Localhost означава „този същият компютър“. Разработчик, който пуска приложение на собствената си машина, го отваря на адрес като http://localhost:3000. Само този компютър може да го достигне; никой друг не го вижда, докато не бъде внедрено на публичен сървър.