forked from valyala/fasthttp
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdoc.go
More file actions
58 lines (34 loc) · 1.48 KB
/
Copy pathdoc.go
File metadata and controls
58 lines (34 loc) · 1.48 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
/*
Package fasthttp provides fast HTTP server and client API.
Fasthttp provides the following features:
1. Optimized for speed. Easily handles more than 100K qps and more than 1M
concurrent keep-alive connections on modern hardware.
2. Optimized for low memory usage.
3. Easy 'Connection: Upgrade' support via RequestCtx.Hijack.
4. Server provides the following anti-DoS limits:
- The number of concurrent connections.
- The number of concurrent connections per client IP.
- The number of requests per connection.
- Request read timeout.
- Response write timeout.
- Maximum request header size.
- Maximum request body size.
- Maximum request execution time.
- Maximum keep-alive connection lifetime.
- Early filtering out non-GET requests.
5. A lot of additional useful info is exposed to request handler:
- Server and client address.
- Per-request logger.
- Unique request id.
- Request start time.
- Connection start time.
- Request sequence number for the current connection.
6. Client supports automatic retry on idempotent requests' failure. Client
response bodies are buffered by default; set Client.MaxResponseBodySize
when requesting untrusted servers, since a non-positive value disables the
limit.
7. Fasthttp API is designed with the ability to extend existing client
and server implementations or to write custom client and server
implementations from scratch.
*/
package fasthttp