{"id":26677381,"url":"https://github.com/wubingzheng/fcache","last_synced_at":"2025-08-04T11:39:31.365Z","repository":{"id":152823393,"uuid":"61984933","full_name":"WuBingzheng/fcache","owner":"WuBingzheng","description":"lightweight, reliable and high-performance HTTP cache, based on file, suitable for CDN especially.","archived":false,"fork":false,"pushed_at":"2016-12-05T02:19:46.000Z","size":54,"stargazers_count":12,"open_issues_count":0,"forks_count":6,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-04-12T09:44:57.622Z","etag":null,"topics":["cache","cdn","http"],"latest_commit_sha":null,"homepage":null,"language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/WuBingzheng.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":"2016-06-26T10:52:08.000Z","updated_at":"2025-03-25T10:17:57.000Z","dependencies_parsed_at":null,"dependency_job_id":"e18aae2e-6e7f-48b9-8752-fb5c3a96357a","html_url":"https://github.com/WuBingzheng/fcache","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/WuBingzheng/fcache","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WuBingzheng%2Ffcache","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WuBingzheng%2Ffcache/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WuBingzheng%2Ffcache/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WuBingzheng%2Ffcache/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/WuBingzheng","download_url":"https://codeload.github.com/WuBingzheng/fcache/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WuBingzheng%2Ffcache/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":268689970,"owners_count":24291080,"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","status":"online","status_checked_at":"2025-08-04T02:00:09.867Z","response_time":79,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["cache","cdn","http"],"created_at":"2025-03-26T04:33:13.059Z","updated_at":"2025-08-04T11:39:31.320Z","avatar_url":"https://github.com/WuBingzheng.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"## fcache\n\n`fcache` is a lightweight, reliable and high-performance HTTP cache,\nbased on file, suitable for CDN especially.\n\n`fcache` is a bit like `memcache`, with 2 main difference:\n\n* HTTP protocol, more compatible with HTTP proxy and server;\n* based on file, normal file or block device, e.g. /dev/sda1.\n\nCompared to other HTTP caches (e.g. `Squid` and `Varnish`), `fcache`\nis much more lightweight and easy to use.\n\n\n## configuration file\n\nSee `fcache.conf.sample`.\n\nOnly `device` and `listen` are required.\n\nUse `device` to assign some files for storage. Normal files and block device files\nare supported, while block device (raw disk or disk patition) is recommended in \nproduction for better performance.\n\nUse `listen` to assign some services. You can assign multiple services, with\ndifference configuration and for independent statistics. For example, one for pictures,\none for static files, and one for htmls.\n\nOther commands are optional, and their default values are given in `fcache.conf.sample`.\n\nAll the configuration can be updated by reload, without restarting.\n\n\n## usage\n\nBuild:\n\n    make   # \"output/\" will be created\n\nAfter creating a simple configure file, start up:\n\n    ./fcache [options]   # \"fcache.pid\" will be created\n\nQuit:\n\n    echo quit | nc 127.1 5210\n\nReload configure:\n\n    echo reload | nc 127.1 5210\n\nRunning status:\n\n    echo status | nc 127.1 5210\n\nwhere `5210` is the default admin port.\n\n\n## works with Nginx\n\nBecause `fcache` does not have the ability to access the origin when request missing,\nso we need the WebServer to fetch the item from origin and store it into `fcache`.\n\nIf Nginx is the WebServer, a filter module `jstore` is used to store the missing\nitem by subrequest.\n\nSee `nginx-jstore\\` for the code and usage.\n\n\n## OS-machine\n\nGNU/Linux on x86_64\n\n\n## licence\n\nGPLv2\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwubingzheng%2Ffcache","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwubingzheng%2Ffcache","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwubingzheng%2Ffcache/lists"}