|
|
|
|
|
by avitzurel
3996 days ago
|
|
IMHO this solution is nice but wrong.
The point is not just creating a "cool" program with Go that will handle HTTP requests. Without really knowing the company's needs, I am relying on this paragraph from the post: While working on a piece of our anonymous telemetry and analytics system, our goal was to be able to handle a large amount of POST requests from millions of endpoints. The web handler would receive a JSON document that may contain a collection of many payloads that needed to be written to Amazon S3, in order for our map-reduce systems to later operate on this data. Knowing this, I would build it differently. 1. Clients post to S3 Directly
2. Lambda -> Overload business logic, private data, cleanup, spam control etc...
3. Prepare files (64M) for Hadoop
4. Hadoop There's no reason to have that proxy in the middle, Amazon S3 will handle those millions of requests with no real trouble, I wouldn't throw machines on this process. |
|