https://github.com/nmashchenko/grpcclientserver
🐳 GRPCClientServer is a powerful application written in the Go programming language that enables developers to build high-performance client-server systems using the gRPC framework. This application leverages the unique features of Go to create scalable and reliable distributed systems that can handle high volumes of traffic and data.
https://github.com/nmashchenko/grpcclientserver
golang grpc protobuf
Last synced: about 2 months ago
JSON representation
🐳 GRPCClientServer is a powerful application written in the Go programming language that enables developers to build high-performance client-server systems using the gRPC framework. This application leverages the unique features of Go to create scalable and reliable distributed systems that can handle high volumes of traffic and data.
- Host: GitHub
- URL: https://github.com/nmashchenko/grpcclientserver
- Owner: nmashchenko
- Created: 2022-11-01T23:03:15.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2022-11-02T04:27:46.000Z (over 3 years ago)
- Last Synced: 2025-06-07T17:08:54.191Z (about 1 year ago)
- Topics: golang, grpc, protobuf
- Language: Go
- Homepage:
- Size: 55.7 KB
- Stars: 0
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.MD
Awesome Lists containing this project
README
# LocatingRecordsInLogs-gRPC
A distributed program for locating requested records in the log files using gRPC.
---
Name: Nikita Mashchenko
---
### Development Environment
+ Windows 10
+ GO version 1.19.2
+ IntelliJ IDEA Ultimate
## Entire Setup of the Project:
### Steps to Run the gRPC Application
- Clone the github repo on your local machine.
- Open the command line at the root of the project.
- Enter protoc --proto_path=proto proto/*.proto --go_out=gen/proto/ (if not already created) or use makefile
- Enter protoc --proto_path=proto proto/*.proto --go-grpc_out=gen/proto/ (if not already created) or use makefile
- cd into server and do : go run server.go
- in case server did'nt start, perform required installations like go get google.golang.org/grpc
- open another terminal, cd into client and do : go run client.go
- enter the required time and delta time to run the application
## Overview
The GRPC client make a request to the server, and server make request to API gateaway that is redirected to GET request where lambda function calculates
if desired input is in file and returns following:
If the logs are present, the response returned is the md5 hash of logs with a statusCode of 200.
If no logs were present in the timerange, the response is a 400-level message with a message that logs were not present in the time range.
## Output
When logs are not present:

When logs are present:

## All repos:
https://github.com/exortme1ster/AkkaLogsHandler
https://github.com/exortme1ster/GRPCClientServer
https://github.com/exortme1ster/LogFileGenerator
https://github.com/exortme1ster/pythonLambda
## Video:
https://www.youtube.com/watch?v=fmeBeOcpBy0