{"id":14972033,"url":"https://github.com/sdgmf/go-project-sample","last_synced_at":"2025-04-04T16:16:51.678Z","repository":{"id":41239603,"uuid":"198969138","full_name":"sdgmf/go-project-sample","owner":"sdgmf","description":"Introduce the best practice experience of Go project with a complete project example.通过一个完整的项目示例介绍Go语言项目的最佳实践经验.","archived":false,"fork":false,"pushed_at":"2024-01-25T09:17:56.000Z","size":544,"stargazers_count":537,"open_issues_count":5,"forks_count":104,"subscribers_count":16,"default_branch":"master","last_synced_at":"2025-03-28T15:11:10.700Z","etag":null,"topics":["best","best-practice","consul","dashboard","dependency-injection","example","gin","golang","gorm","grafana","grpc","inject","jaeger","micro","microservice","opentracing","practice","prometheus","sample","wire"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sdgmf.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-07-26T07:29:03.000Z","updated_at":"2025-03-12T02:42:50.000Z","dependencies_parsed_at":"2024-06-18T20:03:12.144Z","dependency_job_id":"5f366925-00e9-43a3-8223-b40d01f4c4c2","html_url":"https://github.com/sdgmf/go-project-sample","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sdgmf%2Fgo-project-sample","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sdgmf%2Fgo-project-sample/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sdgmf%2Fgo-project-sample/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sdgmf%2Fgo-project-sample/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sdgmf","download_url":"https://codeload.github.com/sdgmf/go-project-sample/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247208183,"owners_count":20901570,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["best","best-practice","consul","dashboard","dependency-injection","example","gin","golang","gorm","grafana","grpc","inject","jaeger","micro","microservice","opentracing","practice","prometheus","sample","wire"],"created_at":"2024-09-24T13:46:15.823Z","updated_at":"2025-04-04T16:16:51.650Z","avatar_url":"https://github.com/sdgmf.png","language":"Go","readme":"\n通过一个完整的项目的示例，从项目的结构、分层思想、依赖注入、错误处理、单元测试、服务治理、框架选择等方面介绍Go语言项目的最佳实践经验.\n项目分为products、details、ratings、reviews四个微服务,依赖关系如下.\n\n![dependency](https://sdgmf.github.io/images/goproject_dep.jpg)\n\n## 准备\n\n安装docker,go,[jsonnet](https://jsonnet.org/)\n\n## 快速开始\n下载项目\n```bash\n    git clone https://github.com/sdgmf/go-project-sample.git\n    cd go-project-sample\n    git submodule init\n    git submodule update\n    make docker-compose\n```\n\n* **访问接口**： http://localhost:8080/product/1\n* **consul**: http://localhost:8500/\n* **grafana**: http://localhost:3000/ \n* **jaeger**: http://localhost:16686/search\n* **Prometheus**: http://localhost:9090/graph\n* **AlertManager**: http://localhost:9093\n\n\n## 截图\n\nGrafana Dashboard,可以自动生成!\n\n![dashboard](./doc/images/grafana_dashboard.jpg)\n\n![dashboard1](./doc/images/grafana_dashboard1.jpg)\n\nPrometheus Alert 监控告警,自动生成！\n\n![alert](./doc/images/alert.jpg)\n\n![alert](./doc/images/alert1.jpg)\n\n调用链跟踪\n\n![jaeger](./doc/images/jaeger.jpg)\n\n![jaeger](./doc/images/jaeger1.jpg)\n\n\n更新更新更新\n## [中文文档](https://sdgmf.github.io/goproject/)\n\n\n更新更新更新\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsdgmf%2Fgo-project-sample","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsdgmf%2Fgo-project-sample","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsdgmf%2Fgo-project-sample/lists"}