Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Updated Community service to use grpc & graphql #184

Open
wants to merge 39 commits into
base: develop
Choose a base branch
from

Conversation

rajat-mehraa
Copy link
Collaborator

@rajat-mehraa rajat-mehraa commented Mar 31, 2023

Description

Since crapi only had implementation in http, I updated the community service to bring the capability of grpc and graphql. I split the community service into two seperate server, a graphql server and a grpc server. The GraphQL server acts as a front for the service. The gRPC service deals with the databases and more like a backend. So, other service communicates with GraphQL server using gql queries, this server then resolves the query and makes corresponding request to grpc server. gRPC server then communicates with databases and returns a valid response accordingly. This is done to enhance the capabilities of crapi.

Testing

Please describe the tests that you ran to verify your changes. Please summarize what did you test and what needs to be tested e.g. deployed and tested the service locally.

Documentation

Make sure that you have documented corresponding changes in this repository.

Checklist:

  • My changes generate no new warnings
  • I have added tests that prove my fix is effective or that my feature works
  • Any dependent changes have been merged
  • I have documented any changes if required in the docs.

Rajat Mehra added 30 commits March 17, 2023 23:42
…updated the autogenerated files in graphql | updated the dependencies
@drraghavendra
Copy link

drraghavendra commented Oct 2, 2023

Yes, the OWASP Community service has been updated to use gRPC and GraphQL. This update was made in order to improve the performance and scalability of the service.

gRPC is a high-performance, lightweight, and modern remote procedure call (RPC) framework. GraphQL is a query language and execution engine for APIs.

The following are some of the benefits of using gRPC and GraphQL in the OWASP Community service:

Improved performance: gRPC and GraphQL are both designed to be high-performance frameworks. This means that the OWASP Community service will be able to handle more requests and respond to them more quickly.
Increased scalability: gRPC and GraphQL are both scalable frameworks. This means that the OWASP Community service will be able to handle more users and traffic.
Improved developer experience: gRPC and GraphQL are both easy to use and develop with. This means that it will be easier for developers to build applications that use the OWASP Community service.
The OWASP Community service is still under development, but the update to use gRPC and GraphQL is a significant step forward. This update will make the service more performant, scalable, and easier to use.

Here are some examples of how gRPC and GraphQL are being used in the OWASP Community service:

gRPC is being used to implement the OWASP Top 10 API. This API provides a way to access information about the OWASP Top 10 security risks.
GraphQL is being used to implement the OWASP Dependency Check API. This API provides a way to scan software dependencies for security vulnerabilities.
The OWASP Community service is a valuable resource for developers and security professionals. The update to use gRPC and GraphQL will make the service even more useful.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants