Hi Shawn,

I don't think Go Report Card is particularly slow, but I have two ideas:

1. Try running the different checks within the process, using the Go API. 
This should reduce the overhead of creating x processes per report card. 
But I don't know if every check has an easy to use Go API.

2. Try mounting the source code using tmpfs. Using in memory files the 
reading of them should be a bit quicker. This does however require more 
memory of course.

If that doesn't work, try profiling your 
code: https://blog.golang.org/profiling-go-programs.

Good luck.

Thomas

Op vrijdag 2 september 2016 15:50:58 UTC+2 schreef Shawn Smith:
>
> Hi,
>
> I'm one of the maintainers of Go Report Card http://goreportcard.com/ and 
> I am looking for advice on how to make it faster.
>
> Basically we run a series of checks (gofmt, vet, etc.) on your Go 
> repository and provide a grade based on how many errors each check returns. 
> Each check runs in a separate goroutine (
> https://github.com/gojp/goreportcard/blob/master/handlers/checks.go#L124), 
> and they are all shelling out using exec.Command (
> https://github.com/gojp/goreportcard/blob/master/check/utils.go#L170).
>
> The server we run this on is a Digital Ocean droplet with 1 GB of RAM 
> (would upgrading it help?)
>
> We normally only see issues on repositories with a very large number of 
> files.
>
> Any help/feedback is appreciated!
> Shawn
>

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to