指南

什么是服务器?面向应用构建者的通俗指南

服务器是一台计算机,或者运行在计算机上的一个程序,它等待请求并作出响应。当你打开一个网站时,你的浏览器(即客户端)会通过互联网发送一个请求,然后某个地方的服务器会把页面、图片或数据发送回来。从电子邮件到网上银行,你使用的每一个应用,都依赖服务器每天数百万次地完成这项工作。

用 AI 构建应用时,为什么服务器很重要

当 AI 生成工具为你制作应用时,一部分代码运行在访客的浏览器中,另一部分通常运行在服务器上。服务器那部分负责那些浏览器既不能被信任、也无法独自完成的工作:

  • 保存和读取数据,与数据库交互。
  • 保管密钥,比如支付或 AI 服务商的 API 密钥,这些密钥绝不能到达浏览器。
  • 检查权限,确保用户只能查看和修改自己的记录。
  • 与其他服务通信:扣款、发送邮件、调用 AI 模型。

了解服务器的作用,有助于你弄清应用的规则究竟存放在哪里,为什么某些修改需要重新发布,以及托管一个应用时你究竟在为什么付费。关于两部分之间的分工,参见前端与后端。

日常类比

服务器就像邮局的柜台工作人员。他们不会主动去找顾客,而是等待。顾客走过来提出请求,比如“帮我寄这个包裹”或“我有没有邮件?”,工作人员处理后把结果交还给顾客。一位工作人员可以依次服务许多顾客,而繁忙的邮局则会开设更多的柜台。

邮局还有顾客无法越过的规则:取包裹必须出示身份证明。在应用中,服务器也扮演着这样的角色:浏览器可以请求任何东西,但由服务器决定最终能拿到什么。

请求如何到达服务器

当有人访问 https://bookings.example.com/schedule 时:

  1. DNS 查询。 浏览器向域名系统询问 bookings.example.com 指向哪个 IP 地址。参见域名和 DNS 如何工作。
  2. 建立连接。 浏览器通过 443 端口(HTTPS)连接到该地址,并建立加密连接。参见什么是 HTTPS 和 SSL。
  3. 发送请求。 它发送一个 HTTP 请求:GET /schedule。
  4. 处理工作。 服务器运行负责处理 /schedule 的代码,比如从数据库中查询今天的预约。
  5. 返回响应。 它发回一个状态码(200 OK)和内容,可能是一个 HTML 页面,也可能是供页面显示的 JSON 数据。

整个过程通常只需要几分之一秒。

你会听到的几种服务器

术语含义
Web 服务器响应 HTTP 请求的软件,负责发送文件,或把请求转交给你应用的代码。
应用服务器 / 后端运行你自己代码的服务器:处理预约、登录和支付的 API。
数据库服务器专门负责存储和查询数据的服务器,比如你的应用所连接的 Postgres 数据库。
文件 / 静态服务器发送现成的文件(HTML、图片、脚本),而无需为每个请求运行自定义代码。
物理服务器位于数据中心机架上的一台实际机器。
虚拟机(VM)/ VPS物理机器的一部分,表现得像一台独立的计算机。
容器将应用及其所需的一切打包在一起、运行在共享机器上的轻量包。许多平台都以这种方式部署应用。
无服务器(Serverless)你上传代码,由服务商按需运行,运行所在的服务器你无需管理。参见什么是无服务器。

请注意,“服务器”既指机器,也指程序。“服务器崩溃了”这句话可能指两者中的任何一个。

实际例子:一个美发店预约应用

以下是服务器在一个小型美发店预约应用中所做的工作:

  • 访客打开网站。服务器(或其前面的 CDN)发送页面文件。
  • 页面向服务器请求 GET /api/slots?date=2026-10-03。服务器查询数据库中的空闲时段,并以 JSON 形式返回。
  • 访客预约了 14:00。页面发送 POST /api/bookings。服务器检查该时段是否仍然空闲(它不会盲目相信浏览器的说法),保存预约,并返回 201 Created。
  • 服务器使用保存在服务器端的私密密钥调用邮件服务,发送确认邮件。

如果把服务器关掉,页面或许仍能从 CDN 加载,但它无法显示时段,也无法保存预约。

