{"id":29179723,"url":"https://github.com/trendyol/sidecache","last_synced_at":"2025-07-01T19:06:25.272Z","repository":{"id":45966423,"uuid":"286466538","full_name":"Trendyol/sidecache","owner":"Trendyol","description":"Sidecar cache for kubernetes applications.","archived":false,"fork":false,"pushed_at":"2025-02-03T11:18:11.000Z","size":59,"stargazers_count":47,"open_issues_count":4,"forks_count":7,"subscribers_count":8,"default_branch":"master","last_synced_at":"2025-03-22T05:33:02.203Z","etag":null,"topics":["cache","couchbase","golang","istio","kubernetes","redis","sidecar"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Trendyol.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","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":"2020-08-10T12:18:08.000Z","updated_at":"2024-12-04T20:26:52.000Z","dependencies_parsed_at":"2025-03-05T15:41:26.555Z","dependency_job_id":null,"html_url":"https://github.com/Trendyol/sidecache","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Trendyol/sidecache","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Trendyol%2Fsidecache","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Trendyol%2Fsidecache/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Trendyol%2Fsidecache/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Trendyol%2Fsidecache/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Trendyol","download_url":"https://codeload.github.com/Trendyol/sidecache/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Trendyol%2Fsidecache/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":263021821,"owners_count":23401148,"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":["cache","couchbase","golang","istio","kubernetes","redis","sidecar"],"created_at":"2025-07-01T19:06:15.520Z","updated_at":"2025-07-01T19:06:25.240Z","avatar_url":"https://github.com/Trendyol.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# sidecache\nSidecar cache for kubernetes applications. It acts as a proxy sidecar between application and client, routes incoming requests to cache storage or application according to Istio VirtualService routing rules.\n\nMedium article: https://medium.com/trendyol-tech/trendyol-platform-team-caching-service-to-service-communications-on-kubernetes-istio-82327589b935\n\n[![License: MIT](https://img.shields.io/badge/License-MIT-ligthgreen.svg)](https://opensource.org/licenses/MIT)\n\n## Table Of Contents\n\n- [Istio Configuration](#istio-configuration-for-routing-http-requests-to-sidecar-container)\n- [Environment Variables](#environment-variables)\n\n## Istio Configuration for Routing Http Requests to Sidecar Container\n\nBelow VirtualService is responsible for routing all get requests to port 9191 on your pod, other http requests goes to port 8080.\n\n```\napiVersion: networking.istio.io/v1beta1\nkind: VirtualService\nmetadata:\n  name: foo\nspec:\n  gateways:\n  - foo-gateway\n  hosts:\n  - foo\n  http:\n  - match:\n    - method:\n        exact: GET\n    route:\n    - destination:\n        host: foo\n        port:\n          number: 9191\n  - route:\n    - destination:\n        host: foo\n        port:\n          number: 8080\n```\n\n\n## Environment Variables\n\nEnvironment variables for sidecar container.\n\n- **MAIN_CONTAINER_PORT**: The port of main application to proxy.\n- **COUCHBASE_HOST**: Couchbase host addr.\n- **COUCHBASE_USERNAME**: Couchbase username.\n- **COUCHBASE_PASSWORD**: Couchbase password.\n- **BUCKET_NAME**: Couchbase cache bucket name.\n- **CACHE_KEY_PREFIX**: Cache key prefix to prevent url conflicts between different applications.\n- **SIDE_CACHE_PORT**: Sidecar container port to listen.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftrendyol%2Fsidecache","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftrendyol%2Fsidecache","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftrendyol%2Fsidecache/lists"}