proposal
HTTP Parser
proposal | HTTP Parser | |
---|---|---|
5 | 8 | |
697 | 6,115 | |
2.3% | - | |
7.5 | 0.0 | |
4 days ago | almost 2 years ago | |
C | ||
Apache License 2.0 | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
proposal
- gRPC Name Resolution & Load Balancing on Kubernetes: Everything you need to know (and probably a bit more)
- Why HTTP/3 is eating the world
-
eBPF will help solve service mesh by getting rid of sidecars
Not convinced that this a better solution then just implementing most of these features as part of the protocol. Most languages already support grpc load balancing.
https://github.com/grpc/proposal/blob/master/A27-xds-global-...
-
Why gRPC for microservices communication?
The future of gRPC load balancing is proxy less using the xDS APIs of Envoy. More info here. But as of now, there is no straightforward solution since there are no xDS management servers supporting this unless you are on GKE where you can use Traffic Director. Istio has experimental support, and it is said that it works, but it might require some manual configuration. If Go is fine for you, you could also be using go-control-plane, but definitely, the ecosystem around gRPC and xDS does not seem to be mature enough.
- Why Load Balancing Grpc Is Tricky
HTTP Parser
-
eBPF will help solve service mesh by getting rid of sidecars
It looks not too different from the majority of HTTP parsers out there written in C. Here is an example of NodeJS [0].
[0] https://github.com/nodejs/http-parser/blob/main/http_parser....
-
C in Web Dev
NodeJS's HTTP parser used to be a handwritten C lib: http-parser
-
The history and reasons behind CORS, and how to use it
Whoa, I didn't know that! But yeah, it seems like https://github.com/nodejs/http-parser is based on nginx. It now uses https://github.com/nodejs/llhttp but has some of the same legacy.
On the other hand, deno's HTTP stuff is built on top of Hyper, a Rust library https://github.com/hyperium/hyper
-
A Universal I/O Abstraction for C++ (2020)
Boost.Beast has its own HTTP parser[0], during the development of which Vinnie Falco (the principle author of Beast) found many bugs/inconsistencies in Node.js's own parser[1]
[0] https://www.boost.org/doc/libs/develop/libs/beast/doc/html/b...
[1] https://github.com/nodejs/http-parser/issues?q=is%3Aissue+au...
-
How to pass ownership of std::function object to function pointer?
For cases where it is necessary to pass local information to/from a callback, the http_parser object's data field can be used.
-
Plain Text Protocols
Legacy HTTP/1.1 suffers a few issues, see the current RFC errata:
https://www.rfc-editor.org/errata_search.php?rfc=7230&rec_st...
There are issues particularly around how whitespace and obsolete line folding should be handled
https://github.com/nodejs/http-parser/issues?q=is%3Aissue+wh...
https://github.com/httpwg/http-core/issues/53
It's not as trivial as a few string splits.
-
Looking for good http parser in C++ or C
There's picohttpparser and the one used in node.js: https://github.com/nodejs/http-parser
What are some alternatives?
ngx-grpc - Angular gRPC framework
llhttp - Port of http_parser to llparse
kill-zscaler - Kill Zscaler without password or jail Zscaler in a virtual machine
C++ Format - A modern formatting library
membrane_core - The core of the Membrane Framework, advanced multimedia processing framework
American Fuzzy Lop - american fuzzy lop - a security-oriented fuzzer
pixie - Instant Kubernetes-Native Application Observability
semver.c - Semantic version in ANSI C
re - Recursive search and replace tool
PHP CPP - Library to build PHP extensions with C++
natter - [EXPERIMENTAL] A peer-to-peer TCP port forwarding library using NAT traversal with QUIC
stb - stb single-file public domain libraries for C/C++