Skip to content

Server issue (Not a complain, a query) #515

Open

Description

Right now as I am writing this, snapdrop.net isn't working with the error being The Snapdrop-Server cannot be reached.
This isn't a complain, I just wanna learn what does it mean exactly? What server is snapdrop talking about?

Would also appreciate if someone could explain how WebRTC works in a nutshell.

Activity

  1. Bellisario commented on Oct 14, 2022

    @Bellisario
    Contributor

    Also for me, very strage...
    Waiting that the problem is solved, meanwhile you can try using my Node.js version here:
    https://node-snapdrop.onrender.com/


    @RobinLinus is there any other strange server error causing this issue?

  2. JustSch commented on Oct 14, 2022

    @JustSch

    Also if you'd prefer a server independent version you can use my desktop version node-snapdrop-electron

  3. Bellisario commented on Oct 15, 2022

    @Bellisario
    Contributor

    Update

    Seems Snapdrop is working properly now!

  4. nikkehtine commented on Oct 16, 2022

    @nikkehtine

    Snapdrop is still down :/

  5. JustSch commented on Oct 16, 2022

    @JustSch

    It does seem to be down again. I wonder what keeps causing it to go down.
    Edit: It is up again

  6. Bellisario commented on Oct 17, 2022

    @Bellisario
    Contributor

    Seems to be up another time for me

  7. RobinLinus commented on Oct 19, 2022

    @RobinLinus
    Collaborator

    @Bellisario looks like the fix made it worse, no?

  8. fm-sys commented on Oct 20, 2022

    @fm-sys
    Contributor

    looks like the fix made it worse, no?

    Probably same as before... Nevertheless rather unsatisfactory unfortunately :-/

  9. Bellisario commented on Oct 20, 2022

    @Bellisario
    Contributor

    @Bellisario looks like the fix made it worse, no?

    Yes, it looks like that's not solving the problem...
    I think in this case the best solution could be (for now) to use something like pm2 to restart the server on crash (or something similar with Docker).

  10. svenjacobs commented on Oct 25, 2022

    @svenjacobs

    As snapdrop.net is frequently not available (just have a look at the issues 😱), is there anything that we can do to improve the stability of the service? What are the actual reasons for the recurring downtimes? Could you please share some more details @RobinLinus?

  11. RobinLinus commented on Oct 26, 2022

    @RobinLinus
    Collaborator

    @svenjacobs looks like the server breaks whenever there is too much load. Also someone keeps trying to DoS the Snapdrop server. We started to port it to Rust for better stability and performance https://github.com/RobinLinus/snapdrop/pull/521

  12. tuupola commented on Oct 26, 2022

    @tuupola

    Down again.

    $ curl --include https://snapdrop.net/
    curl: (7) Failed to connect to snapdrop.net port 443 after 39 ms: Connection refused
    
  13. Pkcarreno commented on Oct 26, 2022

    @Pkcarreno

    hi @RobinLinus ,This server problem you mention is related to the loading of the page? what about giving pwa offline capability to the page? could it work to solve this problem?

  14. schlagmichdoch commented on Nov 8, 2022

    @schlagmichdoch
    Contributor

    no matter what you do to the client side you will always need a running server for Snapdrop to work. This includes the (already implemented) offline capabality by caching as PWA via serviceworker.

  15. nikkehtine commented on Nov 9, 2022

    @nikkehtine

    The domain is registered for Domain.com, and their DDoS protection is $15 a month. Maybe we could donate towards it?

  16. schlagmichdoch commented on Dec 22, 2022

    @schlagmichdoch
    Contributor

    The domain is registered for Domain.com, and their DDoS protection is $15 a month. Maybe we could donate towards it?

    I guess before paying for DDoS protection, we could first deploy snapdrop containerized as @Bellisario suggested with pm2 or docker. I provided two PRs that modify the docker configuration a bit to enable the use of the provided docker-compose on production #550 #549
    @RobinLinus what do you think? Could you deploy snapdrop dockerized to increase stability?

  17. KaKi87 commented on Dec 26, 2022

    @KaKi87

    the best solution could be (for now) to use something like pm2 to restart the server on crash (or something similar with Docker).

    Here's a dependency-free alternative :

    process.on(
        'uncaughtException',
        () => {
            process.once(
                'exit',
                () => spawn(
                    process.argv.shift(),
                    process.argv,
                    {
                        cwd: process.cwd(),
                        detached: true,
                        stdio: 'inherit'
                    }
                )
            );
            process.exit();
        }
    );
  18. schlagmichdoch commented on Dec 30, 2022

    @schlagmichdoch
    Contributor

    the best solution could be (for now) to use something like pm2 to restart the server on crash (or something similar with Docker).

    Here's a dependency-free alternative :

    process.on(
        'uncaughtException',
        () => {
            process.once(
                'exit',
                () => spawn(
                    process.argv.shift(),
                    process.argv,
                    {
                        cwd: process.cwd(),
                        detached: true,
                        stdio: 'inherit'
                    }
                )
            );
            process.exit();
        }
    );

    Nice!

    When using this snippet I got the following error message:

    ReferenceError: spawn is not defined

    This import fixed the issue:

    var {spawn} = require('child_process')

    Reference:
    https://stackoverflow.com/a/44643419/14678591

  19. KaKi87 commented on Dec 30, 2022

    @KaKi87

    Yeah I didn't add the import statement sorry. ^^

  20. Rihcus commented on Jan 9, 2023

    @Rihcus

    Also if you'd prefer a server independent version you can use my desktop version node-snapdrop-electron

    Does this work completely offline or does it rely on google's stun servers?

  21. JustSch commented on Jan 9, 2023

    @JustSch

    Completely offline. Funny enough my Internet went out (router was still functional just no connection to the outside internet) when I first started working on it and it still worked

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions