Transaction: acdf5fb95b49fb7f9feab7baa9df8e6d3c607e13

Included in block 22,218,876 at 2018/05/07 10:27:09 (UTC).

Transaction overview

Loading...
Transaction info
transaction_id acdf5fb95b49fb7f9feab7baa9df8e6d3c607e13
ref_block_num 2,151
block_num22,218,876
ref_block_prefix 3,046,691,934
expiration2018/05/07T10:37:03
transaction_num 23
extensions[]
signatures 201519089ebefe85e59eae9eb22894b09c7e9b695b310fd573a523ed7760bcc7302ade6d3afb01c08c89043bea5e593560fde759e6c9bf6567250e47fef53d929b
operations
comment
"parent_author":"",<br>"parent_permlink":"technology",<br>"author":"ammar1",<br>"permlink":"we-care-about-your-vice-engineering-special",<br>"title":"We Care About Your Vice (Engineering Special)",<br>"body":"**We Care About Your Voice (Engineering Special)**\n![ (https:\/\/steemitimages.com\/DQmccmzCu2rEevGuiZgQkaLPZVMEcJtFywNQnjWM9EtcdtA\/image.png)\n**O**ver the last four months,<br> a couple of our engineers tucked themselves into a cave and coded some incredible backend voice chat infrastructure improvements. These are the kind of fixes that just make Discord work better. You\u2019ll never notice them because\u2026 well,<br> that\u2019s the point. Your voice experience should just be smoother than ever.\n![ (https:\/\/steemitimages.com\/DQmZwuc4cmEj28QT54H9gzLj41n7eKexT8zo4v38VsG8aMW\/image.png)\n**Someone get me a cola.**\n\nWe want to provide some insight into what we actually did so you can understand how much we care about making sure your voice chat experience is as painless as possible. This kind of work isn\u2019t the sexiest stuff but it\u2019s some of the most important work we do here.\n\nWith an expert three-pronged approach,<br> two of our engineers,<br> Jesse and Andrei,<br> were able to greatly reduce voice issues and improve performance across the board. This was done by creating a curator,<br> leveling up our infrastructure,<br> and improving our client technology.\nWatch the video for a basic breakdown from our engineers Jesse and Andrei. Then,<br> read below for further details.\nhttps:\/\/youtu.be\/TZiOUel0IZ0\n**Creating the Curator**\nServer health is important. If you\u2019re connected to a server that\u2019s experiencing issues for whatever reason,<br> you might encounter things like robo voice or even disconnects (which is,<br> clearly,<br> the last thing we want our users to experience). Maintaining connection in the middle of a gank can be the defining factor between success and failure.\n![ (https:\/\/steemitimages.com\/DQmZEwvFqZmQm2DY4Axgy7BdWu4urg2JnhBYreyWyhJoHkd\/image.png)\n**no one called MIA!??!?!??**\nThe curator detects and removes bad servers. It does this by sending all servers some network data similar to the voice data that users send. The curator then inspects the return traffic. If it\u2019s not healthy,<br> it alerts the clients that the server is bad and the server is removed.\n\nDiscord engineers can also manually blacklist bad servers,<br> providers,<br> and regions when issues arise.\n\nAnother sweet feature of the curator is that it improves our ability to roll out updates without disturbing our users.\n\nMost of the time we can update our voice servers while users are on them. Sometimes though,<br> an update requires us to take the server offline. The curator can mark a server as \u201cdraining\u201d,<br> allowing currently connected users to finish up their voice session on the server. However,<br> new sessions will be started on non-draining servers. Once all the sessions on the server have finished,<br> we take the server offline and do the update.\n\n**Leveling Up the Infrastructure**\nOne of the key things that Discord provides over self-hosted alternatives is something called \u201cfailover.\u201d\n\nWhen issues arise with one particular provider or data center,<br> Discord will move users connected to these servers to healthier servers.\n\nThis happens seamlessly on our end\u200a\u2014\u200aas a user,<br> you\u2019ll never notice this occurs (unless you\u2019re staring mindlessly at your voice connection information for some reason).\n![ (https:\/\/steemitimages.com\/DQmX5qkSJqZBZjWL3QLwoC5TTaoqr8s3xVbD4jtD2DsA58G\/image.png)\n **Get off your mom\u2019s computer Jimmy.**\nWe improved this process in a few ways.\n\nFirst up,<br> we added multiple providers and data centers to almost all of our regions so we can have more options.\n\nSecond up,<br> we increased the number of servers in each region. Increased capacity means more,<br> more,<br> and more options.\n\nFinally,<br> we consolidated servers in some regions to provide cleaner and less confusing server options.\n\nOverall,<br> this means our backend has a lot more flexibility to maintain connection for our users.\n![ (https:\/\/steemitimages.com\/DQmbn8Jr9xcpp7m6hkUAFnY4jGNAhDjqZHb8yBeihLVwCUo\/image.png)\n This image is like a metaphor.\n**Improving the Client Technology**\nThe last bastion of these improvements is our client itself.\n\nThe client is now much more resilient to spotty internet and will resume connections without losing any voice traffic.\n\nNetwork changes,<br> Wi-Fi blips,<br> IP changes,<br> and short internet outages are now recognized quickly and our voice reconnection responds just as fast. In practice,<br> you\u2019ll notice far less connection issues when experiencing these things.\n![ (https:\/\/steemitimages.com\/DQmfUPUagX3PDGJnZcvF8spndwy9rYLdkYsQ7xebtW4KwyF\/image.png)\n Faster than a speeding blip.\n**You\u2019ll Never Know What Hit Ya**\nAs we said in the beginning,<br> the key with these improvements is that you will never notice them taking effect. We do all the heavy lifting behind the scenes and we do it all seamlessly so you can do the thing you\u2019re trying to do\u200a\u2014\u200aplay games with a stable,<br> high quality voice connection.\n\nIf you have a friend who may have had an issue connecting with Discord in the past,<br> now would be a great time to have them give Discord another shot.\n\nMay your connections be strong and your ganks successful.\n\nWanna be a part of our next engineering endeavor? Check out our job listings here.\n\nProgrammingWeb DevelopmentEngineering\nOne clap,<br> two clap,<br> three clap,<br> forty?\nBy clapping more or less,<br> you can signal to us which stories really stand out.",<br>"json_metadata":" \"tags\":[\"programmingweb\",<br>\"developmentengineering\",<br>\"technology\" ,<br>\"image\":[\"https:\/\/steemitimages.com\/DQmccmzCu2rEevGuiZgQkaLPZVMEcJtFywNQnjWM9EtcdtA\/image.png\",<br>\"https:\/\/steemitimages.com\/DQmZwuc4cmEj28QT54H9gzLj41n7eKexT8zo4v38VsG8aMW\/image.png\",<br>\"https:\/\/img.youtube.com\/vi\/TZiOUel0IZ0\/0.jpg\",<br>\"https:\/\/steemitimages.com\/DQmZEwvFqZmQm2DY4Axgy7BdWu4urg2JnhBYreyWyhJoHkd\/image.png\",<br>\"https:\/\/steemitimages.com\/DQmX5qkSJqZBZjWL3QLwoC5TTaoqr8s3xVbD4jtD2DsA58G\/image.png\",<br>\"https:\/\/steemitimages.com\/DQmbn8Jr9xcpp7m6hkUAFnY4jGNAhDjqZHb8yBeihLVwCUo\/image.png\",<br>\"https:\/\/steemitimages.com\/DQmfUPUagX3PDGJnZcvF8spndwy9rYLdkYsQ7xebtW4KwyF\/image.png\" ,<br>\"links\":[\"https:\/\/youtu.be\/TZiOUel0IZ0\" ,<br>\"app\":\"steemit\/0.1\",<br>\"format\":\"markdown\" "
* The API used to generate this page is provided by @steemchiller.