from gevent import monkey monkey.patch_all() from http.server import SimpleHTTPRequestHandler from gevent.pywsgi import WSGIServer def app(environ, start_response): response_body = b'Hello, World!' status = '200 OK' headers = [('Content-Type', 'text/plain'), ('Content-Length', str(len(response_body)))] start_response(status, headers) return [response_body] http_server = WSGIServer(('', 8000), app) if __name__ == '__main__': http_server.serve_forever()
import gevent from gevent import socket def handle_client(client_socket): data = client_socket.recv(1024) client_socket.sendall(data) client_socket.close() def run_server(): server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM) server_socket.bind(('127.0.0.1', 8000)) server_socket.listen(50) while True: client_socket, address = server_socket.accept() gevent.spawn(handle_client, client_socket) if __name__ == '__main__': run_server()This example shows how to implement a simple TCP echo server using the gevent library. The code defines a `handle_client()` function that reads data from a client socket and sends it back to the client. Then it defines a `run_server()` function that listens for incoming connections and spawns a new greenlet to handle each incoming client. Finally, it starts the server and runs it forever. Package library: gevent.