The primary caching proxy supported by Apache Traffic Control (ATC) is Apache Traffic Server (ATS).
Config generation for ATS caches is done by a tool called ORT: https://github.com/apache/trafficcontrol/tree/master/traffic_ops_ort https://github.com/apache/trafficcontrol/tree/master/traffic_ops_ort/atstccfg Typically, a Traffic Control CDN will run this on caches via a CRON job every few minutes. You could create a config generator for Varnish which does the same thing: request the Traffic Ops API, and use the data (Delivery Services, Servers, Parameters, etc) to generate the necessary config for Varnish, and then un-set the "update pending" flag via the Traffic Ops API. We do have another caching proxy in Traffic Control, Grove. Though I don't think anyone is running it in production at the moment: https://github.com/apache/trafficcontrol/tree/master/grove Grove has its own config generator similar to ORT: https://github.com/apache/trafficcontrol/tree/master/grove/grovetccfg If you're new to ATC, I'd encourage you to set up a CDN-in-a-Box (CiaB), just to get an idea of the different CDN components and how they work together: https://traffic-control-cdn.readthedocs.io/en/latest/admin/quick_howto/ciab.html#getting-started https://github.com/apache/trafficcontrol/tree/master/infrastructure/cdn-in-a-box In addition to getting it running, I'd also encourage you to look over the Dockerfiles and run-scripts in the CiaB, to get an understanding of each CDN component. You can also look at the independent Dockerfiles for each component, if that helps: https://github.com/apache/trafficcontrol/tree/master/infrastructure/docker And of course, the overall ATC docs: https://traffic-control-cdn.readthedocs.io/en/latest/overview/introduction.html I hope that helps! Don't hesitate to ask if you have more questions. I'd encourage you to join our Slack as well. Slack is usually the fastest way to get answers: https://s.apache.org/atc-slack On Thu, Feb 25, 2021 at 3:37 PM Chandan prakash <[email protected]> wrote: > Hi all, > I am Chandan Prakash, pre final year computer science student at IIT Mandi, > India. I am proficient in languages C, C++, python, javascript, Go, Rest > APIs, Graphql. > I want to know more about this project. > > (1).So, where should I start? > > (2). Is there any code base which I need to get a more understanding of > this project? > > I am new to this community but I have contributed to this other open source > projects earlier. > Thank you, > Chandan Prakash, > B-Tech 3rd year > IIT Mandi >
