计算器服务演示

一个简单的Python项目,通过两种客户端-服务器通信模式(服务器发送事件和标准输入/输出)演示计算器操作,适合学习基本的客户端-服务器架构和Python中的双模式通信。

  • by DionBenFernandes-Dev
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 dionbenfernandes-dev/simpleserversetup

使用说明

SimpleServer设置

一个简单的Python项目,通过两种客户端-服务器通信模式演示计算器操作: 服务器发送事件(SSE) 和 **标准输入/输出(STDIO)**这个项目非常适合学习Python中的基本客户端-服务器架构和双模通信。


文件结构

SimpleServerSetup/
├── .gitignore
├── .python-version
├── README.md
├── client-sse.py
├── client-stdio.py
├── pyproject.toml
├── requirements.txt
├── server.py
├── uv.lock
  • .gitignore:指定Git要忽略的文件和目录。
  • .python版本:Python版本管理文件。
  • README.md:项目文件。
  • 客户端-sse.py:Python客户端使用服务器发送事件(SSE)与服务器通信。
  • 客户端数据库.py:使用标准输入/输出(STDIO)进行命令行交互的Python客户端。
  • pyproject.toml:项目元数据和构建配置。
  • 需求.txt:列出所需的Python包。
  • 服务器.py:支持SSE和STDIO模式的主服务器逻辑。
  • uv.lock:可复制环境的依赖锁定文件。

关键术语

  • 服务器发送事件(SSE):一种网络技术,使服务器能够通过HTTP向客户端推送实时更新。
  • 标准输入/输出(STDIO):终端中用户交互的传统方法,通过键盘提供输入,并将输出打印到屏幕上。

项目如何运作

SimpleServer设置 允许您以两种模式运行计算器服务:

  • SSE模式:

    • 服务器(server.py)启动SSE的HTTP端点。
    • SSE客户(client-sse.py)连接到服务器,发送计算请求,并以实时事件流的形式接收结果。
    • 适用于需要实时更新的基于web或网络的应用程序。
  • STDIO模式:

    • 服务器(server.py)还可以处理来自命令行客户端的请求(client-stdio.py).
    • 客户端通过标准输入发送表达式,并通过标准输出接收结果。
    • 非常适合直接从终端进行快速本地计算。

这两种模式使用相同的服务器逻辑,确保一致的计算行为。


安装与使用

先决条件:

  • Python 3.7或更高版本

安装:

git clone https://github.com/DionBenFernandes-Dev/SimpleServerSetup.git
cd SimpleServerSetup
pip install -r requirements.txt

运行项目:

  • 启动服务器:

    python server.py
    
  • 使用STDIO客户端:

    python client-stdio.py
    

    按照提示输入表达式并立即接收结果。

  • 使用SSE客户端:

    python client-sse.py
    

    此客户端将连接到服务器并通过SSE处理计算。