服务器运行良好需要什么

  • 内存(RAM)和 CPU。 内存太少,应用在高负载下会崩溃;CPU 太少,应用会变慢。
  • 保持运行。 关闭的服务器无法响应请求。有些平台会让闲置的应用进入休眠,并在下一次访问时唤醒,这样可以节省费用,但第一次请求可能会更慢。
  • 配置和密钥,通过环境变量提供。
  • 日志,即服务器对所发生事情的记录,出问题时你首先应该查看的地方。
  • 更新和安全补丁,托管服务通常会替你处理。

常见误解

  • “云就意味着没有服务器。” 云是其他公司的服务器,你按小时或按用量租用。
  • “服务器是一台大型特殊计算机。” 任何计算机都可以充当服务器。当你在开发时打开 localhost,你的笔记本电脑就在运行一台服务器。
  • “如果按钮被隐藏了,用户就无法操作。” 任何人都可以直接向你的服务器发送请求。权限检查必须在服务器上进行,而不能只依赖页面。
  • “增加服务器就能解决慢的问题。” 很多时候真正的原因是缓慢的数据库查询或外部 API。应先找到瓶颈。
  • “我必须自己管理服务器才能拥有应用。” 托管平台会替你运行服务器;你只需部署代码,机器由它们负责。

向 AI 生成工具提出的要求

  • “这个应用的哪些部分在服务器上运行,哪些在浏览器中运行?”
  • “把所有 API 密钥保留在服务器上,并从环境变量中读取。”
  • “对每一个读取或修改数据的请求,都在服务器上检查权限。”
  • “服务器日志在哪里查看?它们对这个错误有什么说明?”
  • “这个应用真的需要服务器吗,还是可以只做成静态网站?”
  • “应用闲置一段时间之后,第一次请求会发生什么?”

Mythex 中的服务器

在 Mythex 中,你不需要搭建或管理服务器。在构建过程中,你的应用会运行在一个私有的云端沙盒中,用于实时预览。发布时,Mythex 会进行部署:静态前端部署为静态站点,后端(Node、Python、C#、Java 等)则根据 Dockerfile 构建成容器,你无需自己配置任何托管。Mythex 在部署时会选择机器规格:默认为 1 个 CPU 和 512 MB 内存,可按需提供更多(免费版最高 1 GB,Pro 版最高 2 个 CPU、4 GB 内存和 3 台机器)。已发布的应用在闲置时会休眠,并在下一次访问时唤醒,休眠中的应用不产生计算费用。详情请参阅文档中的 API 后端和托管限制,而我们的网站托管指南则涵盖了更广泛的内容。

常见问题

简单来说,什么是服务器?

服务器是一台计算机,或者运行在计算机上的一个程序,它等待其他设备发来的请求并作出响应。当你打开一个网站时,浏览器会向服务器请求页面,服务器再把页面发送回来。

服务器是实体机器还是软件?

两种含义都会用到。“服务器”既可以指物理或虚拟的计算机,也可以指其上处理请求的程序,比如网络服务器。如今大多数应用运行在云服务商数据中心的虚拟机或容器中,而不是运行在你自己拥有的硬件上。

每个网站都需要服务器吗?

需要,总得有什么东西把文件发送给访客。静态网站只需要一个简单的文件服务器或 CDN。而一个会保存数据、处理登录或保管 API 密钥的应用,还需要一台运行你自己代码的后端服务器。

localhost 是什么意思?

localhost 的意思是“这台同一台计算机”。开发者在自己的机器上运行应用时,会通过类似 http://localhost:3000 的地址打开它。只有那台计算机能访问它;在部署到公共服务器之前,其他人都看不到。

Mythex · Pricing · 用 AI 构建任何东西 · 网站和应用模板 · Mythex 对比 · AI 应用构建术语表 · 免费的 AI 应用构建工具 · English

English አማርኛ العربية Български বাংলা Bosanski Català Čeština Dansk Deutsch Ελληνικά Español Español (España) Eesti فارسی Suomi Français Français (Canada) ગુજરાતી हिन्दी Hrvatski Magyar Հայերեն Bahasa Indonesia Íslenska Italiano 日本語 ქართული Қазақ тілі ಕನ್ನಡ 한국어 Lietuvių Latviešu Македонски മലയാളം Монгол मराठी Bahasa Melayu မြန်မာ Norsk bokmål Nederlands ਪੰਜਾਬੀ Polski Português (Brasil) Português (Portugal) Română Русский Slovenčina Slovenščina Soomaali Shqip Srpski Svenska Kiswahili தமிழ் తెలుగు ไทย Tagalog Türkçe Українська اردو Tiếng Việt 繁體中文(香港) 繁體中文(台灣)