{"id":24969282,"url":"https://github.com/yianandcode/snowflake-grpc","last_synced_at":"2025-07-01T01:38:22.837Z","repository":{"id":85968896,"uuid":"138148328","full_name":"YianAndCode/snowflake-grpc","owner":"YianAndCode","description":"Snowflake gRPC Server(Golang) and Client(PHP)","archived":false,"fork":false,"pushed_at":"2025-03-13T03:25:27.000Z","size":347,"stargazers_count":16,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-11T04:41:33.836Z","etag":null,"topics":["golang","grpc","grpc-php","php","snowflake"],"latest_commit_sha":null,"homepage":"https://yian.me/blog/cs/snowflake-intro.html","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/YianAndCode.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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,"zenodo":null}},"created_at":"2018-06-21T09:20:21.000Z","updated_at":"2025-04-09T10:13:02.000Z","dependencies_parsed_at":null,"dependency_job_id":"6c77587e-af89-4ea3-9a33-386b37d2162c","html_url":"https://github.com/YianAndCode/snowflake-grpc","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/YianAndCode/snowflake-grpc","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/YianAndCode%2Fsnowflake-grpc","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/YianAndCode%2Fsnowflake-grpc/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/YianAndCode%2Fsnowflake-grpc/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/YianAndCode%2Fsnowflake-grpc/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/YianAndCode","download_url":"https://codeload.github.com/YianAndCode/snowflake-grpc/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/YianAndCode%2Fsnowflake-grpc/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":262880460,"owners_count":23378792,"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":["golang","grpc","grpc-php","php","snowflake"],"created_at":"2025-02-03T14:36:56.621Z","updated_at":"2025-07-01T01:38:22.801Z","avatar_url":"https://github.com/YianAndCode.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Snowflake gRPC\n\n## 介绍\n本项目为 Snowflake 算法在 gRPC 中的实现，server 采用 Golang 编写，示例 client 采用 PHP 编写(`client/`)。\n\n## 使用方法（Server）\n\n### 编译\n\nmacOS/Linux 执行\n```bash\n./build.sh\n```\n\nWindows 执行：\n```bash\n./build.bat\n```\n\n编译后的可执行程序将会输出到 `bin/`\n\n### 配置\n\n在可执行程序同一目录一下保存一份名为 `config.json` 的配置文件，示例：\n\n```JSON\n{\n    \"server\": \"127.0.0.1\",\n    \"nodeId\": 1,\n    \"port\": 6666\n}\n```\n\n*也可以直接复制 `config.json.example` 到 `bin/` 并改名为 `config.json`*\n\n### 运行\n\n```bash\ncd bin\n./snowflake-grpc-server\n```\n\n### Docker\n\n```\n# 拉取镜像\ndocker pull mryian/snowflake-grpc-server:latest\n\n# 启动容器\ndocker run --restart=always -d --name snowflake -p 6666:6666 mryian/snowflake-grpc-server:latest\n# 或者\ndocker run --restart=always -d --name snowflake -v ./config.json:/config.json -p 6666:6666 mryian/snowflake-grpc-server:latest\n```\n\n## 使用方法（Client）\n\n### 安装依赖\n\n通过 composer 安装依赖和编译自动加载\n\n```bash\ncd client\ncomposer install \u0026\u0026 composer dumpautoload\n```\n\n*因为 protobuf 的 PHP 扩展截止目前（2018.06.21）还不支持 Windows，如果是 Windows 下运行，则还需要用 composer 安装 protobuf 依赖：*\n\n```bash\ncomposer require google/protobuf\n```\n\n### 运行\n\n```bash\nphp client.php\n```","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyianandcode%2Fsnowflake-grpc","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fyianandcode%2Fsnowflake-grpc","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyianandcode%2Fsnowflake-grpc/lists"}