Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[fix] Optimize dyndns requests #662

Merged
merged 5 commits into from Mar 4, 2019

Conversation

Projects
None yet
2 participants
@alexAubin
Copy link
Member

commented Feb 24, 2019

The problem

c.f. YunoHost/issues#1300 - unecessary madness which makes everything slower (dyndns update taking the lock every 2 minutes to do a full HTTPS request for nothing and therefore dynette is bombarded with those and sometimes aint able to answer)

Solution

Don't make all those crazy request, not really necessary ... Also add some constrains to try to remove ambiguities

PR Status

Yolocommited, not tested :|

How to test

Try this on a server with a registered nohost.me/noho.st/... Try to subscribe multiple time. Try a case where subscribing failed to see if keys are indeed removed.

Validation

  • Principle agreement 0/2 :
  • Quick review 0/1 :
  • Simple test 0/1 :
  • Deep review 0/1 :

@alexAubin alexAubin changed the title Optimize dyndns requests [fix] Optimize dyndns requests Feb 24, 2019

@alexAubin alexAubin added this to the 3.5.x milestone Feb 24, 2019

Show resolved Hide resolved src/yunohost/dyndns.py Outdated
@Psycojoker
Copy link
Member

left a comment

LGTM, we can discuss about testing that on my server if we merge and generate a .deb

@alexAubin

This comment has been minimized.

Copy link
Member Author

commented Mar 4, 2019

Tested the various pieces on a real-life server + in a dev machine, seem to work as expected, yolomergin'

@alexAubin alexAubin merged commit 433e82d into stretch-unstable Mar 4, 2019

0 of 2 checks passed

continuous-integration/travis-ci/pr The Travis CI build is in progress
Details
continuous-integration/travis-ci/push The Travis CI build is in progress
Details

@alexAubin alexAubin deleted the optimize-dyndns-requests branch Mar 4, 2019

@Psycojoker

This comment has been minimized.

Copy link
Member

commented Mar 7, 2019

I realized that this won't allow us to know when is the last time a dyndns domain tried to update itself. It shouldn't be a problem but this will close the possibility of automatically removed them (the tool old ones) if we try to do that one day.

I'm not expecting this to be a problem but we just have to keep that in mind.

@alexAubin

This comment has been minimized.

Copy link
Member Author

commented Mar 7, 2019

Hm yea I was wondering about that the other day ... still there could be some brutal way of doing this like removing all domains that points to an IP that doesnt ping (or doesnt answer to http(s) on /yunohost/sso ...) And if those were "actual" instance the dyndns should kick in a few minutes after and refresh the IP

@Psycojoker

This comment has been minimized.

Copy link
Member

commented Mar 7, 2019

Or we could just add a new mechanism in YunoHost to randomly ping once per week saying "I'm alive!" to dyndns.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.