字幕列表 影片播放 由 AI 自動生成 列印所有字幕 列印翻譯字幕 列印英文字幕 - Some of the government's most important websites - 一些最重要的政府網站 are crashing when we need them the most. 在我們最需要他們的時候崩潰了。 More than 22 million people have filed 已有2200多萬人提出 for unemployment in the last month, 為上個月的失業率。 an unprecedented number driven by 前所未有的數量 the global coronavirus outbreak. 全球冠狀病毒的爆發。 Now Congress has put aside an extra 250 billion dollars 現在國會又多出了2500億美金 to handle the new applicants, 以處理新的申請人。 but as people go to the state level systems to file, 但隨著人們去州級系統備案。 a lot of those websites are just timing out. 很多網站都是定時的。 - Some say that applying for unemployment benefits - 有人說,申請失業金 is nearly impossible. 幾乎是不可能的。 - The state computer system is having some trouble. - 國家計算機系統出現了一些問題。 - They need to fix the website. - 他們需要修復網站。 - This isn't how the internet usual works. - 這不是互聯網平時的工作方式。 Services like Netflix and Zoom have seen Netflix和Zoom等服務已經看到 a huge surge in traffic too, but aside from a few hiccups, 流量也大增,但除了一些小插曲。 you'd never know the difference. 你永遠不會知道其中的區別。 Most web engineers plan to be able to handle 大多數網絡工程師計劃能夠處理 ten times the regular traffic without breaking a sweat. 十倍於正常交通的情況下,不出一身汗。 But government systems don't work that way. 但政府系統不是這樣運作的。 And it's surprisingly hard to shift them over. 而要把它們轉移過來,竟然是很困難的。 A lot of that is because of the backend programming, 很大程度上是因為後臺編程的原因。 most of which is written in a coding language called COBOL 其中大部分是用一種叫COBOL的編碼語言編寫的。 that dates all the way back to the 50s. 這可以追溯到50年代。 But to understand why they're still using COBOL 但要想明白為什麼他們還在使用COBOL? and why it's such a problem, you have to see 以及為什麼會有這樣的問題,你必須要看看 how these sites were originally built. 這些遺址最初是如何建造的。 And most importantly, you have to look at the big picture. 而最重要的是,你要從大局出發。 The story of COBOL starts in 1959, COBOL的故事始於1959年。 way before personal computers or the internet. 在個人電腦或互聯網之前的方式。 A corporation or university might have a computer network, 一個公司或大學可能有一個計算機網絡。 but you were really only going to run programs 但你真的只打算運行程序 within your specific system. 在您的特定系統中。 So each network developed slightly different rules 所以每個網絡制定的規則略有不同 and it became really hard to transfer programs or data 而且它變得真的很難傳輸程序或數據。 from one network to another. 從一個網絡到另一個網絡。 So a group of engineers including legendary 所以,包括傳奇人物在內的一批工程師 Navy programmer Grace Hopper, started working on 海軍程序員格蕾絲-霍普,開始著手於。 a common programming language that could 通用編程語言,可以 bridge those networks and be the main language 溝通這些網絡,併成為主要語言 for businesses going forward. 為企業今後。 They called it the Common Business 他們稱之為 "共同事業 Oriented Language, or COBOL. 面向語言,即COBOL。 By the 70s, COBOL was the standard. 到了70年代,COBOL成為標準。 If you were managing a huge database system, 如果你管理的是一個龐大的數據庫系統。 you wrote all your code in COBOL. 你的代碼都是用COBOL寫的。 And that dominance is a big part of why 而這一優勢也是為什麼 it's still in use today. 至今仍在使用。 This is by no means a dead language. 這絕不是一種死語言。 It's something that certainly millions, 這事,當然千萬。 possibly billions of financial transactions 可能是數十億的金融交易 rely on COBOL on a daily basis. 每天都要依賴COBOL。 - If you want to switch off COBOL, - 如果你想關閉COBOL。 you basically have to start from scratch. 你基本上必須從頭開始。 So a lot of people just stuck with it. 所以很多人就堅持了下來。 It also locks you into a particular kind 它還將你鎖定在一種特殊的 of server architecture. 的服務器架構。 Running COBOL code meant you were running everything 運行COBOL代碼意味著你在運行所有的東西。 off a handful of servers on your internal network. 關閉內部網絡上的少數服務器。 When it was developed, that was the only option. 當它被開發出來時,這是唯一的選擇。 And even later there were real advantages to it. 甚至後來還真有好處。 You could teach your server special tricks 你可以教你的服務器一些特殊的技巧 for handling your specific kind of data. 用於處理您的特定類型的數據。 And deploy programs to the whole network 並將程序部署到整個網絡中 without having to install them on every specific machine. 而不必在每臺特定的機器上安裝它們。 But it was also putting a lot of weight 但它也給了我們很大的壓力 on that one server. 在那一臺服務器上。 If that server goes down, the whole network goes down. 如果該服務器宕機,整個網絡就會癱瘓。 And if you try to bring in a replacement, 如果你想引進一個替代者。 you'll need to teach it all those special tricks. 你需要教它所有這些特殊的技巧。 But when the internet happened, 但當互聯網發生。 you suddenly had to worry about keeping your service running 你突然要擔心如何維持你的服務。 in the face of huge shifts in usage 面對使用量的巨大轉變 and constant code updates. 和不斷的代碼更新。 That meant treating your servers 這意味著對待你的服務器 in a completely different way. 以完全不同的方式。 As engineers started to put it, 隨著工程師們開始把。 they're not pets anymore, now they're cattle. 他們不是寵物了,現在他們是牛。 When you've got 50 servers running, 當你有50臺服務器在運行時。 it doesn't matter if one of them goes down. 如果其中一個人倒下了,也沒關係。 You just bring in another one 你再帶一個人進來吧 and you make sure they're all so dumb 你要確保他們都是如此的愚蠢 and interchangeable that you can cycle them 並可互換,可以循環使用 in and out without anyone noticing. 在沒有人注意到的情況下進進出出。 You don't train them, you just herd them. 你不訓練他們,你只是放牧他們。 And because these are global web services, 而且因為這些都是全球網絡服務。 that also means you can distribute your herd 這也意味著你可以分配你的牛群 all around the world, scaling up or down 遍地開花 depending on how many people are visiting 視乎有多少人在訪問 the site that morning. 當天上午,該網站。 With cloud hosts like Amazon Web Services 通過亞馬遜網絡服務等雲主機 or Microsoft Azure, you don't even need 或微軟Azure,你甚至不需要用上 to buy a whole server. 來購買一整臺服務器。 You can just rent one percent of a server 你可以只租用百分之一的服務器 for a few hours, just to make it through 幾個小時,只為熬過 that morning's spike in demand. 當天上午的需求量激增。 Name any online service that's launched 說出任何一項在線服務,推出 in the last 20 years. 在過去20年裡,。 They basically all work on the cattle model. 他們基本上都是在牛的模式下工作。 That means lots of basically disposable servers 這意味著很多基本上是一次性的服務器 cycling in and out. 循環進退。 But a lot of these state unemployment systems 但很多這些國家的失業制度 have been running continuously for 40 years, 已經連續運行了40年。 processing thousands of applications every week, 每週處理數千份申請。 all on COBOL. 都是在COBOL上。 They never switched over to disposable servers. 他們從來沒有改用一次性服務器。 Which makes it hard to process the kind of traffic surge 這使得它很難處理那種流量的激增 that YouTube of Netflix would take in stride. Netflix的YouTube會大步流星的。 It's not that COBOL is a bad programming language, 並不是說COBOL是一種不好的編程語言。 but it locks you into a bad way of managing your network. 但它將你鎖定在一個糟糕的網絡管理方式中。 It forces you to treat your servers like pets. 它迫使你把你的服務器當成寵物來對待。 And because switching off of COBOL is so much work, 而且因為關掉COBOL的工作太多。 a lot of government systems have never been able 很多政府系統都無法 to make the leap to the cattle model. 以實現向牛模式的跨越。 - It's incredibly difficult to even find workers - 連找工人都難得很。 who know COBOL. 懂得COBOL的人。 The language is old and some of the people 語言古老,有些人 still fluent in it are even older, 還能流利地使用它的人就更老了。 with many approaching retirement age. 許多人已接近退休年齡。 This has become a recipe for disaster 這已經成為一個災難的配方 in states that still operate under COBOL. 在仍在COBOL下運行的國家。 Governors like New Jersey's Phil Murphy 新澤西州的菲爾-墨菲等州長。 have called for programmers to come out of retirement 紛紛呼籲程序員退休 to help maintain their overwhelmed systems. 以幫助維護其不堪重負的系統。 - You can't really move a COBOL program to the AWS cloud. - 你真的不能把一個COBOL程序搬到AWS雲上。 So it just sits there getting older 所以它只是坐在那裡變老 and a little harder to maintain each year. 而且每年維護起來也比較困難。 Programmers called this technical debt. 程序員們把這叫做技術債。 And if you aren't spending money on upgrades every year, 而如果你不是每年都在花錢升級。 it piles up fast. 它堆積得很快。 - For more than 10 years, the federal government - 十多年來,聯邦政府 has been pressuring state Medicaid programs 一直在向州醫療補助計劃施壓 to update their aging systems. 以更新其老化系統。 They've been handing them large sums of money 他們給了他們一大筆錢 to modernize, but it's still an enormous lift. 以實現現代化,但這仍然是一個巨大的提升。 - Before these folks retired, many of them - 在這些人退休之前,他們中的許多人 had been fired, they'd been laid off. 已經被解僱了,他們已經被解僱了。 And then they'd actually been brought back in 然後他們就真的被帶回來了。 in crisis moments to fix and upgrade the COBOL systems, 在危機時刻,修復和升級COBOL系統。 which ideally they should have just been kept on 理想的情況下,他們應該只是保持在。 to maintain the entire time. 以維持整個時間。 - The real problem is, we just haven't been - 真正的問題是,我們只是沒有被 spending money maintaining these systems. 花錢維護這些系統。 We haven't wanted to or we thought 我們沒有想過,也沒有想過 we could skate by without it. 我們可以沒有它的滑行。 And then when millions of people suddenly need 然後當數百萬人突然需要 unemployment checks, the entire system 失業檢查,整個系統 is buried in technical debt. 是埋在技術債務中的。 It's a hard lesson, but if we want the reliability 這是一個艱難的教訓,但如果我們想要的可靠性。 that we expect from web services, 我們對網絡服務的期望。 we're gonna have to pay for it. 我們要為它付出代價。 Thanks for watching. 謝謝你的觀看。 If you want to know more about COBOL 如果你想了解更多關於COBOL的資訊,請點擊這裡 and this whole saga, by colleague Makena Kelly 和這整個傳奇,由同事Makena Kelly。 wrote a great article in the description. 在描述中寫了一篇好文章。 And let us know in the comments 並讓我們知道在評論 if there's anything else you think we should be covering. 如果有什麼其他的東西 你認為我們應該覆蓋,
B1 中級 中文 服務器 網絡 語言 編程 程序 網站 為什麼失業網站會崩盤,但網易卻不崩盤? (Why unemployment sites crash but Netflix doesn’t) 3 0 林宜悉 發佈於 2020 年 10 月 28 日 更多分享 分享 收藏 回報 影片單字