[
https://issues.apache.org/jira/browse/TC-32?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15762347#comment-15762347
]
ASF GitHub Bot commented on TC-32:
----------------------------------
GitHub user dg4prez opened a pull request:
https://github.com/apache/incubator-trafficcontrol/pull/141
[Please Review] [TC-32] Addition of ATS Config API (for postgres only)
Working API for ATS config file generation, divided by three "scopes" -
CDN, profile, and server.
This is intended to be used for a redesign of the ATS config process. No
test files have been generated yet - this PR is intended for review only, and
is linked to https://issues.apache.org/jira/browse/TC-32
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/dg4prez/incubator-trafficcontrol
psql_ats_config_api
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/incubator-trafficcontrol/pull/141.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #141
----
commit 65856ff7e3f3f020c84cb30ff5b55574aabf8462
Author: Derek Gelinas <[email protected]>
Date: 2016-12-07T18:34:46Z
Addition of ATS Config API (for postgres only)
commit a24d9ec7ec3e04b50ceb7fb05a7e45c2475ca4ed
Author: Derek Gelinas <[email protected]>
Date: 2016-12-14T19:14:48Z
remove actions
commit c65838a0a73e75f433e51f0074873f7aee9d33d2
Author: Derek Gelinas <[email protected]>
Date: 2016-12-15T18:25:49Z
url_sig should be a profile scope
commit 00369262e46376ad09fcf648a6d14f7cd2c31caa
Author: Derek Gelinas <[email protected]>
Date: 2016-12-15T18:28:18Z
tidy some things
commit 2b6ea6073d2ed37565c53952a9a23437a78786f9
Author: Derek Gelinas <[email protected]>
Date: 2016-12-16T17:42:53Z
add goose upgrade/downgrade
commit 12d746741e4e67fe47beabb80adf472c001ebdd4
Author: Derek Gelinas <[email protected]>
Date: 2016-12-16T18:44:15Z
Add missing scope selections to ORT list when not found in the db.
commit f11f954dcdb366c6cb1283a8529ffed852b54d8d
Author: Derek Gelinas <[email protected]>
Date: 2016-12-16T19:04:39Z
fix licenses
----
> Improve efficiency of ATS config generation
> -------------------------------------------
>
> Key: TC-32
> URL: https://issues.apache.org/jira/browse/TC-32
> Project: Traffic Control
> Issue Type: Improvement
> Components: Traffic Ops API
> Reporter: Derek Gelinas
> Assignee: Derek Gelinas
> Fix For: 1.9.0
>
>
> Currently when generating ATS configuration files, each server calls for its
> individual files from traffic ops. This is a very database-intensive process
> that is not scalable enough. I propose the following changes:
> 1) Generate the configuration files only as many times as needed - many files
> are the same (or can be) for the entire CDN or server profile.
> 2) Once generated, the files can be cached locally. Requests for the files
> by ORT will result in pulling down these cached files rather than many
> hundreds of DB queries each time.
> 3) Migrate the routes for these files to the API. Each call will have
> multiple options - a request made with no options would return the cached
> file, another option would return the current DB data, and a third option
> would update the cached file with the current information in the DB.
> 4) When an update is queued, generate and cache the configuration files, then
> activate the update flag for the relevant servers once the cached file
> generation is completed.
> In this way, triggering updates for the caches will result in an initial
> increase in activity as traffic ops generates the files needed, followed by
> the much lower impact of the files themselves being requested by the caches.
> I believe we can cut down the number of server-specific configuration files
> to only 5 intially, and potentially fewer by having ORT fill in certain
> fields on files like records.config with local data during processing.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)