Deploying new code to NSS-X

66 views
Skip to first unread message

Mario Giambanco

unread,
Apr 27, 2016, 7:24:57 PM4/27/16
to Firebase Google Group
I'm just curious. I often get notifications from Twitter / Firebase that go something like "Deploying new code to NSS-X..."

Wouldn't all the NSS servers be identical in functionality ? I'm assuming the code being deployed is a patch of sorts; wouldn't all the servers need that patch as well?

Kinda makes you think - which server am I on - and how is this effecting me.

-Mario

Jacob Wenger

unread,
Apr 27, 2016, 7:39:57 PM4/27/16
to fireba...@googlegroups.com
Hey Mario,

Most of the time, all servers do have the same code. However, sometimes we will use servers as "canaries" to test code for a specific customer or to test code with a smaller subset of our customers. This prevents us from rolling out a bug that breaks all customers at once. Because of this, it is a common method for deploying new server code across a cluster of servers.

As for finding which server you are on, you can easily do that by just navigating to https://<YOUR_FIREBASE_APP>.firebaseio.com/.settings/owner.json. You can also use that to find out your server's uptime on our status page.

Cheers,
Jacob

--
You received this message because you are subscribed to the Google Groups "Firebase Google Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email to firebase-tal...@googlegroups.com.
To post to this group, send email to fireba...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/firebase-talk/c1d20be3-d91e-49ac-b93d-fa65c45c0ab3%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Tony Meng

unread,
Apr 27, 2016, 7:57:27 PM4/27/16
to Firebase Google Group
Functionality wise, the NSS's are all the same. However, each NSS exhibits different usage patterns causing us to deploy improvements or patches in a staggered method so that we can be as noninstrusive as possible. We also address any immediate issues impacting specific NSS's using this approach while leaving the general rollout to a later, less intrusive time and date. It's all an attempt to make using Firebase a more pleasant experience.

Ryan Mills

unread,
Apr 28, 2016, 7:54:47 PM4/28/16
to Firebase Google Group
Is this an outage? I see them from @FirebaseStatus and wonder what impact this has. 

What happens to users when you guys are "interrupting" the service? 

What does "Please excuse the brief interruption in service." actually mean? That users can't use the service AT ALL? IE, no high availability?

https://twitter.com/FirebaseStatus/status/725170848483676160 -- We will be restarting all Firebase services momentarily, please excuse the brief interruption. -- So all users can't access ANYTHING?

https://twitter.com/FirebaseStatus/status/725379020867702784 -- Deploying new code to NSS-128. Please excuse the brief interruption. -- So people get disconnected/can't use the service?

I don't really understand how you can expect people to use your service when it seems outages/downtime are constant and you're isolated to only one server which may go down at any stage?

Ryan

Jacob Wenger

unread,
Apr 28, 2016, 8:38:33 PM4/28/16
to fireba...@googlegroups.com
Hey Ryan,

We tweet out updates to be as transparent as possible. We want to make sure you as our developers feel comfortable and understand when changes are being made and to also help you diagnose issues if they crop up.

The situation is certainly not that that "outages/downtime are constant." Outside of nss-100 which had an uncharacteristic extended downtime for a small number of customers on that server (which has since been resolved), you should look through the last week on status.firebase.com. You'll see that nearly every server had 100% uptime every day of the week, despite us doing several deploys during the last seven days.

Our Service License Agreement (SLA) is public and always readable by you and anyone else. It clearly states what our uptime guarantees are and what you can if we miss them. The entire team feels very strongly about hitting our SLAs and we consistently do. The numbers on status.firebase.com speak for themselves.

Regarding server restarts, most servers come up within tens of seconds. Even during this time, nearly all end users won't notice because of how the Firebase clients are designed. Every client has built-in latency compensation to be responsive and act like data is being synced even if the connection is broken. And our mobile clients have full offline support for much longer amounts of disconnected time. All of our clients should handle server restarts gracefully.

Cheers,
Jacob

--
You received this message because you are subscribed to the Google Groups "Firebase Google Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email to firebase-tal...@googlegroups.com.
To post to this group, send email to fireba...@googlegroups.com.
Reply all
Reply to author
Forward
0 new messages