{"id":37113349,"url":"https://github.com/rupor-github/bigcache","last_synced_at":"2026-01-14T13:22:37.863Z","repository":{"id":57538669,"uuid":"275915753","full_name":"rupor-github/bigcache","owner":"rupor-github","description":"Efficient cache for gigabytes of data written in Go.","archived":false,"fork":true,"pushed_at":"2020-09-01T23:27:45.000Z","size":1854,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-11-15T03:52:10.369Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"http://allegro.tech/2016/03/writing-fast-cache-service-in-go.html","language":"Go","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":"allegro/bigcache","license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rupor-github.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}},"created_at":"2020-06-29T20:10:17.000Z","updated_at":"2020-09-01T23:27:48.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/rupor-github/bigcache","commit_stats":null,"previous_names":[],"tags_count":18,"template":false,"template_full_name":null,"purl":"pkg:github/rupor-github/bigcache","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rupor-github%2Fbigcache","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rupor-github%2Fbigcache/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rupor-github%2Fbigcache/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rupor-github%2Fbigcache/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rupor-github","download_url":"https://codeload.github.com/rupor-github/bigcache/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rupor-github%2Fbigcache/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28421130,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-14T10:47:48.104Z","status":"ssl_error","status_checked_at":"2026-01-14T10:46:19.031Z","response_time":107,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":[],"created_at":"2026-01-14T13:22:36.896Z","updated_at":"2026-01-14T13:22:37.843Z","avatar_url":"https://github.com/rupor-github.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n    \u003ch1 align=\"center\"\u003ebigcache v3\u003c/h1\u003e\n    \u003cp align=\"center\"\u003e\n        Reluctant fork of allegro/bigcache/v2\n    \u003c/p\u003e\n    \u003cp align=\"center\"\u003e\n        \u003ca href=\"https://pkg.go.dev/github.com/rupor-github/bigcache/v3\"\u003e\u003cimg src=\"https://pkg.go.dev/badge/github.com/rupor-github/bigcache/v3\" alt=\"PkgGoDev\"\u003e\u003c/a\u003e\n        \u003ca href=\"https://goreportcard.com/report/github.com/rupor-github/bigcache\"\u003e\u003cimg alt=\"Go Report Card\" src=\"https://goreportcard.com/badge/github.com/rupor-github/bigcache\" alt=\"GoReport\"/\u003e\u003c/a\u003e\n    \u003c/p\u003e\n    \u003chr\u003e\n\u003c/p\u003e\n\n# BigCache\n\nFast, concurrent, evicting in-memory cache written to keep big number of entries without impact on performance.\nBigCache keeps entries on heap but omits GC for them. To achieve that, operations on byte slices take place,\ntherefore entries (de)serialization in front of the cache will be needed in most use cases.\n\nRequires Go 1.13 or newer.\n\nThis is very reluctant fork of original BigCache v2.2.2. For any documentation, issues or discussion - please, visit original project.\n\nOriginal is presently unstable (see issues there - in my production tests I cannot keep it up for more than 10 minutes before it dies with index out of range) and when working on a fix I got carried away with too many changes.\nWhile cleaning I attempted to keep code as efficient as it was while making it somewhat easier to read and modify. \nOriginal code has unused functions (result of functionality move to shard.go), unnecessary flags trying to fix edge conditions (q.full? really?), too many OnRemove callbacks in attempt to keep backward compatibility, outdated logger (and overall configuration - to some degree).\nLocking iterator design is a bit strange for highly concurrent code. \n\nAll in all I got a feeling that contributors are more interested in a expanding feature set with additional callbacks rather than having readable, simple, stable and performing code base as was the case for a very long time with v1.\n\nUntil I decide if I want to make upstream PR I will keep this fork - it is presently benchmarks as good or faster as original bigcache at v2.2.2 and has some additional functionality I need (see GetWithProcesssing).\n\n## License\n\nBigCache is released under the Apache 2.0 license (see [LICENSE](LICENSE))\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frupor-github%2Fbigcache","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frupor-github%2Fbigcache","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frupor-github%2Fbigcache/lists"}