Security News
Fluent Assertions Faces Backlash After Abandoning Open Source Licensing
Fluent Assertions is facing backlash after dropping the Apache license for a commercial model, leaving users blindsided and questioning contributor rights.
This is the daemon that flushes the data that the gateway side of XC like the apicast-xc module running on top of APIcast, stores for reporting and authorizing to 3scale.
When you deploy 3scale to a gateway you usually have a request performed to 3scale for every request that needs authorization, which introduces latency and load in 3scale. The goal of XC is to reduce latency and increase throughput by significantly reducing the number of requests made to 3scale's backend. In order to achieve that, XC caches authorization statuses and reports.
Xcflushd is a daemon that is required to run while using XC. Its responsibility consists of flushing the cached reports and renewing the cached authorization statuses. All this is done in background, not in request time.
Xcflushd can run together with a different gateway as long as it uses the same format for the cached authorizations and reports. This format will be documented soon.
You will need Docker and GNU make.
First, clone the project:
$ git clone git@github.com:3scale/xcflushd.git
Next, cd into the directory, cd xcflushd
Run the tests with:
$ make test
That will run the unit test suite. It's using Rspec.
Develop with:
$ make bash
That will create a Docker container and run bash inside it. The project's
source code will be available in ~/app
and synced with your local xcflushd
directory. You can edit files in your preferred environment and still be able
to run whatever you need inside the Docker container.
You will need a Redis server running.
Build:
$ make build
Run:
$ docker run --rm -it xcflushd script/launch help
You can send the options as params for script/launch
:
$ docker run --rm -it xcflushd script/launch run --auth-ttl 900 --provider-key my_provider_key --redis 127.0.0.1:6379 --frequency 300 --backend https://su1.3scale.net:443
Please note that the help command will also show you abbreviated flags you can
use at your convenience. Also, script/launch
sets all the JRuby flags
recommended for a production environment. If you'd like to set different ones,
you can run:
$ docker run --rm -it xcflushd JRUBY_OPTS="..." jruby -S bundle exec xcflushd help
This instructions are for JRuby, the Ruby implementation that we recommend for running xcflushd.
Install the dependencies:
$ jruby -S bundle install
Run the program with the recommended flags for production:
$ script/launch help
If what you need is deploying Xcflushd together with APIcast and XC, you can follow the instructions provided in the apicast-xc repo.
Every X minutes (configurable) the flusher does two things:
For more details, check the design doc.
git checkout -b my-new-feature
git commit -am 'Add some feature'
git push origin my-new-feature
FAQs
Unknown package
We found that xcflushd demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 2 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Fluent Assertions is facing backlash after dropping the Apache license for a commercial model, leaving users blindsided and questioning contributor rights.
Research
Security News
Socket researchers uncover the risks of a malicious Python package targeting Discord developers.
Security News
The UK is proposing a bold ban on ransomware payments by public entities to disrupt cybercrime, protect critical services, and lead global cybersecurity efforts.