DAVID Malan: Baiklah, selamat datang kembali.
Sebelum kita menyelam ke komputasi awan, Saya pikir saya akan berhenti sejenak
jika ada pertanyaan yang beredar atau topik yang muncul saat makan siang
yang sekarang mungkin menarik.
>> AUDIENCE: [tidak terdengar]
>> DAVID Malan: OK.
Oh oke.
AUDIENCE: [tidak terdengar]
>> DAVID Malan: Tidak, tentu saja.
OK, baik mudah-mudahan semua Anda masalah timbul dalam beberapa jam ke depan
dan besok terutama.
Tapi mari kita lihat, kemudian, di mana diskusi terakhir tentang pengaturan
website memimpin, lebih umum ketika datang ke komputasi awan,
menyiapkan arsitektur server, jenis keputusan
bahwa insinyur dan pengembang dan manajer
perlu membuat ketika datang untuk melakukan lebih dari sekedar
mendaftar untuk $ 10 per web host bulan ketika Anda benar-benar ingin membangun
infrastruktur sendiri.
Dan kami akan mencoba untuk mengikat kembali ini, misalnya, untuk Dropbox dan lain-lain
seperti mereka.
>> Jadi mari kita mulai untuk mempertimbangkan masalah apa yang timbul sebagai bisnis
mendapat baik dan masalah yang baik timbul.
Jadi dalam kasus yang sangat sederhana memiliki beberapa perusahaan yang memiliki web server,
Anda mungkin memiliki, katakanlah, server yang kami hanya akan menarik yang terlihat seperti ini.
Dan hari ini, paling servers-- dan mari benar-benar menempatkan gambar untuk ini hanya begitu
bahwa itu sedikit kurang samar-samar.
>> Jadi rak Dell server-- kembali pada hari, ada
yang komputer mainframe yang mengambil seluruh kamar.
Hari-hari ini, jika Anda untuk mendapatkan server, itu
mungkin terlihat sedikit sesuatu seperti ini.
Server diukur dalam apa disebut unit rak, atau Rus.
Dan satu RU adalah 1,5 inci, yang merupakan standar industri.
Jadi ini terlihat seperti server dua RU.
Jadi 3 inci.
Dan mereka umumnya 19 inci, yang berarti semua hal semacam ini
distandarisasi.
>> Jadi jika Anda melihat di center-- Data tidak hanya pada satu server, tetapi mari kita
lihatlah Google pusat data dan melihat apakah kita
melihat gambar yang bagus di Google Images.
Hal ini jauh lebih baik menyala dari Anda biasanya akan menemukan, dan banyak
seksi mencari sebagai hasilnya. Tapi ini adalah apa yang tampak seperti pasangan
ratus server semua tentang itu ukuran yang sama,
sebenarnya, di rak setelah rak setelah rak setelah rak di pusat data.
>> Sesuatu seperti ini-- ini mungkin juga menjadi Google, karena saya googled Google.
Tapi bisa menjadi wakil lebih umum
sebuah pusat data di mana banyak perusahaan biasanya co-terletak.
Dan co-terletak umumnya berarti bahwa Anda pergi ke tempat seperti Equinix
atau vendor lain yang memiliki besar gudang yang memiliki banyak kekuasaan,
banyak pendinginan, mudah-mudahan banyak keamanan,
dan kandang individu melampirkan rak server, dan Anda baik menyewa rak
atau Anda membawa rak di.
>> Dan masing-masing perusahaan, startups terutama,
akan memiliki beberapa jenis biometrik untuk masuk ke kandang mereka, atau kunci,
atau kartu kunci.
Anda membuka pintu.
Dan dalam hanya ada cuplikan jejak persegi
bahwa Anda membayar untuk, dalam yang Anda dapat menempatkan apa pun yang Anda inginkan.
>> Dan Anda biasanya membayar untuk kekuasaan.
Dan Anda membayar untuk jejak kaki.
Dan kemudian Anda membayar diri untuk server
bahwa Anda membawa ke ruang angkasa itu.
Dan apa yang kemudian Anda memiliki pilihan untuk lakukan adalah membayar seseorang
untuk konektivitas layanan internet Anda.
Anda dapat membayar sejumlah vendor, semuanya
biasanya datang ke dalam pusat data.
>> Namun pertanyaan menarik sebenarnya adalah, apa yang sebenarnya terjadi di rak mereka?
mungkin mereka semua sangat baik terlihat seperti apa yang kami lihat.
Tapi mereka melakukan fungsi yang berbeda dan mungkin perlu melakukan hal yang berbeda.
Dan mari kita sebenarnya memotivasi diskusi ini
dengan pertanyaan, apa masalahnya mulai muncul jika Anda berhasil?
>> Jadi Anda punya website bahwa Anda telah membangun.
Dan mungkin itu menjual widget atau semacam itu.
Dan Anda telah melakukan dengan sangat baik dengan penjualan widget online.
Dan Anda mulai mengalami beberapa gejala, website Anda.
Apa mungkin beberapa gejala teknis
yang pengguna melaporkan sebagai bisnis tumbuh dan berkembang pesat
dan website Anda adalah manfaat dari itu?
>> AUDIENCE: [tidak terdengar]
>> DAVID Malan: Ya, persis.
Jadi Anda mungkin memiliki perlambatan dari situs Anda.
Dan mengapa yang mungkin terjadi?
Nah, jika kita asumsikan, untuk kepentingan diskusi
sekarang, bahwa Anda berada di salah satu ini web host komersial
yang kita bicarakan sebelum makan siang, bahwa Anda membayar beberapa jumlah dolar
untuk bulan per, dan Anda sudah dibayar untuk biaya tahunan domain Anda
nama, bahwa web host mungkin overselling sumber daya mereka
sampai batas tertentu.
Jadi Anda mungkin memiliki username dan password pada server mereka.
Tapi begitu mungkin beberapa lainnya, atau beberapa selusin lainnya, atau bahkan mungkin beberapa
ratus lainnya, pengguna.
>> Dan situs hidup secara fisik pada server yang sama.
Mengapa ini mungkin?
Nah ini hari, server seperti ini biasanya
memiliki beberapa hard drive, mungkin sebanyak enam atau lebih hard drive,
masing-masing yang mungkin sebanyak sebagai 4 terabyte hari ini.
Jadi Anda mungkin memiliki 24 terabyte ruang hanya satu server kecil seperti ini.
>> Dan bahkan jika Anda mencuri beberapa ruang yang untuk redundansi, untuk tujuan backup,
itu masih cukup banyak ruang.
Dan tentu saja, sebuah situs web yang khas tidak membutuhkan banyak ruang.
Hanya mendaftar pengguna dan menyimpan log dari perintah
tidak mengambil semua yang banyak ruang.
Jadi Anda dapat melakukan partisi cukup sedikit dan memberikan setiap pengguna
hanya sepotong kecil dari itu.
>> Sementara itu, komputer seperti ini hari ini
biasanya memiliki beberapa CPUs-- bukan hanya satu, mungkin dua, mungkin empat, mungkin 16,
atau bahkan lebih.
Dan masing-masing CPU memiliki sesuatu yang disebut
inti, yang merupakan jenis seperti otak dalam otak.
Jadi sebenarnya yang paling semua orang di sini dengan laptop modern memiliki mungkin dual core
atau CPU-- quad core dan mungkin hanya salah satu CPU dalam sebuah laptop hari ini.
Tapi komputer desktop dan komputer rak seperti
ini mungkin memiliki beberapa lebih CPU, dan pada gilirannya core.
>> Dan terus terang, bahkan di Mac dan PC dari kami hari ini, Anda tidak benar-benar membutuhkan dual core
atau quad core untuk memeriksa email Anda.
Apakah ada hambatan saat datang untuk menggunakan komputer,
Anda manusia mungkin adalah Hal paling lambat tentang komputer itu.
Dan Anda tidak akan dapat periksa email Anda lebih cepat jika Anda
memiliki empat kali lebih banyak CPU atau core.
>> Tapi sama jenis dari sejati server.
Salah satu situs web tunggal mungkin tidak tentu membutuhkan lebih dari satu
CPU atau satu inti, satu otak kecil di dalam melakukan
semua pemikiran dan pengolahan.
Sehingga produsen harus sama mulai mengiris sumber daya
sehingga mungkin website Anda mendapat satu inti, situs Web Anda mendapatkan satu inti,
atau mungkin kita berbagi satu inti tersebut.
Kami juga berbagi ruang disk.
Dan kami juga sedang berbagi RAM, atau Random Access Memory
dari sebelumnya, yang ada juga sejumlah terbatas.
>> Dan itulah kuncinya.
Tidak peduli seberapa mahal komputer itu,
masih ada yang terbatas jumlah sumber daya di dalamnya.
Dan jadi lebih dan lebih Anda mencoba untuk mengkonsumsi sumber daya,
hal-hal yang lebih lambat mungkin menjadi.
Tapi kenapa?
Mengapa hal akan melambat sebagai gejala server yang kelebihan beban?
Apa yang terjadi?
>> AUDIENCE: [tidak terdengar]
DAVID Malan: Ya, persis.
Saya mengusulkan sebelumnya bahwa RAM adalah jenis memori.
Ini volatile, dimana itu dimana aplikasi dan data
disimpan ketika mereka sedang digunakan.
Dan jadi karena ada hanya sejumlah terbatas
hal yang tampaknya dapat lakukan sekaligus.
Dan itu juga lebih cepat, yang merupakan hal yang baik.
Tapi itu juga lebih mahal, yang merupakan hal yang buruk.
Dan itu juga karena hadir di bawah jumlah dari ruang disk, hard disk
ruang, yang cenderung lebih murah.
>> Dengan kata lain, Anda mungkin memiliki 4 terabyte
ruang disk di komputer Anda.
Tapi Anda mungkin memiliki 4 gigabyte, atau 64 gigabyte,
di urutan besarnya, faktor 1.000 kurang, RAM di komputer Anda.
Jadi, apa komputer lakukan?
Nah, anggaplah bahwa Anda miliki 64 gigabyte
RAM di server seperti ini, yang akan cukup umum, jika tidak rendah
hari ini.
Tapi anggaplah Anda memiliki begitu banyak pengguna melakukan begitu banyak hal
bahwa Anda jenis jenis perlu 65 gigabyte memori
untuk menangani semua itu penggunaan simultan?
>> Nah, Anda hanya bisa mengatakan, Maaf, beberapa jumlah pengguna
tidak bisa mengakses situs tersebut.
Dan itu adalah mengukur of last resort, tentu.
Atau Anda, sebagai operasi sistem, seperti Windows atau Mac
OS atau Linux atau Solaris atau jumlah OS lainnya di server itu,
hanya bisa memutuskan, Anda tahu apa?
Saya hanya memiliki 64 gigabyte RAM.
Saya jenis perlu 65.
Sehingga Anda tahu apa?
Aku akan mengambil 1 gigabyte senilai data di RAM
yang paling baru diakses dan hanya memindahkannya ke disk sementara,
harfiah menyalin dari puasa memori ke memori yang lebih lambat
sehingga saya kemudian bisa mengatasinya 65 gigabyte kebutuhan memori,
melakukan beberapa perhitungan di atasnya.
Kemudian ketika aku sudah selesai melakukan hal itu, Aku hanya akan bergerak pada disk,
bergerak yang RAM lain saya sementara menempatkan pada disk kembali ke dalam perangkat keras yang sebenarnya
sehingga aku agak multitasking.
>> Jadi aku semacam meletakkan hal-hal sementara di ruang lambat ini
jadi saya menciptakan ilusi penanganan semua orang.
Tapi ada perlambatan.
Mengapa?
Nah, di dalam hard ini disk hari ini adalah apa?
Sebaliknya, apa yang membuat hard berkendara yang berbeda dari RAM
sebaik Anda tahu sekarang?
>> AUDIENCE: [tidak terdengar]
>> DAVID Malan: OK, benar.
AUDIENCE: [tidak terdengar]
>> DAVID Malan: Jadi sangat benar.
Dan itu adalah efek samping atau fitur fakta RAM yang memang lebih cepat.
Dan karena itu Anda ingin menggunakannya untuk digunakan saat ini.
Dan disk lebih lambat.
Tapi itu permanen, atau nonvolatile.
Jadi Anda menggunakannya untuk penyimpanan jangka panjang.
Tapi dalam hal pelaksanaan, jika saya melihat ke atas
apa yang disebut DIMM, Dual Inline Memory Modul, ini adalah apa yang sepotong RAM
mungkin biasanya terlihat seperti.
>> Jadi dalam Mac-- kami itu bug.
Dalam Mac dan PC, desktop kita komputer akan memiliki batang memori,
Anda akan memanggil mereka, atau DIMM, atau SIMM kembali
hari, memori yang terlihat seperti ini.
laptop kita mungkin memiliki hal-hal yang adalah sepertiga ukuran atau setengah ukuran.
Mereka sedikit lebih kecil, tapi sedikit idea-- yang sama
potongan silikon hijau wafer atau plastik yang
memiliki sedikit chip hitam pada mereka dengan banyak kabel interkoneksi segalanya.
Anda mungkin memiliki sejumlah besar dalam ini dari komputer Anda.
Tapi takeaway di sini adalah itu sepenuhnya elektronik.
Hanya ada elektron mengalir pada perangkat ini.
Sebaliknya, jika kita melihat bagian dalam hard drive
dan menarik gambar di sini, Anda akan sebaliknya
melihat sesuatu seperti ini, yang tidak memiliki listrik
akan melalui itu akhirnya.
Tapi apa juga melompat keluar pada Anda tentang hal ini?
AUDIENCE: [tidak terdengar]
DAVID Malan: Ya, ada Rupanya bagian yang bergerak.
Ini semacam seperti rekor lama player atau pemain phonograph.
Dan itu cukup banyak adalah.
Ini sedikit lebih menarik daripada itu-- sedangkan pemain fonograf digunakan
alur dalam catatan, ini benar-benar menggunakan partikel magnetik kecil kecil
bahwa kita tidak bisa melihat.
Tetapi jika partikel magnetik kecil terlihat seperti ini, itu dianggap sebagai 1.
Dan jika terlihat seperti ini, utara-selatan bukan selatan-utara,
itu mungkin 0.
Dan kita akan lihat besok bagaimana kita bisa membangun dari itu untuk hal-hal yang lebih menarik.
>> Tapi apa pun itu harus secara fisik bergerak
adalah pasti akan pergi lebih lambat dari kecepatan cahaya,
yang dalam teori adalah apa elektron mungkin mengalir pada,
meskipun realistis tidak cukup.
perangkat-- jadi mekanik jauh lebih lambat.
Tapi mereka lebih murah.
Dan Anda bisa muat begitu banyak Data lebih dalam diri mereka.
Jadi fakta bahwa ada ada di sesuatu dunia
disebut memori virtual, menggunakan hard disk seperti ini
seolah-olah RAM transparan kepada pengguna,
hanya dengan memindahkan data dari RAM ke hard disk,
kemudian bergerak kembali ketika Anda membutuhkannya lagi, menciptakan perlambatan.
Karena Anda benar-benar harus menyalin dari satu tempat ke tempat lain.
Dan hal yang Anda menyalin ke dan dari sebenarnya lebih lambat dari RAM
di mana Anda ingin menjadi.
>> Alternatif solusi di sini- jika Anda tidak seperti itu melambat,
dan memori virtual Anda semacam sedang overtaxed,
apa solusi lain untuk masalah ini?
>> AUDIENCE: [tidak terdengar]
DAVID Malan: Yah, meningkatkan memori virtual
akan membiarkan kami melakukan ini pada skala yang lebih besar.
Kami bisa menangani 66 gigabyte layak kebutuhan memori, atau 67 gigabyte.
Tapi kira saya tidak suka turun lambat ini, pada kenyataannya
Saya ingin mematikan maya memori jika yang bahkan mungkin,
apa lagi yang bisa saya melemparkan masalah ini untuk mengatasinya,
di mana saya ingin menangani lebih banyak pengguna dan persyaratan memori lebih
dari saya secara fisik miliki saat ini?
>> AUDIENCE: [tidak terdengar]
>> DAVID Malan: Sayangnya tidak ada.
Jadi CPU dan core mereka dalam adalah sumber daya yang terbatas.
Dan tidak ada analog dalam konteks itu.
Pertanyaan bagus, meskipun.
Jadi hanya untuk menjadi jelas, juga, jika dalam komputer ini,
katakanlah, tongkat RAM yang terlihat seperti ini-- dan jadi kita sebut RAM ini.
Dan di sini adalah hard disk drive.
Dan aku hanya akan menarik ini pictorially sebagai lingkaran kecil.
Ada 0 dan 1 di kedua Data these--, kami akan generalisasi sebagai.
>> Dan pada dasarnya, jika pengguna menjalankan aplikasi seperti,
katakanlah, sebuah situs web yang membutuhkan ini banyak RAM per pengguna, apa yang saya usulkan,
dengan cara hal ini disebut memori virtual,
adalah untuk bergerak hanya sementara yang di sini sehingga sekarang saya
dapat memindahkan memori orang lain persyaratan di sana.
Dan kemudian ketika itu selesai, Saya dapat menyalin ini kembali atas
dan ini berlaku di sini, sehingga bergerak apa yang saya inginkan di sana tempat lain
sama sekali.
>> Jadi hanya ada banyak switcheroo, adalah takeaway di sini.
Jadi, jika Anda tidak suka ini, dan Anda tidak ingin menempatkan sesuatu pada hard drive,
apa semacam jelas solusi bisnis seseorang
untuk masalah, atau insinyur solusi, hal itu juga?
>> AUDIENCE: [tidak terdengar]
>> DAVID Malan: Ya, maksudku benar membuang uang pada masalah.
Dan sebenarnya, ini adalah sempurna Segue ke beberapa tingkat yang lebih tinggi
diskusi komputasi awan.
Karena banyak itu dimotivasi oleh keputusan keuangan,
bahkan tidak perlu teknologi.
Jika 64 gigs RAM terlalu sedikit, baik, mengapa tidak mendapatkan 128 gigabyte RAM?
Mengapa tidak mendapatkan 256 gigabyte RAM?
Nah, mengapa tidak?
>> AUDIENCE: [tidak terdengar]
DAVID Malan: Yah, itu biaya lebih banyak uang, yakin.
Dan jika Anda sudah memiliki cadangan ruang hard disk, efektif,
atau ekuivalen, ruang hard disk begitu jauh lebih murah Anda mungkin juga menggunakannya.
Jadi sekali lagi, ada trade off ini yang kami melihat bahkan lebih awal pada pagi ini,
di mana ada benar-benar tidak tentu jawaban yang benar,
hanya ada jawaban yang lebih baik atau lebih buruk berdasarkan apa yang sebenarnya Anda peduli.
>> Jadi ada juga realitas teknologi.
Saya tidak bisa membeli komputer, Setahu saya,
dengan satu triliun gigabyte RAM sekarang.
Itu hanya secara fisik tidak ada.
Jadi ada beberapa batas atas.
Tetapi jika Anda pernah bahkan berbelanja untuk Mac konsumen atau PC,
juga, umumnya ada kurva ini fitur
mana mungkin ada yang baik, lebih baik, dan komputer terbaik.
>> Dan keuntungan marginal pada pembelian dolar Anda
komputer terbaik dibandingkan komputer yang lebih baik
mungkin tidak hampir setinggi sebagai menghabiskan sedikit lebih banyak uang
dan mendapatkan komputer yang lebih baik atas komputer yang baik.
Dengan kata lain, Anda membayar premium untuk mendapatkan atas baris.
>> Dan apa yang akan kita lihat dalam diskusi komputasi awan
adalah bahwa apa yang sangat umum ini hari, dan apa yang perusahaan seperti Google
awal dipopulerkan, tidak membayar untuk dan bangunan benar-benar mewah, mahal
souped up komputer dengan banyak dan banyak dari segala sesuatu,
melainkan membeli atau membangun cukup komputer sederhana tapi banyak dari mereka,
dan menggunakan sesuatu yang umumnya disebut skala horisontal bukan
dari skala vertikal.
>> Jadi skala vertikal berarti mendapatkan lebih banyak RAM, disk lebih banyak, lebih dari segala sesuatu,
dan semacam berinvestasi vertikal di hardware Anda
sehingga Anda hanya mendapatkan terbaik dari yang terbaik dari yang terbaik,
tapi Anda membayar untuk itu.
Horisontal scaling semacam dapatkan bawah lapis hal, model yang baik,
atau bahkan model yang lebih buruk, tapi mendapatkan banyak dari mereka.
Tapi segera setelah Anda mendapatkan banyak mengujinya-- misalnya, dalam kasus ini,
server web, jika server yang satu ini atau salah satu web host tidak cukup,
kemudian hanya intuitif, yang solusi untuk masalah ini beban
atau overload pada server Anda adalah baik mendapatkan server yang lebih besar
atau, apa yang saya usulkan di sini sebagai gantinya dari skala vertikal sehingga untuk berbicara,
akan, kau tahu apa?
Hanya mendapatkan kedua ini.
Atau mungkin bahkan mendapatkan ketiga.
Tapi sekarang kita buat masalah rekayasa
oleh sifat bisnis ini atau keputusan keuangan.
Apa masalahnya rekayasa sekarang?
>> AUDIENCE: [tidak terdengar]
>> DAVID Malan: Ya, bagaimana Anda menghubungkan mereka dan-- maaf?
>> AUDIENCE: [tidak terdengar]
DAVID Malan: Benar, karena saya masih have--
jika saya memperkenalkan kembali saya ke dalam gambar ini, jika ini adalah laptop saya di suatu tempat
di internet, yang sekarang antara saya dan perusahaan yang sedang kita bicarakan,
sekarang saya harus mencari tahu, yang Server cara mengirim pengguna tertentu?
Dan jika ada pengguna lain, seperti ini, dan kemudian satu ini di sini,
dan mungkin ini adalah pengguna A, ini adalah pengguna B, ini adalah pengguna C,
dan ini adalah server 1, 2, dan 3-- sekarang jawaban intuitif mungkin di sini hanya,
kami akan mengirimkan pengguna A ke 1 dan B untuk 2 dan C 3.
Dan kita dapat menangani 3 kali lebih banyak pengguna.
>> Tapi itu terlalu menyederhanakan.
Bagaimana Anda memutuskan siapa untuk mengirim mana?
Jadi mari kita coba untuk alasan melalui ini.
Jadi misalkan bahwa komputer A, B, dan C adalah pelanggan,
dan server 1, 2, dan 3 adalah berskala horizontal server.
Jadi mereka semacam identik.
Mereka semua menjalankan software yang sama.
Dan mereka semua bisa melakukan hal yang sama.
Tapi alasan yang kita miliki tiga dari mereka begitu
bahwa kita dapat menangani tiga kali lebih banyak orang sekaligus.
>> Jadi kita tahu dari kami diskusi sebelum makan siang
bahwa ada hardware di antara laptop dan server.
Tapi kita akan hanya semacam generalisasi yang sekarang sebagai internet atau awan.
Tapi kita tahu bahwa di rumah saya, mungkin ada router rumah.
Dekat server, mungkin ada router, DNS server, DHCP.
Ada bisa apa saja kita inginkan dalam cerita ini.
>> Jadi bagaimana kita mulai untuk memutuskan, ketika pengguna A pergi ke something.com,
yang server untuk rute pengguna untuk?
Bagaimana mungkin kita mulai menceritakan kisah ini?
AUDIENCE: Load balancing?
DAVID Malan: Load balancing.
Bagaimana apanya?
>> AUDIENCE: Kembali mana yang paling penggunaan adalah
dan mana yang memiliki kebanyakan sumber daya yang tersedia.
DAVID Malan: OK, jadi biar memperkenalkan tipe baru hardware
bahwa kita belum dibahas, yang adalah persis seperti itu, beban penyeimbang.
Hal ini juga bisa menjadi server.
Ini bisa terlihat persis seperti salah satu yang kita lihat saat yang lalu.
Sebuah penyeimbang beban benar-benar hanya sepotong software
yang Anda jalankan pada perangkat keras.
>> Atau Anda dapat membayar vendor, seperti Citrix atau orang lain, Cisco atau orang lain.
Anda dapat membayar untuk hardware mereka sendiri, yang merupakan penyeimbang beban hardware.
Tapi itu hanya berarti mereka pra-instal load balancing
perangkat lunak pada perangkat keras mereka dan menjualnya kepada Anda semua bersama-sama.
Jadi kita hanya akan menarik sebagai persegi panjang untuk tujuan kita.
>> Bagaimana sekarang cara menerapkan penyeimbang beban?
Dengan kata lain, ketika pengguna A ingin kunjungi situs saya, permintaan mereka entah bagaimana
atau lainnya, mungkin dengan cara yang router kita bicarakan sebelumnya,
akan akhirnya mencapai load balancer ini, yang kemudian
perlu membuat keputusan routing seperti.
Tapi itu routing untuk semacam dari tujuan yang lebih tinggi sekarang.
Ini bukan hanya tentang mendapatkan dari titik A ke titik
B. Ini tentang memutuskan Titik B adalah yang terbaik di antara mengujinya--
1, 2, atau 3 dalam hal ini.
>> Jadi bagaimana saya memutuskan apakah untuk pergi ke 1, ke 2, ke 3?
Apa mungkin kotak hitam ini, sehingga untuk berbicara, menjadi melakukan di dalam?
Ini juga merupakan contoh lain di ilmu komputer abstraksi.
Saya telah benar-benar diambil penyeimbang beban sebagai kotak hitam dengan tinta hitam, di dalam
dari yang beberapa menarik logika, atau sihir bahkan,
dari yang perlu datang a decision-- 1, 2, atau 3.
Dan input hanya A.
>> AUDIENCE: [tidak terdengar]
DAVID Malan: Maaf?
AUDIENCE: [tidak terdengar]
DAVID Malan: Baiklah, bagaimana mungkin kita mengkategorikan jenis transaksi
sini?
>> AUDIENCE: Melihat halaman web dibandingkan query database.
DAVID Malan: OK, itu bagus.
Jadi mungkin pengguna ini A ingin melihat halaman web.
Dan mungkin itu bahkan konten statis, sesuatu yang mengubah jarang, jika pernah.
Dan yang tampaknya seperti operasi cukup sederhana.
Jadi mungkin kita hanya akan sewenang-wenang, tapi cukup, mengatakan,
server 1, tujuan hidupnya adalah hanya melayani sampai konten statis,
file yang jarang, jika pernah, perubahan.
Mungkin itu gambar pada halaman.
Mungkin itu teks pada halaman atau semacam seperti lain hal tidak menarik,
tidak ada transaksional, tidak dinamis.
>> Sebaliknya, jika pengguna A adalah memeriksa dari keranjang belanja nya yang
membutuhkan database, tempat untuk menyimpan dan ingat transaksi itu, juga
mungkin permintaan itu harus pergi ke server 2.
Jadi itu bagus.
Jadi kita bisa memuat keseimbangan berdasarkan pada jenis permintaan.
Bagaimana lagi kita bisa melakukan ini?
apa other--
>> AUDIENCE: Berdasarkan server utilisasi dan kapasitas.
DAVID Malan: Benar, OK.
Jadi Anda menyebutkan bahwa sebelumnya, Kareem.
Jadi bagaimana jika kita memberikan beberapa masukan pada [tidak terdengar] antara server 1, 2,
dan 3 untuk beban ini penyeimbang sehingga mereka hanya terus menginformasikan
penyeimbang beban apa status mereka?
Seperti, hey, penyeimbang beban, Aku di pemanfaatan 50%.
Dengan kata lain, saya harus setengah banyak pengguna
karena saya benar-benar dapat menangani sekarang.
Hei, load balancer, aku pada pemanfaatan 100%.
Hei, load balancer, pemanfaatan 0%.
Penyeimbang beban, jika itu dirancang dengan cara yang
dapat mengambil pada mereka komentar sebagai masukan, itu kemudian dapat
memutuskan, ooh, nomor 2 adalah 100%.
Mari saya kirim tidak ada permintaan masa depan untuk dirinya selain pengguna sudah terhubung.
Orang ini pada 0%.
Mari kita mengirim banyak lalu lintas ke dia.
Orang ini mengatakan dia pada 50%.
Mari kita mengirim beberapa lalu lintas kepadanya.
>> Sehingga akan menjadi bahan, yang kita bisa mengambil beban ke rekening.
Dan itu akan berubah dari waktu ke waktu.
Jadi keputusan akan berubah.
Jadi itulah teknik yang benar-benar baik, salah satu yang umum digunakan.
Apa lagi yang bisa kita lakukan?
Dan mari kita sebenarnya hanya meringkas di sini.
Jadi keputusan di sini bisa berdasarkan jenis lalu lintas, saya akan menyebutnya.
Hal ini dapat didasarkan pada beban.
Mari kita lihat apakah kita tidak bisa datang dengan beberapa lainnya.
>> AUDIENCE: [tidak terdengar]
DAVID Malan: Location.
Jadi itu bagus.
Jadi yang lokasi bagaimana mungkin Anda memanfaatkan informasi itu?
>> AUDIENCE: [tidak terdengar]
>> DAVID Malan: Oh, itu bagus.
Dan tentang berapa milidetik akan itu menurun
berdasarkan apa yang kita lihat ini pagi, akan Anda katakan?
>> AUDIENCE: [tidak terdengar]
>> DAVID Malan: Nah, berdasarkan pada rute jejak
kita lihat sebelumnya, yang hanya ukuran kasar sesuatu,
setidaknya berapa lama untuk data untuk mendapatkan dari A ke B
terasa seperti sesuatu yang lokal, apa, seperti 74 milidetik, memberi atau mengambil?
Dan kemudian apa-apa 100 ditambah, 200 plus mungkin di luar negeri.
Dan berdasarkan itu saja, tampaknya masuk akal untuk mengasumsikan
bahwa untuk pengguna di AS untuk mengakses server Eropa
mungkin mengambil dua kali atau tiga kali selama, bahkan dalam milidetik,
daripada mungkin mengambil jika itu Server berada di sini
geografis, atau sebaliknya.
Jadi ketika saya mengusulkan sebelumnya bahwa terutama
setelah Anda melewati bahwa 200 milidetik ambang batas, memberi atau mengambil,
manusia yang mulai memperhatikan.
Dan rute jejak hanya asumsi mentah, data yang tidak menarik.
Bila Anda memiliki sebuah situs web, Anda harus dapatkan pengguna men-download gambar atau film
file, banyak teks, permintaan berikutnya.
Kami melihat ketika kami mengunjungi, apa yang itu, Facebook atau Amazon sebelumnya,
ada seluruh banyak hal yang perlu di-download.
Sehingga akan bertambah.
Jadi multi-detik mungkin tidak masuk akal.
Jadi baik, geografi merupakan salah satu bahan.
Jadi di perusahaan sebenarnya seperti Akamai, jika Anda pernah mendengar tentang mereka,
atau orang lain telah lama mengambil geografi ke rekening.
Dan ternyata bahwa dengan sifat suatu alamat IP, laptop saya alamat IP,
Anda dapat menyimpulkan, dengan beberapa kemungkinan, di mana Anda berada di dunia.
Dan sebenarnya ada layanan pihak ketiga yang
dapat membayar yang memelihara database alamat IP dan geografi
yang dengan percaya diri yang tinggi akan benar ketika ditanya, di mana di dunia
adalah alamat IP ini?
>> Dan sebenarnya apa perusahaan lain menggunakan ini?
Jika Anda memiliki Hulu atau Netflix, jika Anda pernah bepergian ke luar negeri,
dan Anda mencoba untuk menonton sesuatu di Hulu, dan Anda tidak di AS,
Anda mungkin melihat pesan mengatakan, tidak di Amerika Serikat.
Maaf, Anda tidak dapat melihat konten ini.
>> AUDIENCE: [tidak terdengar]
>> DAVID Malan: Oh, benar-benar?
Tapi ya, jadi sebenarnya itu aplikasi yang sempurna
dari sesuatu yang sangat teknis untuk masalah yang sebenarnya.
Jika Anda adalah untuk VPN dari Eropa atau Asia atau di mana saja
di dunia untuk perusahaan Anda kantor pusat di New York
atau di mana pun Anda berada, Anda akan membuat penampilan
ke situs web luar yang Anda benar-benar di New York,
meskipun Anda secara fisik cukup jauh.
>> Sekarang Anda pengguna akan tahu kau jelas jauh.
Tapi kau juga akan merasakannya karena dari mereka milidetik tambahan.
Bahwa tambahan jarak dan enkripsi yang terjadi di VPN
akan memperlambat segalanya.
Jadi mungkin atau mungkin tidak menjadi pengalaman yang hebat.
Tapi Hulu dan Netflix akan melihat Anda sebagai duduk di suatu tempat di New York,
Anda sudah jelas dikumpulkan.
Apa yang sempurna solusi untuk itu.
>> Baiklah, sehingga geografi adalah salah satu keputusan.
Apa lagi yang bisa kita gunakan untuk memutuskan bagaimana untuk rute lalu lintas dari A, B, dan C
1, 2, dan 3, sekali lagi, menempatkan topi rekayasa pada?
Ini semua terdengar sangat rumit.
Uh, aku bahkan tidak tahu di mana untuk mulai menerapkan mereka.
Beri aku sesuatu yang sederhana.
Apa cara paling sederhana untuk membuat keputusan ini?
>> AUDIENCE: Apakah tersedia server?
>> DAVID Malan: Apakah tersedia server?
Jadi tidak buruk.
Itu bagus.
Itu semacam nuancing beban.
Jadi mari kita ingat-kategori beban.
Jika Anda tersedia, aku hanya akan mengirim data ke sana.
Tapi itu bisa menjadi bumerang cepat.
Karena jika saya menggunakan logika itu, dan jika saya selalu bertanya 1, yang Anda pada, yang Anda pada,
kau, jika jawabannya selalu ya, Aku akan mengirim 100% dari lalu lintas
dia, 0% untuk orang lain.
Dan di beberapa titik, kita akan memukul bahwa perlambatan atau situs tidak tersedia.
Jadi apa yang sedikit lebih baik dari itu tapi masih cukup sederhana
dan hampir tidak sepintar mengambil semua ini data tambahan ke rekening?
>> AUDIENCE: Biaya per server.
DAVID Malan: Biaya per server.
OK, jadi biar melemparkan bahwa dalam kategori beban, juga.
Karena apa yang akan Anda temukan di perusahaan, too-- bahwa jika Anda
meng-upgrade server Anda dari waktu ke waktu atau membeli lebih banyak,
Anda mungkin tidak bisa mendapatkan persis versi yang sama dari perangkat keras.
Karena jatuh dari tanggal.
Anda tidak bisa membelinya lagi.
Harga berubah.
>> Jadi, Anda mungkin memiliki server yang berbeda di cluster Anda, sehingga untuk berbicara.
Itu benar-benar baik-baik saja.
Tapi hardware tahun depan mungkin dua kali lebih cepat,
dua kali mampu seperti tahun ini.
Jadi kita dapat melemparkan bahwa ke dalam kategori beban.
Umpan balik ini lingkaran antara 1, 2, dan 3 di penyeimbang beban
tentu bisa mengatakan itu, hey, aku pada kapasitas 50%.
Tapi omong-omong, saya juga memiliki dua kali lebih banyak core.
Menggunakan informasi tersebut.
Bahkan simpler-- dan ini akan menjadi tema dalam ilmu komputer.
Jika ragu, atau ketika Anda ingin sederhana solusi yang umumnya bekerja dengan baik
dari waktu ke waktu, tidak memilih sama Server sepanjang waktu, tetapi choose--
>> AUDIENCE: A satu random?
DAVID Malan: -sebuah Server acak.
Ya, memilih satu atau yang lain.
Jadi keacakan sebenarnya bahan yang sangat kuat ini
dalam ilmu komputer, dan dalam rekayasa lebih
umumnya, terutama ketika Anda ingin untuk membuat keputusan sederhana cepat
tanpa rumit dengan semua ini sangat pintar, tetapi juga
sangat cerdas, solusi yang membutuhkan semua lebih rekayasa, semua
yang lebih berpikir, ketika benar-benar, mengapa tidak saya
hanya jenis melempar koin, atau tiga sisi koin dalam kasus ini,
dan memutuskan apakah akan pergi 1, 2, 3?
>> Yang mungkin menjadi bumerang probabilistically, tapi banyak seperti kemungkinan
membalik kepala lagi dan lagi dan lagi dan lagi
dan lagi dan lagi mungkin di Super reality--, super tidak mungkin.
Jadi dari waktu ke waktu, kemungkinan besar hanya mengirim pengguna secara acak
1, 2, dan 3 akan bekerja baik-baik saja.
Dan ini adalah teknik umumnya dikenal sebagai round robin.
>> Atau sebenarnya, itu tidak round robin.
Ini akan menjadi pendekatan acak.
Dan jika Anda ingin menjadi lebih sedikit lebih sederhana dari itu,
round robin akan, orang pertama berjalan 1, orang kedua untuk 2, orang ketiga
3, orang keempat untuk 1.
Dan di situlah letak round robin.
Anda hanya jenis pergi sekitar dalam satu siklus.
>> Sekarang, Anda harus pintar tentang hal itu.
Anda tidak harus membabi buta mengirim pengguna ke Server nomor satu jika apa yang terjadi?
Jika itu pada kapasitas max, atau itu hanya tidak lagi responsif.
Jadi idealnya Anda ingin beberapa jenis umpan balik.
Jika tidak, Anda hanya mengirim semua pengguna Anda ke jalan buntu.
Tapi itu bisa diperhitungkan juga.
>> Jadi jangan di bawah menghargai nilai hanya keacakan, yang cukup sering
solusi untuk jenis-jenis masalah.
Dan kami akan menuliskan round robin.
Jadi bagaimana beberapa perusahaan menerapkan round robin atau keacakan
atau dari keputusan ini?
Nah sayangnya, mereka melakukan hal-hal seperti ini.
Mari saya menarik screenshot cepat lagi.
>> Sebenarnya, mari kita lakukan dua.
Aku tidak tahu mengapa kita mendapatkan semua hidangan ini.
Itu sangat aneh.
Baiklah, apa yang saya benar-benar inginkan adalah screenshot.
Itu aneh.
Baiklah, jadi saya bisa spoof ini.
Saya tidak tahu berapa jauh lagi Saya ingin terus bergulir.
>> Jadi sangat umum, Anda akan menemukan diri Anda di alamat seperti www.2.acme.com,
mungkin www.3 atau 4 atau 5.
Dan mengawasi untuk ini.
Anda tidak melihat itu yang sering.
Tetapi ketika Anda melakukannya, itu jenis cenderung lebih besar, lebih tua, perusahaan stodgier
bahwa teknologi tidak benar-benar tampaknya tahu apa yang mereka lakukan.
Dan Anda lihat ini pada perusahaan teknologi kadang-kadang, orang-orang yang lebih tua.
>> Jadi apa yang mereka lakukan?
Bagaimana mereka menerapkan load balancing, akan tampak?
Jika Anda menemukan diri Anda sebagai pengguna mengetik www.something.com,
dan tiba-tiba Anda berada di www.2.something.com,
apa yang memiliki beban mereka penyeimbang mungkin dilakukan?
AUDIENCE: [tidak terdengar]
>> DAVID Malan: Yeah, sehingga penyeimbang beban diduga
membuat keputusan berdasarkan salah satu Keputusan ini membuat processes--
tidak terlalu penting yang.
Tapi seperti saya sudah ditarik nomor di papan sini,
server tidak hanya disebut 1, 2, dan 3.
Mereka mungkin sedang disebut www1, www2, www3.
Dan ternyata dalam permintaan HTTP adalah fitur ini.
Dan aku akan mensimulasikan ini sebagai berikut.
>> Aku akan membuka yang sama tab jaringan pengembang seperti sebelumnya hanya
sehingga kita bisa melihat apa yang terjadi di bawah kap mesin.
Aku akan membersihkan layar.
Dan aku akan pergi ke, mari kita mengatakan, http://harvard.edu.
Sekarang untuk apa pun alasan bisnis, Harvard
telah memutuskan, seperti banyak, banyak situs-situs lain,
standarisasi yang website di www.harvard.edu
untuk kedua teknis dan alasan pemasaran.
Itu hanya jenis di vogue memiliki www.
>> Jadi server di Harvard memiliki entah bagaimana mengarahkan pengguna,
seperti yang saya selalu mengatakan, dari salah satu URL ke yang lain.
Bagaimana cara kerjanya?
Nah, biarkan aku pergi ke depan dan tekan Enter.
Dan melihat URL memang cepat diubah menjadi www.harvard.edu.
Mari saya gulir kembali ini sejarah dan klik debug
informasi diagnostik, jika Anda mau.
Biarkan aku melihat permintaan saya.
>> Jadi, inilah permintaan saya buat.
Dan perhatikan itu konsisten dengan jenis yang dari meminta saya terbuat dari Facebook sebelumnya.
Tapi perhatikan respon.
Apa yang berbeda di respon kali ini?
>> AUDIENCE: [tidak terdengar]
>> DAVID Malan: Ya, jadi itu bukan 200 OK.
Ini bukan 404 Not Found.
Ini adalah 301 Moved Permanently, yang adalah jenis cara yang lucu untuk mengatakan,
Harvard telah menaikkan dan pindah tempat lain untuk www.harvard.edu.
301 menandakan bahwa ini adalah redirect.
Dan ke tempat seharusnya pengguna tampaknya diarahkan?
Ada berita menarik tambahan informasi di dalam amplop itu.
Dan masing-masing baris ini sekarang akan mulai menelepon header HTTP.
Header hanya nilai kunci pair-- sesuatu usus sesuatu.
Ini sepotong informasi.
Di mana seharusnya baru Lokasi tampaknya menjadi?
Perhatikan baris terakhir di antara semua header tersebut.
>> AUDIENCE: [tidak terdengar]
>> DAVID Malan: Ya, jadi ada informasi tambahan.
Baris pertama yang saya disorot mengatakan 301 Moved Permanently.
Nah, di mana telah pindah?
The line-- lalu dan mereka tidak harus dalam urutan ini.
Hal ini dapat acak.
Lokasi usus berarti, hey Browser, pergi ke URL ini sebagai gantinya.
>> Jadi browser memahami HTTP pengalihan.
Dan ini adalah sangat, sangat cara yang umum memantul
pengguna dari satu tempat ke tempat lain.
Misalnya, jika Anda sudah pernah mencoba untuk mengunjungi situs web yang Anda tidak
login ke, Anda mungkin tiba-tiba menemukan sendiri di URL baru sama sekali menjadi
diminta untuk log in.
>> Bagaimana cara kerjanya?
Server mungkin mengirimkan 301.
Ada juga nomor lain, seperti 302, agak berbeda dalam arti,
yang mengirimkan Anda ke URL lain.
Dan kemudian server, setelah Anda login,
akan mengirimkan kembali ke tempat Anda benar-benar dimaksudkan.
>> Jadi apa, kemudian, adalah buruk website direkayasa lakukan?
Ketika Anda mengunjungi www.acme.com, dan mereka hanya
kebetulan memiliki nama server mereka www1, www2, www3, dan sebagainya,
mereka sangat simply-- yang adil, tapi sangat
semacam foolishly-- mengarahkan Anda ke server sebenarnya berbeda bernama.
Dan bekerja baik-baik saja.
Sangat menyenangkan dan mudah.
>> Kita telah melihat bagaimana itu akan dilakukan di bawah tenda
dalam amplop virtual.
Tapi mengapa ini bisa dibilang Keputusan rekayasa buruk?
Dan mengapa aku semacam merendahkan menuju rekayasa tertentu
pendekatan?
Berpendapat mengapa hal ini buruk.
Ben?
AUDIENCE: [tidak terdengar]
DAVID Malan: Setiap server harus memiliki duplikat salinan website.
Aku OK dengan itu.
Dan pada kenyataannya, itulah yang aku seandainya untuk seluruh cerita ini,
karena jika kita wanted-- baik sebenarnya, kecuali Dan sebelumnya
saran, di mana jika Anda memiliki yang berbeda server melakukan hal-hal yang berbeda, maka
mungkin mereka benar-benar bisa fungsional melakukan hal yang berbeda.
>> Tapi meskipun begitu, di beberapa titik, Anda database akan mendapatkan kelebihan beban.
Server aset statis Anda akan mendapatkan kelebihan beban.
Jadi di beberapa titik, kami kembali pada cerita ini, di mana kita
perlu beberapa salinan dari hal yang sama.
Jadi aku OK dengan itu.
AUDIENCE: [tidak terdengar]
>> DAVID Malan: OK, sehingga beberapa halaman mungkin tidak proporsional populer.
Dan sebagainya terpaku pada satu alamat belum tentu yang terbaik.
[Tidak terdengar]?
>> AUDIENCE: [tidak terdengar]
>> DAVID Malan: Apa yang Anda maksud dengan itu?
AUDIENCE: [tidak terdengar]
>> DAVID Malan: Ya, persis.
Jadi Anda tidak ingin tentu have-- Anda pasti
tidak ingin memiliki pengguna Anda manual mengetik di www1 atau www2.
Dari perspektif branding, itu hanya terlihat sedikit konyol.
Jika Anda hanya ingin semacam bersih, pengalaman elegan,
memiliki semacam ini secara acak URL bernomor benar-benar tidak baik.
Karena itu pengguna yang pasti akan copy dan paste
dalam email atau pesan instan.
>> Sekarang mereka menyebarkan.
Sekarang Anda semacam membingungkan Anda kurang penonton teknis, yang berpikir
alamat web Anda www2.something.com.
Tidak ada semantik menarik untuk itu.
Itu hanya terjadi menjadi mendasari rinci teknis yang telah Anda
nomor server Anda dengan cara ini.
>> Dan lebih buruk lagi, bagaimana jika, misalnya, mungkin sekitar waktu Natal ketika
bisnis benar-benar booming, Anda punya www1 melalui www99,
namun pada bulan Januari dan Februari dan seterusnya, Anda mematikan setengah dari mereka
sehingga Anda hanya memiliki www1 melalui www50?
Apa implikasinya sekarang untuk itu keputusan bisnis yang sangat wajar?
AUDIENCE: [tidak terdengar]
DAVID Malan: Anda perlu mengelola semua mereka yang masih.
AUDIENCE: [tidak terdengar]
DAVID Malan: Tepat.
Itu semacam menangkap ada.
Jika pelanggan Anda dalam kebiasaan bookmark hal, email mereka, hanya
menyimpan URL di suatu tempat, atau apakah itu hanya di auto mereka
menyelesaikan di browser mereka sehingga mereka tidak benar-benar sengaja mengetik,
itu hanya terjadi, mereka mungkin, selama 11 bulan dalam setahun
efektif, mencapai jalan buntu.
Dan hanya yang paling cerdik dari pengguna akan menyadari,
mungkin aku harus secara manual menghapus nomor ini.
Maksudku, itu hanya tidak akan terjadi dengan banyak pengguna, sehingga buruk bagi bisnis,
buruk rekayasa pelaksanaan bijaksana.
>> Jadi untungnya, itu bahkan tidak diperlukan.
Ternyata apa yang beban balancers dapat melakukan
adalah bukannya mengatakan, ketika A membuat request-- sebuah hey A, pergi ke 1.
Dengan kata lain, bukan mengirim redirect yang
sehingga langkah satu di ini Proses adalah pergi di sini,
ia kemudian diperintahkan untuk pergi ke tempat lain.
Dan langkah ketiga adalah, dia pergi ke tempat lain.
>> Anda malah bisa terus rute, untuk tetap menggunakan istilah itu, semua data A
melalui penyeimbang beban sehingga ia tidak pernah kontak 1, 2, atau 3 langsung.
Semua lalu lintas tidak mendapatkan "diarahkan" oleh beban balancer itu sendiri.
Dan sekarang kita semacam sengaja mengaburkan garis
antara berbagai perangkat.
Sebuah penyeimbang beban dapat data rute.
Ini hanya sebuah fungsi yang memiliki.
>> Jadi penyeimbang beban, juga, itu software, benar-benar.
Dan router adalah bagian dari perangkat lunak.
Dan Anda benar-benar dapat memiliki dua buah perangkat lunak dalam
dari satu komputer fisik sehingga beban penyeimbang dapat melakukan ini beberapa hal.
>> Jadi ada satu cara lain untuk melakukan hal ini, yang sebenarnya
kembali ke semacam prinsip-prinsip pertama dari DNS, yang kita bicarakan
sebelum istirahat.
DNS adalah Domain Name System.
Ingat bahwa Anda dapat meminta server DNS, apa
alamat IP dari google.com, facebook.com?
>> Dan kita benar-benar bisa melakukan ini.
Sebuah alat kita tidak menggunakan sebelumnya adalah satu itu hanya sebagai diakses,
disebut nslookup, untuk server nama lookup.
Dan aku hanya akan mengetik facebook.com.
Dan saya melihat bahwa IP Facebook alamat rupanya ini.
Biarkan aku pergi ke depan dan menyalin itu, pergi ke browser,
dan pergi ke http: // dan yang alamat IP dan tekan Enter.
Dan benar saja, tampaknya bekerja.
>> Sekarang bekerja mundur, apa yang dalam amplop maya
bahwa Facebook menanggapi dengan saat Saya mengunjungi yang menangani IP langsung?
Karena pemberitahuan, di mana aku sekarang?
Di mana aku sekarang, alamat?
>> AUDIENCE: [tidak terdengar]
>> DAVID Malan: Pada versi aman, dan di www.facebook.com itu.
Jadi bukan bahkan hanya alamat IP yang aman.
Facebook telah diambil itu pada dirinya sendiri mengatakan, ini konyol.
Kami tidak akan membuat Anda di ini mencari URL jelek itu numerik.
Kami akan mengirimkan HTTP mengarahkan dengan cara yang tajuk yang sama
yang kami lihat before-- Lokasi usus sesuatu.
>> Dan ini berarti bahwa di bawah hood masih alamat IP ini.
Setiap komputer di internet memiliki alamat IP, akan terlihat.
Tapi Anda tidak perlu harus untuk mengekspos bahwa untuk pengguna.
Dan banyak seperti kembali pada hari, ada adalah 1-800-mengumpulkan, 1-800-C-O-L-L-E-C-T,
di AS, adalah cara membuat collect panggilan melalui telepon yang sangat mudah diingat
nomor, atau 1-800-MATTRESS untuk membeli tempat tidur, dan mnemonik serupa yang bahkan Anda lihat
di telepon jenis jenis masih, bahwa surat-surat peta ke nomor.
>> Sekarang, kenapa begitu?
Nah, itu jauh lebih mudah untuk menghafal 1-800-MATTRESS atau 1-800-KUMPULKAN bukan
dari 1-800 sesuatu sesuatu sesuatu sesuatu sesuatu sesuatu
sesuatu, di mana masing-masing dari mereka adalah digit.
Demikian pula, dunia belajar cepat bahwa kita tidak boleh
memiliki orang-orang menghafal alamat IP.
Itu akan konyol.
Kita akan menggunakan nama sebagai gantinya.
Dan itulah mengapa DNS lahir.
>> Baiklah, jadi dengan mengatakan bahwa, dalam hal load balancing, mari kita coba yahoo.com.
Nah, itulah yang menarik.
Yahoo tampaknya akan kembali tiga IP.
Jadi kesimpulan dari ini, jika Anda bisa, apa yang
cara lain bahwa kita bisa menerapkan Gagasan ini load balancing
mungkin tanpa menggunakan fisik perangkat, perangkat fisik baru ini?
>> Dengan kata lain, dapat saya menghilangkan pendanaan yang Anda miliki untuk penyeimbang beban
dan memberitahu Anda untuk menggunakan beberapa ada hardware untuk melaksanakan
Gagasan ini load balancing?
Dan spoiler adalah, ya, tapi apa, atau bagaimana?
Apa Yahoo mungkin lakukan di sini?
Kareem?
OK, Chris?
AUDIENCE: [tidak terdengar]
DAVID Malan: Ya, semua tiga dari mereka yang bekerja.
Jadi keacakan, round robin, yang lokasi Anda hanya bisa
memanfaatkan potongan yang ada dari teka-teki yang kita bicarakan sebelumnya dari DNS
Sistem dan hanya mengatakan, ketika pertama pengguna dari hari permintaan yahoo.com,
memberi mereka alamat IP pertama, seperti yang berakhir di 45 sana.
Dan waktu berikutnya permintaan pengguna alamat IP dari yahoo.com
dari suatu tempat di dunia, memberi mereka IP kedua,
maka ketiga IP, maka pertama IP, kemudian yang kedua.
Atau menjadi pintar tentang hal itu dan melakukannya secara grafis.
Atau apakah itu secara acak dan tidak hanya melakukan itu round robin dengan cara ini.
>> Dan dalam hal ini, maka kita bahkan tidak perlu
untuk memperkenalkan hitam ini kotak ke dalam gambar kami.
Kita tidak perlu perangkat baru.
Kami hanya mengatakan komputer untuk pergi ke server secara langsung,
efektif, tetapi tidak dengan cara nama mereka.
Mereka tidak perlu tahu nama.
Mereka hanya diberitahu bahwa yahoo.com peta ke salah satu dari alamat IP tersebut.
>> Sehingga mengirimkan permintaan yang sama persis.
Tapi di luar amplop, itu hanya
menempatkan IP yang diberitahu.
Dan dengan cara ini, juga, bisa kami memuat menyeimbangkan permintaan
dengan hanya mengirimkan amplop ke yang berbeda salah satu server Yahoo sendiri?
>> Dan jika kita terus menggali, kita akan melihat Mungkin perusahaan lain dengan lebih.
CNN telah dua terekspos publik.
Meskipun sebenarnya jika kita melakukan ini lagi dan again-- cnn.com-- Anda dapat melihat
mereka mengubah urutan, sebenarnya.
Jadi mekanisme apa yang CNN menggunakan, rupanya?
>> AUDIENCE: Random.
DAVID Malan: Yah, itu bisa acak, meskipun
tampaknya bersepeda bolak-balik.
Jadi mungkin round robin di mana mereka hanya beralih urutan sehingga
bahwa saya mungkin akan mengambil yang pertama.
komputer saya akan mengambil pertama setiap kali.
Jadi itu load balancing.
Dan yang memungkinkan kita, pada akhirnya, untuk memetakan data, atau permintaan peta,
di beberapa server.
Jadi apa jenis masalah sekarang masih ada?
Rasanya seperti kami hanya benar-benar memecahkan masalah yang baik.
Kami mendapat pengguna ke server yang berbeda.
Tapi-- oh, dan Chris, melakukan Anda memiliki pertanyaan sebelumnya?
>> AUDIENCE: [tidak terdengar]
>> DAVID Malan: Benar-benar tergantung.
Jadi apa yang terjadi di sini?
Dan kita benar-benar dapat melihat ini.
Jadi mari kita coba Yahoo.
Sebenarnya, mari kita pergi ke Facebook.
Karena kita tahu bahwa salah satu bekerja.
Jadi aku akan menyalin alamat IP lagi.
Aku akan menutup semua tab ini.
Aku akan pergi terbuka yang tab jaringan khusus di sini.
Dan aku akan mengunjungi hanya http: //.
Dan sekarang aku akan tekan Enter.
Dan mari kita lihat apa yang terjadi.
>> Jika saya melihat bahwa permintaan, pemberitahuan bahwa Facebook my-- adalah contoh buruk.
Karena mereka memiliki Teknik super mewah
yang menyembunyikan detail yang dari kami.
Membiarkan saya menggunakan Yahoo instead-- http: // IP itu.
Mari kita membuka jaringan kami tab, melestarikan log.
Dan di sini kita pergi, Enter.
Itu lucu.
OK, jadi di sini adalah terkenal 404 pesan.
Apa yang lucu di sini adalah bahwa mereka mungkin tidak akan kembali.
Karena mungkin ada bukan sesuatu yang salah per se.
Mereka baru saja sengaja memutuskan untuk tidak mendukung
bentuk numerik dari alamat mereka.
>> Jadi apa yang kita benar-benar melihat di tab jaringan, jika saya melakukan ini di sini,
adalah, seperti yang saya katakan, yang terkenal 404, di mana jika saya melihat header respon,
ini adalah apa yang saya dapatkan di sini-404 Not Found.
Jadi mari kita coba yang lain.
Mari kita lihat apakah CNN bekerja sama dengan kami.
Saya akan ambil salah satu alamat IP CNN, jelas ini, http, dah, dah, dah, dah.
Jadi untuk menjawab Chris pertanyaan, salah satu yang bekerja.
>> Dan mari kita pergi ke header respon.
Sebenarnya tidak ada, baiklah, saya berjuang untuk menemukan contoh kerja.
Jadi CNN telah memutuskan, kami hanya akan meninggalkan Anda di alamat apa pun yang Anda benar-benar mengunjungi,
masalah branding samping.
Tapi apa yang tidak akan terjadi, jika kita bisa melihat dalam kasus Facebook,
adalah kita akan mendapatkan 301 Dipindahkan Permanen, kemungkinan besar,
dalam yang Lokasi: https: //www.facebook.com.
Dan kemungkinan besar www.facebook.com adalah alias untuk tepat server yang sama kita hanya
pergi ke.
>> Jadi itu adalah kontraproduktif sedikit.
Kami benar-benar mengunjungi server.
server kemudian mengatakan kepada kita, pergi.
Pergi ke alamat lain ini.
Tapi kami hanya begitu kebetulan akan kembali ke server yang sama.
Tapi mungkin kita sekarang tetap di Server tanpa kembali dan sebagainya.
Karena sekarang kita menggunakan bernama versi situs, bukan numerik.
Pertanyaan bagus.
>> OK, jadi jika kita sekarang assume-- kami telah memecahkan load balancing.
Kami sekarang memiliki mekanisme, apakah itu melalui DNS,
apakah itu melalui kotak hitam ini, apakah itu menggunakan teknik ini.
Kita bisa mengambil permintaan pengguna dan mencari tahu ke server yang, 1, 2, atau 3,
untuk mengirim dia.
>> Apa yang mulai pecah sekitar website kami?
Dengan kata lain, kita memiliki membangun sebuah bisnis yang
sebelumnya pada satu server tunggal.
Sekarang bisnis yang sedang berjalan di beberapa server.
Apa jenis asumsi, apa jenis keputusan desain,
sekarang mungkin melanggar?
>> Ini kurang jelas.
Tapi mari kita lihat apakah kita tidak dapat menempatkan kami jari pada beberapa masalah yang kita punya
dibuat untuk diri kita sendiri.
Sekali lagi, itu jenis seperti memegang menuruni kebocoran di selang.
Dan sekarang beberapa masalah baru telah muncul di sini.
>> AUDIENCE: [tidak terdengar]
DAVID Malan: OK, jadi kita harus terus tumbuh ruang hard disk kita.
Aku OK dengan itu sekarang.
Karena saya pikir saya bisa skala horizontal.
Seperti jika saya sedang menjalankan rendah, saya hanya akan mendapatkan server keempat, mungkin server kelima,
dan kemudian meningkatkan kapasitas kami oleh lain 30% atau 50% atau entah apa lagi.
Jadi aku OK dengan itu, setidaknya untuk saat ini.
AUDIENCE: [tidak terdengar]
DAVID Malan: OK, jadi itu titik yang baik.
Jadi misalkan server tidak identik.
Dan layanan pelanggan atau setara email
adalah mendapatkan beberapa pesan dari pengguna mengatakan, ini tidak bekerja dengan baik.
Ini sangat mungkin, kadang-kadang, bahwa mungkin satu atau lebih server
bertindak sedikit kacau, tapi tidak yang lain, yang pasti bisa
membuat lebih sulit untuk mengejar masalah ini.
Anda mungkin harus melihat beberapa tempat.
>> Itu adalah manifestasi dari jenis lain dari bug,
yang adalah bahwa Anda mungkin harus telah merancang infrastruktur sehingga
bahwa segala sesuatu yang benar-benar identik.
Tapi itu tidak mengungkapkan masalah baru bahwa kita tidak memiliki sebelumnya.
Apa lagi?
AUDIENCE: [tidak terdengar]
>> DAVID Malan: Ya, ada kompleksitas.
Ada secara fisik lebih kabel.
Ada perangkat lain.
Bahkan, saya telah memperkenalkan mendasar konsep dan masalah mendasar di sini
dikenal sebagai satu titik kegagalan, yang,
bahkan jika Anda belum pernah mendengar frase, Anda mungkin bisa
sekarang bekerja mundur dan mencari tahu.
Apa artinya bahwa saya memiliki satu titik kegagalan dalam arsitektur saya?
Dan oleh arsitektur, saya hanya berarti topologi itu.
>> AUDIENCE: [tidak terdengar]
>> DAVID Malan: Ya, bagaimana jika penyeimbang beban turun?
Aku sudah dimasukkan orang tengah ini yang tujuan hidup adalah untuk memecahkan masalah.
Tapi aku sudah memperkenalkan masalah baru.
Kebocoran baru telah bermunculan di selang.
Karena jika penyeimbang beban meninggal atau istirahat atau misfunctions,
sekarang saya kehilangan akses ke ketiga server saya.
Dan sebelumnya, saya tidak memiliki perantara ini.
Dan jadi ini adalah masalah baru, bisa dibilang.
Kami akan kembali ke bagaimana kita bisa memperbaikinya.
>> AUDIENCE: [tidak terdengar]
DAVID Malan: Itu akan menjadi salah satu pendekatan.
Ya, dan jadi ini akan menjadi cukup lubang tikus kita mulai turun.
Tapi mari kita kembali ke yang hanya dalam beberapa saat.
Apa masalah lain yang telah kita buat?
>> Jadi Dan disebutkan basis data sebelumnya.
Dan bahkan jika Anda tidak terlalu akrab teknis,
database hanya server mana mengubah data biasanya disimpan,
mungkin perintah seseorang telah ditempatkan, profil pengguna Anda, nama Anda,
alamat email Anda, hal-hal yang mungkin akan diinput atau diubah dari waktu ke waktu.
>> Sebelumnya, database saya berada di server yang sama sebagai server web saya.
Karena saya hanya punya satu web hosting account.
Semuanya adalah semua di tempat yang sama.
Di mana saya harus menempatkan database saya sekarang, di server 1, 2, atau 3?
>> AUDIENCE: 4.
>> DAVID Malan: 4, OK, semua benar, jadi mari kita pergi ke sana.
Jadi aku akan menempatkan saya database-- dan mari
mulai label ini www, www, www.
Dan aku akan mengatakan, ini adalah nomor empat.
Dan saya akan mengatakan db untuk database.
OK, saya suka ini.
Apa yang harus saya garis mungkin akan menggambar di sini?
>> AUDIENCE: [tidak terdengar]
>> DAVID Malan: Ya, jadi kode, seperti yang akan kita bahas besok,
mungkin adalah sama pada semua tiga server.
Tapi sekarang perlu untuk menghubungkan tidak ke database berjalan secara lokal tetapi di tempat lain.
Dan itu baik-baik saja.
Kami hanya bisa memberikan database nama, seperti yang telah kita, atau nomor.
Dan bahwa semua bekerja dengan baik.
Tapi apa yang telah kita lakukan?
Kami sudah berskala horizontal dengan memiliki tiga server, bukan satu, yang
baik.
Karena sekarang kita dapat menangani tiga kali lebih banyak beban.
>> Dan lebih baik lagi, jika satu atau dua dari server tersebut turun,
bisnis saya bisa terus beroperasi.
Karena saya masih memiliki satu, bahkan jika saya jenis tertatih-tatih kinerja-bijaksana.
Tapi apa masalah baru yang harus saya diperkenalkan dengan memindahkan database
ke server terpisah ini bukan pada 1, 2, dan 3?
>> AUDIENCE: [tidak terdengar]
DAVID Malan: Ya, jadi sekarang aku punya lagi satu titik kegagalan.
Jika database saya meninggal, atau perlu ditingkatkan, atau apa pun, sekarang yakin,
website saya adalah online.
Dan aku dapat melayani statis, konten tidak berubah.
Tapi aku tidak bisa membiarkan pengguna login atau perubahan sesuatu atau perintah apapun, lebih buruk lagi.
Karena jika 4 offline, kemudian 1, 2, dan 3
benar-benar tidak dapat berbicara dengan dengan definisi.
>> OK jadi ya, dan jadi ini adalah mengapa Aku ragu-ragu untuk menarik ini.
Jadi mari kita kembali ke itu.
Saya tidak bermaksud untuk terus mendorong Anda off.
Tapi gambar yang sangat cepat akan mendapatkan stres.
Karena Anda perlu mulai memiliki dua dari segala sesuatu.
Bahkan, jika Anda pernah melihat Film kontak beberapa tahun yang lalu
dengan Jodie Foster-- ada?
>> OK, jadi untuk dua kita yang pernah melihat kontak,
ada hubungan sana di mana mereka dasarnya membeli dua dari sesuatu
bukan dari satu, meskipun harga dua kali.
Jadi itu semacam main-main komentar dalam film.
Ini jenis yang berkaitan dengan ini.
Kami benar-benar bisa melakukan itu.
Dan Anda baru saja biaya kami dua kali lebih banyak uang.
Tapi kita akan kembali ke itu.
>> Jadi kami telah dipecahkan ini.
Sehingga Anda tahu apa?
Ini seperti lereng licin.
Saya tidak ingin berurusan dengan memiliki memiliki duplikat basis data.
Ini terlalu banyak uang.
Kamu tahu apa?
Saya ingin memiliki database saya seperti di versi satu
di mana setiap server memiliki database lokal sendiri.
Jadi aku hanya akan menggambar db pada masing-masing.
>> Jadi sekarang setiap web server identik sejauh
karena memiliki kode yang sama, sama aset statis, gambar dan teks yang sama
dan seterusnya.
Dan masing-masing memiliki database sendiri.
Saya tetap satu titik masalah kegagalan.
Sekarang aku punya database.
Tidak peduli yang dua atau salah satu dari ini hal mati, selalu ada satu kiri.
Tapi apa masalah baru yang harus saya buat bahwa solusi Dan ini dihindari?
>> AUDIENCE: [tidak terdengar]
>> DAVID Malan: Ya, saya harus sync mereka, kan?
Karena baik saya perlu untuk melakukan sinkronisasi siapa yang akan where-- dengan kata lain,
jika Alice mengunjungi saya situs, dan dia terjadi
untuk mendapatkan secara acak atau bulat robined atau apa pun, ke server nomor satu,
setelah itu saya harus selalu mengirimnya ke server 1.
Mengapa?
Karena jika saya mengirim dia ke server 2, itu akan
terlihat seperti dia tidak ada di sana.
>> Aku tidak akan memiliki sejarah pesanannya.
Aku tidak akan memiliki profil di sana.
Dan itu hanya terasa seperti itu mengundang masalah.
Dan ketika Bob mengunjungi, saya harus mengirim dia selalu
ke server yang sama, 2, atau mana satu, dan Charlie untuk yang ketiga,
dan konsisten.
Ini tidak masuk akal, meskipun.
Ini disebut partisi database Anda.
Dan sebenarnya ini adalah apa yang Facebook melakukan awal.
>> Jika Anda mengikuti sejarah Facebook, mulai di sini di kampus
sebagai www.thefacebook.com.
Kemudian berkembang setelah Mark mulai menyebar ke kampus lain
menjadi harvard.thefacebook.com dan mit.thefacebook.com, dan mungkin
bu.thefacebook.com, dan sejenisnya.
Dan itu karena sejak awal, saya tidak berpikir
Anda bisa memiliki teman-teman di kampus.
Tapi itu baik-baik saja.
Karena siapa pun dari Harvard harus dikirim ke server ini.
Siapa saja dari BU harus dikirim ke server ini.
Siapa saja dari MIT harus dikirim untuk server-- ini dalam teori.
Aku tak tahu semua mendasari rincian implementasi.
Tapi dia mungkin dipartisi orang dengan kampus mereka, di mana jaringan mereka.
>> Jadi itu bagus sampai titik di mana Anda memerlukan dua server untuk Harvard,
atau tiga server untuk Harvard.
Dan kemudian kesederhanaan yang jenis rusak.
Tapi itu pendekatan yang masuk akal.
Mari kita selalu mengirim Alice ke tempat yang sama,
selalu mengirim Bob ke tempat yang sama.
Tapi apa yang terjadi jika Alice Server pergi offline?
Bob dan Charlie masih bisa membeli hal dan login ke situs.
Tapi Alice tidak bisa.
Jadi Anda sudah kehilangan sepertiga dari basis pengguna Anda.
Mungkin itu lebih baik dari 100%?
Tapi mungkin itu akan baik jika kita bisa masih mendukung 100% dari pengguna kami
bahkan ketika sepertiga dari kami server berjalan offline.
>> Jadi kita bisa sync apa?
Tidak pengguna, per se, tetapi Database di semua server ini.
Jadi sekarang kita jenis membutuhkan jenis interkoneksi
sini sehingga server sendiri dapat sync-- tidak masuk akal.
Dan pada kenyataannya, teknologi ini ada.
Dalam dunia database, ada gagasan database master-budak,
atau primer-sekunder, mana di antara fitur
tidak hanya untuk menyimpan data dan menanggapi dengan data,
tetapi juga hanya untuk terus sinkron dengan satu sama lain.
Jadi setiap kali Anda menulis atau menyimpan sesuatu untuk database ini,
segera akan "direplikasi" ke database lain juga.
>> Dan setiap kali Anda membaca dari itu, tidak peduli di mana Anda berada.
Karena jika dalam teori mereka semua sudah disinkronkan, Anda
akan mendapatkan pandangan yang sama dari data.
Jadi ini terdengar sempurna.
Ada harus menjadi menangkap.
Apa yang mungkin menangkap itu?
>> AUDIENCE: [tidak terdengar]
>> DAVID Malan: Ya, jadi tiga kali sebanyak hal yang bisa salah.
Itu kenyataan.
Itu semua mungkin sama dalam roh.
Tetapi seseorang perlu untuk mengkonfigurasi ini.
Ada kemungkinan lebih tinggi bahwa sesuatu akan salah.
Hanya combinatorially Anda memiliki lebih banyak barang rentan terhadap kesalahan.
Apa lagi yang buruk berpotensi?
AUDIENCE: [tidak terdengar]
>> DAVID Malan: Ya, jadi syncing dapat buruk.
Bahkan seperti yang Anda mungkin tahu dari backup dan semacamnya,
jika Anda hanya secara membuta membuat backup, bagaimana jika sesuatu tidak
salah pada satu database?
Anda menghapus sesuatu yang tidak seharusnya.
Anda segera direplikasi bahwa masalah di tempat lain.
Jadi Victoria adalah backup talking-- akan menjadi hal yang baik di sini.
Dan jadi kita akan kembali ke itu.
Dan harus jelas, kita sedang berbicara bukan tentang backup sini per se.
Kita bicara tentang replikasi benar atau sinkronisasi di server.
Mereka semua hidup.
Mereka tidak dimaksudkan untuk digunakan untuk backup.
>> AUDIENCE: [tidak terdengar]
DAVID Malan: Apa itu?
AUDIENCE: Higher--
DAVID Malan: biaya yang lebih tinggi.
Kami telah tiga kali lipat biaya untuk yakin, meskipun setidaknya dalam hal
perangkat keras.
Karena database adalah hanya bagian dari perangkat lunak.
Dan web server adalah bagian dari perangkat lunak.
Ini mungkin gratis jika kita menggunakan sejumlah terbuka hal sumber.
Tetapi jika kita menggunakan sesuatu seperti Oracle,
kita membayar Oracle lebih banyak uang per lisensi, atau Microsoft untuk akses.
Ada harus ada beberapa tangkapan lain di sini.
Hal ini tidak bisa sederhana.
>> Jadi untuk titik Anda, saya pikir itu Kareem, untuk geografi earlier-- atau tidak,
Roman, apakah itu, untuk geography-- kira bahwa kita menjadi pintar tentang hal ini,
dan kami menempatkan salah satu server kami, dan pada gilirannya database kami, di Amerika Serikat,
dan satu lagi di Eropa, yang lain di Amerika Selatan, yang lain di Afrika,
lain di Asia, di mana saja kami mungkin ingin seluruh dunia.
Kita sudah tahu dari jejak kami rute yang titik A dan titik
B, jika mereka jauh terpisah, akan mengambil lebih banyak waktu.
>> Dan jika beberapa dari Anda telah menggunakan alat, seperti Facebook atau Twitter
atau situs-situs ini hari ini yang terus berubah karena pengguna
data yang dibuat, kadang-kadang jika Anda hit Reload atau membuka halaman yang sama
di browser lain, Anda melihat versi yang berbeda, hampir.
Anda mungkin melihat status seseorang informasi di sini tapi tidak di sini,
dan kemudian Anda kembali, dan kemudian muncul, dan Anda kembali lagi,
dan menghilang.
Dengan kata lain, menjaga mata keluar untuk ini, setidaknya
jika Anda menggunakan sosial jaringan terutama.
>> Sekali lagi, hanya karena Data berubah begitu cepat,
kadang-kadang server yang keluar dari sinkronisasi.
Dan mungkin itu jendela super kecil.
Tapi 200 milidetik, mungkin bahkan lebih dari itu-- itu
akan mengambil beberapa non-nol jumlah waktu untuk database ini untuk melakukan sinkronisasi.
Dan kita tidak hanya berbicara tentang satu permintaan.
Jika sebuah perusahaan memiliki ribuan pengguna menggunakannya secara bersamaan,
mereka mungkin penyangga.
Dengan kata lain, mungkin ada menjadi antrian atau baris menunggu
sebelum semua database mereka query dapat disinkronkan.
Jadi mungkin itu sebenarnya beberapa detik.
>> Dan memang ini benar saya pikir bahkan sampai hari ini dengan Facebook, dimana
ketika mereka melakukan sinkronisasi dari East Coast to Coast Barat,
memiliki non-sepele propagasi delay, sehingga untuk berbicara,
bahwa Anda hanya semacam harus mentolerir.
Dan sehingga tidak begitu banyak bug seperti itu kenyataan
bahwa pengguna Anda mungkin tidak melihat data yang benar untuk setidaknya
beberapa detik.
>> Saya melihat ini di Twitter banyak sebenarnya di mana kadang-kadang aku akan
-tweet dalam satu jendela, membuka lain untuk kemudian melihatnya untuk mengkonfirmasi bahwa itu memang
naik, dan itu belum ada di sana.
Dan saya harus jenis ulang, ulang, reload-- oh, itu dia.
Dan itu bukan karena tidak disimpan.
Hanya belum disebarkan ke server lain.
>> Jadi ini trade-off, too-- apakah Anda benar-benar ingin mengekspos diri Anda untuk risiko
bahwa jika pengguna pergi ke pesanan mereka sejarah, itu tidak benar-benar ada belum?
Saya melihat ini di bank-bank tertentu.
Itu selalu mengganggu saya ketika, baik, untuk satu, Anda hanya bisa pergi seperti enam bulan kembali
dalam laporan bank Anda di beberapa bank, meskipun dalam teori mereka harus
dapat memiliki semuanya secara online.
Mereka hanya mengambil barang-barang secara offline kadang-kadang.
Kadang-kadang, too-- apa website itu?
Ada satu-- oh, itu GoDaddy, saya pikir.
GoDaddy, ketika Anda check out membeli nama domain atau sesuatu,
mereka akan sering memberikan link ke tanda terima.
Dan jika Anda mengklik link yang tepat pergi, itu sering tidak bekerja.
Ia hanya mengatakan, buntu, tidak ada di sini.
>> Dan itu juga karena penundaan propagasi ini.
Karena untuk alasan apa pun, mereka mengambil sedikit waktu
untuk benar-benar menghasilkan itu.
Jadi ini adalah semacam seperti Anda ingin menarik rambut Anda keluar di beberapa titik.
Karena semua yang Anda coba lakukan adalah memecahkan masalah sederhana.
Dan kami terus menciptakan baru masalah bagi diri kita sendiri.
Jadi mari kita lihat apakah kita dapat jenis membatalkan ini.
>> Ternyata menggabungkan database pada semua server web Anda
adalah praktik tidak benar-benar terbaik.
Umumnya, apa yang seorang insinyur akan melakukan, atau sistem arsitek,
akan memiliki yang berbeda tingkatan server.
Dan hanya demi ruang ini, aku akan menggambar database mereka di sini.
>> Kita mungkin memiliki database dan Server nomor empat di sini
yang tidak memiliki hubungan dengan masing-masing server ini di sini.
Jadi ini mungkin depan kami berakhir tier, sebagai orang-orang akan mengatakan.
Dan ini akan kembali akhir tingkat kami.
Dan itu hanya berarti bahwa ini menghadapi pengguna.
Dan database tidak menghadapi pengguna.
Tidak ada pengguna langsung bisa mengakses database.
>> Jadi mari kita sekarang mungkin turun rute Victoria diusulkan.
Ini adalah titik kegagalan.
Yang membuat saya tidak nyaman.
Jadi apa yang mungkin kebanyakan solusi yang jelas?
AUDIENCE: [tidak terdengar]
DAVID Malan: Maaf, mengatakan bahwa lagi.
AUDIENCE: [tidak terdengar]
DAVID Malan: Server Non-produksi.
Apa maksudmu?
>> AUDIENCE: [tidak terdengar]
>> DAVID Malan: Oh, OK, jadi backup.
OK, jadi kita bisa melakukan itu, tentu.
Dan sebenarnya ini sangat lazim dilakukan.
Ini mungkin basis data nomor lima.
Tapi itu hanya terhubung ke nomor empat.
Dan Anda mungkin menyebutnya cadangan panas.
Kedua database dapat dikonfigurasi hanya terus melakukan sinkronisasi
satu sama lain.
Dan jadi jika mesin ini mati, untuk apapun bodoh reason-- hard drive
meninggal, seseorang perjalanan selama kabel, beberapa perangkat lunak cacat
dan hang mesin atau crashes-- Anda bisa memiliki manusia secara harfiah
cabut satu ini dari dinding dan bukannya pasang satu ini di.
Dan kemudian dalam, katakanlah, sebuah beberapa menit, mungkin setengah jam,
Anda kembali online.
>> Itu tidak besar, tapi itu juga tidak mengerikan.
Dan Anda tidak perlu khawatir tentang masalah sinkronisasi.
Karena semuanya sudah ada.
Karena Anda memiliki sempurna backup siap untuk pergi.
>> Anda bisa sedikit pelamun tentang hal ini,
karena beberapa orang sering lakukan, di mana Anda mungkin memiliki jumlah database yang empat di sini,
jumlah database yang lima di sini, yang berbicara satu sama lain.
Tapi Anda juga memiliki ini jenis arrangement--
dan itu sengaja terlihat berantakan, karena
is-- mana semua server front end bisa
berbicara dengan semua server back end.
Dan jadi jika database ini tidak menanggapi, server ini front end memiliki
untuk memiliki pemrograman kode di dalamnya yang mengatakan,
jika Anda tidak mendapatkan koneksi ke database ini,
primer segera dimulai berbicara ke sekunder.
>> Tapi ini sekarang mendorong kompleksitas kode.
Dan sekarang pengembang Anda, perangkat lunak Anda pengembang, harus tahu tentang hal ini.
Dan kau jenis mengikat kode yang Anda sedang menulis ke aktual back end Anda
rincian implementasi, yang membuat lebih sulit,
terutama dalam lebih besar perusahaan atau website yang lebih besar,
di mana Anda tidak perlu ingin programmer untuk memiliki
untuk mengetahui bagaimana database insinyur melakukan pekerjaan mereka.
Anda mungkin ingin menyimpan peran-peran semacam fungsional yang berbeda sehingga
bahwa ada lapisan ini abstraksi antara keduanya.
>> Jadi bagaimana mungkin kita memperbaiki ini?
Yah, kita jenis dipecahkan masalah ini sekali sebelumnya.
Mengapa kita tidak menempatkan salah satu hal ini di sini di mana
itu berbicara pada gilirannya untuk nomor empat dan lima, semua server web front end
berbicara dengan perantara ini, dan perantara pada gilirannya rute data mereka?
Bahkan, apa yang mungkin menjadi nama yang bagus untuk hal ini?
>> AUDIENCE: [tidak terdengar]
DAVID Malan: OK, manajer database.
Tapi apa mungkin istilah bahwa kita bisa menggunakan kembali untuk perangkat ini?
Kami menyeimbangkan.
Ya, jadi sebenarnya, aku tidak adil di sini.
Jadi penyeimbang beban akan berarti bahwa kita Toggling bolak-balik di sini,
yang tidak perlu benar-benar terjadi.
Jadi ada beberapa cara kita bisa melakukan ini.
>> Jika ini sebenarnya penyeimbang beban, yang Cerita ini persis sama seperti sebelumnya.
Beberapa permintaan pergi ke 4.
Beberapa dari mereka pergi ke 5.
Dan itu bagus.
Karena sekarang kita dapat menangani dua kali lebih banyak throughput yang.
Tapi hubungan ini di sini adalah super penting.
Mereka harus tinggal terus disinkronisasi dan mudah-mudahan
tidak geografis terlalu jauh sehingga sinkronisasi pada dasarnya
seketika.
Kalau tidak, kita mungkin memiliki masalah.
>> Jadi itu tidak buruk.
Tapi sekali lagi, kami telah memperkenalkan masalah baru.
Masalah apa yang telah saya hanya diciptakan?
Titik kegagalan.
Jadi apa solusi untuk itu?
Jadi sebagai Victoria gemar menghabiskan uang, kita bisa mengambil orang ini keluar dan melakukan ini.
Dan aku hanya akan pindah ke sini cukup ruang.
Dan itu akan menjadi sedikit berantakan.
Aku akan terus menggambar garis.
Misalkan semua garis masuk ke kedua?
>> Sebuah teknik yang sangat umum di sini akan menggunakan teknik yang disebut detak jantung
dimana masing-masing perangkat ini, balancers beban kiri dan kanan,
atau apa pun yang kita ingin memanggil mereka, terus berkata, aku masih hidup,
Aku masih hidup, aku masih hidup, aku masih hidup.
Salah satunya secara default bertindak sebagai primer.
Jadi semua lalu lintas sedang dialihkan melalui satu di sebelah kiri, misalnya,
secara default, sewenang-wenang.
>> Tapi begitu pria di sebelah kanan tidak mendengar dari orang kiri lagi,
satu di sebelah kanan diprogram untuk secara otomatis, misalnya,
mengambil alih alamat IP dari satu di sebelah kiri,
dan karena itu menjadi primer, dan mungkin mengirim email atau pesan teks
ke manusia mengatakan, hey, primer meninggalkan offline.
Aku akan menjadi utama untuk saat ini.
Jadi wakil presiden menjadi Presiden, sehingga untuk berbicara.
Dan seseorang harus pergi menyelamatkan presiden, jika Anda ingin.
Karena sekarang kita memiliki sementara titik kegagalan.
>> Sehingga rumit atau stres sebagai ini mungkin tampaknya mulai menjadi,
ini adalah bagaimana Anda memecahkan masalah ini.
Anda membuang uang itu.
Anda melemparkan hardware itu.
Tapi sayangnya Anda menambah kompleksitas untuk itu.
Tapi hasilnya, akhirnya, adalah bahwa Anda memiliki lebih banyak, dalam teori,
arsitektur yang kuat.
Ini masih belum sempurna.
Karena bahkan ketika kita have-- kami mungkin tidak memiliki satu titik kegagalan.
Kami sekarang memiliki poin ganda kegagalan.
Tetapi jika dua hal yang salah, yang benar-benar bisa,
kami masih akan menjadi offline.
>> Dan sangat umum di industri adalah untuk menggambarkan
waktu sampai Anda dalam hal sembilan.
Dan semacam tujuan untuk bercita-cita adalah 99,999%
waktu situs Anda secara online.
Atau bahkan lebih baik, tambahkan beberapa kali sembilan lebih untuk itu.
Sayangnya, ini sembilan yang sangat mahal.
Dan mari kita benar-benar melakukan hal ini.
Jadi jika saya membuka kalkulator besar lagi, 365 hari dalam setahun, 24 jam dalam sehari,
60 menit dalam satu jam, dan 60 detik dalam satu menit,
itu berapa detik ada dalam setahun jika saya melakukan ini dengan benar.
Jadi jika kita kali ini dengan 0,99999, itu berapa banyak waktu yang kita ingin bercita-cita untuk.
Jadi itu berarti kita harus sampai ini banyak detik sepanjang tahun.
Jadi jika saya sekarang kurangi nilai asli, atau lebih tepatnya
nilai baru ini dari first-- 316 detik,
yang tentu saja lima menit.
>> Jadi jika website Anda atau perusahaan Anda adalah mengklaim "lima sembilan," dimana kau
up 99,99% dari waktu, itu berarti Anda lebih baik
sudah cukup cerdas dan cepat cukup dan cukup siram dengan sumber
bahwa server Anda hanya secara offline lima menit keluar tahun ini.
Ini adalah mahal dan hal yang sulit untuk bercita-cita.
>> Jadi itu adalah trade off, juga.
99,999% dari waktu cukup darn sulit dan mahal.
Lima minutes-- Anda hampir tidak bisa mendapatkan ke server secara fisik mengganti
sesuatu yang tidak beres.
Dan itu sebabnya kami mulai kabel hal bersama-sama lebih rumit
apriori sehingga komputer dapat semacam memperbaiki diri.
Ya.
>> AUDIENCE: [tidak terdengar]
DAVID Malan: Masalahnya bisa berada di sejumlah tempat.
Dan di fact--
>> AUDIENCE: [tidak terdengar]
DAVID Malan: Absolutely, benar-benar.
Dan seperti gambar ini mendapatkan lebih rumit,
itu bisa menjadi server web.
Ini bisa menjadi kekuatan untuk bangunan.
Ini bisa menjadi sesuatu yang bersifat fisik, seperti kabel mendapat usang atau ditendang keluar.
Ini bisa menjadi database tidak merespons.
Hal ini dapat mereka diperbarui operasi mereka Sistem dan sesuatu yang tergantung.
Jadi ada begitu banyak bagian yang bergerak lainnya.
Dan begitu banyak rekayasa yang harus pergi di balik ini
benar-benar hanya perdagangan off, seperti bagaimana banyak waktu, berapa banyak uang yang sebenarnya
layak, dan apa ancaman Anda benar-benar khawatir tentang?
Misalnya, di Program saya mengajar di Harvard,
kami menggunakan banyak komputasi awan, yang kita akan mulai mengambil melihat sekarang,
pada kenyataannya, di mana kita menggunakan Layanan Web Amazon.
Hanya karena itulah salah satu yang kita mulai dengan.
Tapi ada yang lebih hari ini dari Google dan Microsoft dan lain-lain.
Dan kami sadar memilih untuk menempatkan semua mesin virtual kursus kami ',
sebagai mereka disebut, di saya pikir itu Western data center Virginia.
Sebagian besar siswa kami kebetulan dari AS,
meskipun ada pasti beberapa internasional.
>> Tetapi kenyataannya adalah itu hanya sederhana dan lebih murah untuk kita
untuk menempatkan semua telur di Virginia keranjang,
meskipun aku tahu apakah sesuatu beres di Virginia,
sebagai memiliki sesekali happened-- seperti jika ada badai atau beberapa cuaca
acara seperti itu, jika ada beberapa jaringan listrik masalah atau like-- semua
data kursus kami 'mungkin offline untuk beberapa jumlah menit atau jam
atau bahkan lebih lama.
>> Tetapi jumlah kompleksitas yang akan diperlukan,
dan jumlah uang yang akan diperlukan, untuk mengoperasikan semua
secara paralel di Eropa atau di California hanya tidak membuat begitu banyak akal.
Jadi itu adalah perdagangan yang rasional off, tapi satu yang menyakitkan
ketika Anda benar-benar memiliki downtime itu.
>> Nah, mari kita transisi sekarang untuk beberapa solusi berbasis cloud
untuk beberapa masalah ini.
Segala sesuatu yang kita sudah membahas sejauh
adalah jenis masalah yang memiliki telah bersama kami selama beberapa waktu,
apakah Anda memiliki Anda sendiri server di perusahaan Anda,
apakah Anda pergi ke co-lokasi tempat seperti pusat data dan berbagi
ruang dengan orang lain, atau saat di awan.
>> Dan apa yang baik tentang awan adalah bahwa semua
hal ini saya menggambar sebagai objek fisik
sekarang dapat dianggap sebagai semacam benda-benda virtual
di awan yang simulasi dengan software.
Dengan kata lain, komputer saat ini, server saat ini, seperti gambar Dell
Aku menunjukkan sebelumnya, begitu cepat, memiliki begitu banyak RAM, begitu banyak CPU, begitu banyak disk yang
ruang, bahwa orang-orang telah menulis software untuk partisi hampir
satu server menjadi ilusi itu menjadi dua server, atau 200 server, sehingga
bahwa kita masing-masing pelanggan memiliki ilusi memiliki
bukan hanya account di beberapa web tuan rumah, tapi mesin kita sendiri bahwa kita
menyewa dari orang lain.
>> Tapi itu mesin virtual di sejauh pada satu server Dell,
lagi mungkin dipartisi menjadi dua atau 200 atau lebih mesin virtual,
semua yang memberikan seseorang administrasi akses, tapi dengan cara di mana tak satu pun dari kita
tahu atau dapat mengakses lainnya maya mesin pada hardware yang sama.
Jadi untuk melukis gambar di slide hari ini, Saya telah ini ditembak di sini dari sebuah situs web
disebut Docker.
>> Jadi ini sedikit lebih rinci dari yang kita benar-benar perlu.
Tetapi jika Anda melihat ini sebagai infrastructure-- Anda
jadi hanya perangkat keras Anda sendiri, server Anda, rak, data
pusat, dan semua itu-- yang akan Anda biasanya menjalankan sistem operasi host.
Jadi sesuatu like-- bisa Windows.
Itu tidak akan Mac OS.
Karena itu tidak benar-benar perusahaan hari ini.
Jadi akan Linux atau Solaris atau Unix atau BSD atau FreeBSD
atau sejumlah sistem operasi lain yang baik gratis atau komersial.
>> Dan kemudian Anda menjalankan Program, program khusus,
disebut hypervisor, atau monitor mesin virtual, VMM.
Dan ini adalah produk, jika Anda familiar, seperti VMware atau VirtualBox
atau Virtual PC atau orang lain.
Dan apa program-program lakukan adalah persis fitur yang saya jelaskan sebelumnya.
Ini menciptakan ilusi bahwa salah satu mesin fisik
dapat beberapa mesin virtual.
>> Dan kotak-kotak berwarna-warni di bagian atas adalah lukisan gambar berikut ini.
hypervisor ini, ini software, menyebutnya
VMware, berjalan pada beberapa lainnya sistem operasi, menyebutnya Linux,
adalah menciptakan ilusi bahwa komputer fisik ini sebenarnya
satu, dua, tiga komputer virtual.
Jadi sekarang saya sudah membeli, sebagai pemilik perangkat ini, satu komputer fisik.
Dan sekarang aku menyewa untuk tiga pelanggan.
>> Dan tiga pelanggan semua berpikir mereka memiliki mesin virtual dedicated.
Dan itu tidak umpan dan beralih.
Ini lebih pengungkapan yang Anda menggunakan mesin virtual.
Tapi teknologi, kita semua memiliki kontrol administratif penuh
lebih dari masing-masing tamu mereka sistem operasi, yang bisa
menjadi sejumlah sistem operasi.
>> Saya dapat menginstal apapun yang saya inginkan.
Saya dapat meng-upgrade itu seperti yang saya inginkan.
Dan aku bahkan tidak tahu atau peduli dengan operasi lain
sistem di komputer itu, mesin virtual lain,
kecuali pemilik semua abu-abu ini hal ini menjadi sedikit serakah
dan overselling nya sumber.
>> Jadi jika Anda mengambil satu mesin fisik dan menjualnya
tidak 200 tapi 400 pelanggan, di beberapa titik
kita akan perjalanan ke mereka masalah kinerja yang sama seperti sebelumnya.
Karena Anda hanya memiliki terbatas jumlah disk dan RAM dan sebagainya.
Dan mesin virtual hanya sebuah program yang
berpura-pura menjadi penuh komputer matang.
Jadi Anda mendapatkan apa yang Anda bayar untuk di sini.
>> Jadi Anda akan menemukan secara online Anda mungkin membayar perusahaan terkemuka mungkin $ 100 per bulan
untuk mesin virtual Anda sendiri, atau sendiri server virtual pribadi Anda,
yang merupakan istilah lain untuk itu.
Atau Anda mungkin menemukan beberapa fly by malam di mana Anda membayar $ 5,99 per bulan
untuk mesin virtual Anda sendiri.
Tapi kemungkinan besar Anda tidak memiliki hampir sebanyak kinerja tersedia untuk Anda,
karena mereka telah overselling itu jadi, daripada Anda akan dengan tinggi
tingkat layanan atau vendor yang lebih baik.
>> Jadi, apa ini benar-benar berarti bagi kita?
Jadi biarkan aku pergi ke ini.
Aku akan pergi ke aws.amazon.com.
Hanya karena mereka memiliki bagus menu pilihan.
Tapi ini pelajaran yang sama berlaku untuk sejumlah vendor cloud lainnya.
Sayangnya, sering kali lebih pemasaran berbicara dari apa pun.
Dan ini terus berubah.
Jadi Anda pergi ke sebuah situs seperti ini.
Dan ini benar-benar tidak memberitahu Anda apa-apa.
>> Dan bahkan aku, seperti yang saya lihat ini, tidak benar-benar tahu apa yang salah hal ini
perlu melakukan sampai aku menyelam di.
Tapi mari kita mulai dari kiri, Compute.
Dan aku akan klik ini.
Dan sekarang Amazon memiliki terus terang Sejumlah besar layanan
hari ini.
Tapi Amazon EC2 mungkin yang paling sederhana.
>> Amazon EC2 akan menciptakan bagi kita persis gambar yang kita lihat saat yang lalu.
Begitulah cara mereka membuat banyak uang mereka di awan.
Rupanya Netflix dan lain-lain berada di awan dengan mereka.
Ini semua biasanya berbulu berbicara marketing.
Jadi apa yang saya ingin lakukan adalah pergi ke Pricing-- atau lebih tepatnya mari kita pergi ke Contoh
pertama hanya untuk melukis gambar ini.
>> Jadi ini akan bervariasi oleh vendor.
Dan kita tidak perlu terlalu jauh ke dalam gulma di sini tentang bagaimana semua ini bekerja.
Namun cara Amazon, misalnya, sewa Anda mesin virtual atau server
di awan yang mereka punya semacam ini nama-nama lucu,
seperti t2.nano, yang berarti kecil, atau t2.large, yang berarti besar.
Masing-masing dari mereka memberi Anda baik satu atau dua CPU virtual.
>> Mengapa CPU virtual?
Nah, mesin fisik mungkin memiliki 64 atau lebih CPU yang sebenarnya.
Tapi sekali lagi, melalui perangkat lunak, mereka menciptakan ilusi
bahwa satu mesin dapat divvied hingga beberapa pengguna.
Jadi kita bisa menganggap ini sebagai memiliki satu CPU Intel atau dua.
kredit CPU per hour-- saya akan harus membaca baik cetak
seperti apa ini sebenarnya berarti.
Ini berarti berapa banyak dari mesin Anda dapat menggunakan per jam vis-a-vis
pelanggan lain pada perangkat keras itu.
>> Berikut ini berapa banyak RAM atau memori Anda get-- baik setengah gigabyte, atau 500
megabyte, atau 1 gigabyte, atau 2.
Dan kemudian penyimpanan hanya mengacu apa jenis disk mereka memberi Anda.
Ada penyimpanan yang berbeda teknologi yang mereka tawarkan.
Tapi yang lebih menarik dari ini maka mungkin harga.
>> Jadi jika Anda adalah CTO atau seorang insinyur yang tidak
ingin menjalankan server di Anda kantor, untuk alasan apa pun,
dan itu terlalu rumit atau mahal
untuk membeli server dan co-menemukan mereka dan membayar sewa di beberapa ruang kandang fisik
somewhere-- Anda hanya ingin duduk di laptop Anda larut malam,
ketik informasi kartu kredit Anda, dan sewa server di cloud-- baik,
kita bisa melakukannya di sini.
Aku akan pergi ke to-- Linux adalah sistem operasi yang populer.
Dan mari kita hanya mendapatkan rasa hal.
Whoops-- terlalu besar.
>> Jadi mari kita lihat terkecil mereka mesin virtual, yang tampaknya memiliki,
untuk tujuan kita, satu CPU dan 500 megabyte RAM.
Itu cukup kecil.
Tapi terus terang, server web tidak perlu melakukan semua yang banyak.
Anda memiliki spesifikasi yang lebih baik di laptop Anda.
Tapi Anda tidak perlu orang-orang spesifikasi hari ini untuk hal-hal.
Anda akan membayar $ 0,0065 per jam.
>> Jadi mari kita lihat.
Jika ada 24 jam dalam sehari, dan kita membayar ini banyak per jam,
akan dikenakan biaya $ 0,15 untuk menyewa yang server tertentu di awan.
Dan itu hanya untuk satu hari.
Jika kita melakukan ini 365-- $ 57 untuk menyewa server tertentu.
Jadi kedengarannya super murah.
>> Itu juga kinerja super murah.
Jadi kami, untuk kursus saya mengajar di sini, cenderung untuk menggunakan saya pikir t2.smalls atau t2.mediums.
Dan kita mungkin memiliki beberapa ratus pengguna, beberapa ribu pengguna, jumlah.
Hal ini cukup sederhana.
Jadi mari kita lihat apa ini akan biaya.
Jadi jika saya melakukan ini kali biaya 24 jam kali 365, yang satu ini $ 225.
Dan untuk kursus Saya mengajar, kita umumnya
menjalankan dua dari segala sesuatu, untuk redundansi dan juga untuk kinerja.
Jadi kita mungkin menghabiskan, oleh karena itu, $ 500 untuk server
bahwa kita mungkin perlu per tahun.
>> Sekarang, jika Anda membutuhkan lebih performance-- mari kita lihat memori.
Kami telah berbicara tentang memori cukup sedikit.
Dan jika Anda membutuhkan lebih banyak memory-- dan 64 gigabyte
adalah nomor saya terus mentioning-- ini hampir $ 1 per jam.
Dan Anda cukup dapat dengan cepat melihat keberadaan ini goes-- jadi 24 jam kali 365.
Jadi sekarang $ 8.000 per tahun untuk server cukup baik.
>> Jadi di beberapa titik, ada titik belok ini
di mana sekarang kita bisa menghabiskan $ 6.000 mungkin dan membeli mesin seperti itu
dan amortisasi biaya lebih mungkin dua, tiga tahun, kehidupan mesin.
Tapi apa mungkin mendorong Anda di mendukung atau tidak disukai dari sewa
mesin di awan seperti ini?
Sekali lagi, ini sebanding, mungkin, ke salah satu server Dell
kita lihat digambarkan sedikit lalu.
>> AUDIENCE: [tidak terdengar]
>> DAVID Malan: Ya, itu terbalik besar.
Karena kita tidak membeli mesin, kami tidak memiliki unbox itu.
Kami tidak perlu mengangkatnya.
Kami tidak perlu hubungkan ke rak kami.
Kami tidak perlu pasang.
Kami tidak perlu membayar tagihan listrik.
>> Kami tidak perlu mengubah AC di.
Ketika sebuah hard drive meninggal, kita tidak memiliki mengemudi di di tengah malam
untuk memperbaikinya.
Kami tidak perlu mengatur pemantauan.
Kami tidak memiliki to-- daftar goes on dan pada semua hal fisik
Anda tidak perlu melakukan karena "awan."
>> Dan harus jelas, komputasi awan adalah istilah yang sangat berlebihan ini.
Ini benar-benar hanya berarti membayar seseorang lain untuk menjalankan server untuk Anda,
atau menyewa ruang di server orang lain.
Jadi istilah "cloud computing" yang baru.
Idenya adalah dekade tua.
Jadi itu cukup menarik.
>> Dan apa lagi yang Anda dapatkan?
Nah, Anda juga mendapatkan kemampuan untuk melakukan segala hal pada laptop di rumah.
Dengan kata lain, semua gambar saya hanya drawing--
dan itu tidak lama yang lalu bahwa bahkan Saya merangkak di lantai Server
mencolokkan kabel di untuk setiap baris yang Anda lihat,
dan meningkatkan operasi sistem, dan mengubah drive sekitar.
Ada banyak fisik untuk semua itu.
>> Tapi apa yang indah tentang maya mesin, sebagai nama jenis menunjukkan,
sekarang ada web berbasis interface dimana
jika Anda ingin setara dari garis dari server ini
ke yang lain, cukup ketik, jenis, tipe, klik dan drag, klik Submit, dan voila,
Anda memilikinya kabel up virtual.
Karena itu semua dilakukan dalam perangkat lunak.
Dan alasan itu dilakukan dalam perangkat lunak lagi
karena kami memiliki begitu banyak RAM dan begitu banyak CPU tersedia untuk kita hari ini,
meskipun semua bahwa hal membutuhkan waktu,
lebih lambat untuk menjalankan hal-hal dalam perangkat lunak dari perangkat keras,
seperti itu lebih lambat untuk menggunakan mekanik perangkat seperti hard drive dari RAM,
sesuatu yang murni elektronik.
Kami memiliki begitu banyak sumber daya tersedia bagi kita.
Kita manusia semacam tanpa tergantung lambat.
Dan jadi sekarang mesin dapat melakukan jauh lebih banyak per satuan waktu.
Kami memiliki kemampuan ini untuk melakukan hal-hal secara virtual.
>> Dan saya akan mengatakan untuk kursus Saya mengajar, misalnya, di sini,
kami memiliki sekitar mungkin selusin atau sehingga total mesin virtual
seperti itu berjalan pada setiap diberikan waktu melakukan hal-hal front end,
melakukan kembali hal-hal end.
Kami memiliki semua penyimpanan kami.
Jadi setiap video, termasuk hal-hal seperti ini yang kita menembak,
kita akhirnya menempatkan ke awan.
Amazon memiliki layanan yang disebut Amazon S3, layanan penyimpanan sederhana mereka, yang
adalah seperti ruang disk di awan.
Mereka memiliki sesuatu disebut CloudFront, yang
adalah Content layanan CDN, Layanan jaringan pengiriman, yang
berarti mereka mengambil semua file dan untuk Anda otomatis meniru itu
keliling dunia.
>> Jadi mereka tidak melakukannya Terlebih Dahulu.
Tapi pertama kali seseorang di India meminta file Anda,
mereka akan berpotensi cache secara lokal.
Pertama kali di Cina, pertama kali di Brazil itu terjadi,
mereka akan mulai caching secara lokal.
Dan Anda tidak perlu melakukan semua itu.
Dan sehingga begitu sangat menarik hari ini untuk memindahkan hal-hal
ke dalam awan.
Karena Anda memiliki kemampuan ini secara harfiah untuk tidak memiliki manusia melakukan hampir sama banyak
kerja.
Dan Anda benar-benar tidak perlu banyak manusia melakukan pekerjaan ini anymore--
"Ops," atau peran operasional, lagi.
Anda benar-benar hanya perlu pengembang dan lebih sedikit insinyur
yang hanya bisa melakukan hal-hal secara virtual.
Bahkan, hanya untuk memberikan Anda rasa ini,
biarkan aku pergi ke harga untuk satu produk lain di sini.
Mari kita lihat sesuatu seperti CDN S3.
Jadi ini pada dasarnya adalah virtual hard drive di awan.
Dan jika kita gulir ke bawah untuk pricing-- jadi $ 0,007 per gigabyte.
Dan that's-- bagaimana kita melakukan ini?
Saya pikir itu per bulan.
>> Jadi kalau itu per month-- atau per hari?
Dan, apakah ini per hari?
Ini per bulan, OK.
Jadi jika ini adalah per month-- maaf, itu adalah $ 0,03 per bulan.
Ada 12 bulan dalam setahun.
Jadi berapa banyak data mungkin Anda menyimpan di awan?
Sebuah gigabyte tidak besar, tapi aku tidak tahu, seperti 1 terabyte,
jadi seperti 1.000 dari mereka.
Itu tidak semua yang banyak.
Ini $ 368 untuk menyimpan terabyte sebuah data di awan Amazon.
Jadi apa yang beberapa perdagangan off, kemudian?
Hal ini tidak bisa semua menjadi baik.
Tidak ada yang kita bicarakan saat ini adalah semacam tanpa menangkap atau biaya.
Jadi apa yang buruk tentang bergerak segala sesuatu ke dalam awan?
AUDIENCE: Keamanan.
DAVID Malan: OK, apa maksudmu?
AUDIENCE: [tidak terdengar]
DAVID Malan: Ya, benar.
Dan apakah Anda benar-benar ingin beberapa insinyur acak
di Amazon yang Anda tidak akan pernah bertemu memiliki akses fisik ke komputer-komputer,
dan jika mereka benar-benar ingin, akses virtual?
Dan meskipun di Teori software-- baik,
enkripsi benar-benar bisa melindungi Anda terhadap ini.
Jadi jika apa yang Anda menyimpan di server Anda
adalah encrypted-- kurang perhatian.
>> Tapi begitu manusia memiliki fisik akses ke mesin, enkripsi samping,
semua taruhan semacam off.
Anda mungkin tahu dari masa lampau bahwa PC khususnya,
bahkan jika Anda memiliki hal-hal disebut "BIOS password,"
adalah ketika desktop Anda boot up, Anda akan diminta dengan password yang
tidak ada hubungannya dengan Windows, Anda dapat biasanya
hanya membuka chassis dari mesin, cari pin kecil kecil,
dan menggunakan sesuatu yang disebut jumper dan hanya menghubungkan
dua kabel untuk sekitar satu detik, dengan demikian menyelesaikan sirkuit.
Dan itu akan menghilangkan password.
>> Jadi, ketika Anda memiliki akses fisik ke perangkat, Anda dapat melakukan hal-hal seperti itu.
Anda dapat menghapus hard drive.
Anda dapat memperoleh akses ke cara itu.
Dan jadi ini adalah mengapa, di kasus Dropbox,
misalnya, itu sedikit mengkhawatirkan bahwa mereka tidak hanya
memiliki data, meskipun itu terenkripsi, mereka juga memiliki kunci.
kekhawatiran lainnya?
>> AUDIENCE: [tidak terdengar]
DAVID Malan: Ya, itu sangat true-- yang Googles, Apel,
yang Microsofts dunia.
Dan pada kenyataannya, berapa lama Anda memiliki iPhone Anda untuk?
Ya, memberi atau mengambil.
AUDIENCE: [tidak terdengar]
DAVID Malan: Maaf?
Anda termasuk orang yang memiliki iPhone, kan?
AUDIENCE: Ya.
DAVID Malan: Berapa lama Anda telah memiliki iPhone Anda?
AUDIENCE: [tidak terdengar]
DAVID Malan: OK, jadi Apple harfiah tahu
di mana Anda sudah setiap jam hari selama lima tahun terakhir.
>> AUDIENCE: [tidak terdengar]
DAVID Malan: Yang fitur yang indah.
AUDIENCE: [tidak terdengar]
DAVID Malan: Ya, tapi trade off pasti.
AUDIENCE: [tidak terdengar]
>> DAVID Malan: Ya, itu sangat mudah untuk.
AUDIENCE: [tidak terdengar]
DAVID Malan: Kerugian lain?
AUDIENCE: [tidak terdengar]
DAVID Malan: Absolutely-- teknologi,
ekonomi, itu cukup menarik untuk semacam memperoleh skala ekonomis ini
dan pindah semuanya ke dalam yang disebut awan.
Tapi Anda mungkin ingin pergi dengan beberapa terbesar
ikan, Amazon, yang Googles, yang Microsofts-- Rackspace cukup big--
dan beberapa orang lain, dan tidak tentu terbang di malam hari orang-orang
untuk siapa itu sangat mudah dilakukan jenis teknik saat ini.
Dan itulah yang Anda bisa membayar $ 5,99 per bulan untuk.
Tapi Anda akan pasti mendapatkan apa yang Anda bayar.
>> Ketika Anda mengatakan [tidak terdengar], saat itulah hal-hal seperti lima sembilan ini datang,
dimana bahkan jika teknologi kita tidak bisa benar-benar menjamin 99,999,
kami hanya akan membangun dalam beberapa jenis hukuman untuk kontrak
sehingga jika itu tidak terjadi, setidaknya ada beberapa biaya kepada kami, vendor.
Dan itulah yang akan Anda biasanya mendapatkan mereka untuk menyetujui.
>> AUDIENCE: [tidak terdengar]
>> DAVID Malan: Dan satu jenis berkat
adalah bahwa bahkan ketika kita turun, untuk Misalnya, atau bahkan tertentu perusahaan,
kenyataannya adalah Amazon, misalnya, memiliki begitu banyak
pelanggan menisik, pelanggan terkenal, beroperasi dari pusat data tertentu
bahwa ketika sesuatu yang sangat tidak beres, seperti tindakan Tuhan dan cuaca dan semacamnya,
apakah ada semacam lapisan perak, itu bahwa Anda berada dalam perusahaan yang sangat baik.
website Anda mungkin offline.
Tapi begitu adalah seperti setengah dari internet populer.
Dan itu bisa dibilang sedikit lebih cocok untuk pelanggan Anda
jika lebih dari internet Hal daripada hal acme.com.
Tapi itu sedikit curang.
>> Jadi dalam hal hal lain untuk melihat, hanya agar kita tidak mengesampingkan orang lain,
jika Anda pergi ke Microsoft Azure, mereka memiliki kedua Linux dan Windows barang
yang sebanding dengan Amazon.
Jika Anda pergi ke Google Compute Engine, mereka memiliki sesuatu yang mirip juga.
Dan hanya untuk melengkapi persembahan awan ini,
Aku akan membuat menyebutkan satu hal lainnya.
Ini adalah situs populer itu perwakilan
dari kelas teknologi.
Yang kita hanya berbicara tentang, Amazon, akan IAAS,
Infrastruktur Sebagai Layanan, di mana Anda semacam perangkat keras fisik sebagai layanan.
Ada SAAS.
Sebenarnya, saya menuliskan ini turun.
>> Infrastruktur IAAS-- Sebagai Service, SAAS,
dan PAAS, yang akronim sangat membingungkan
yang menggambarkan tiga berbagai jenis hal.
Dan akronim sendiri tidak benar-benar peduli.
Ini adalah semua hal-hal awan kami baru saja bicarakan,
-hal tingkat yang lebih rendah, yang virtualisasi perangkat keras dan penyimpanan
dalam apa yang disebut awan, apakah itu Amazon, Microsoft, Google, atau lainnya.
>> Software sebagai service-- a kita semua jenis menggunakan ini.
Jika Anda menggunakan Google Apps untuk Gmail atau kalender,
salah berbasis web ini aplikasi yang 10 tahun yang lalu kami
akan memiliki ikon mengklik ganda desktop kita, perangkat lunak sebagai layanan
sekarang benar-benar aplikasi web.
Dan platform sebagai Layanan jenis tergantung.
>> Dan salah satu contoh saya akan memberi Anda di sini dalam konteks computing-- awan
ada satu perusahaan yang cukup populer hari ini, Heroku.
Dan mereka layanan, platform, jika Anda mau,
yang berjalan di atas infrastruktur Amazon.
Dan mereka hanya membuatnya lebih mudah untuk pengembang dan insinyur
untuk mendapatkan aplikasi berbasis web online.
>> Ini adalah rasa sakit, awalnya, untuk menggunakan Layanan Web Amazon dan hal-hal lain.
Karena Anda benar-benar memiliki untuk mengetahui dan memahami
tentang database dan server web dan balancers beban dan semua hal
Saya hanya berbicara tentang.
Karena semua Amazon telah dilakukan tidak tersembunyi tantangan-tantangan desain.
Mereka baru saja virtual mereka dan memindahkan mereka ke dalam browser,
ke dalam perangkat lunak, bukan perangkat keras.
>> Tapi perusahaan seperti Heroku dan lainnya penyedia PAAS, Landasan Sebagai Service,
mereka menggunakan mereka fundamental barebone bahwa kita hanya berbicara tentang,
dan mereka membangun lebih mudah untuk menggunakan perangkat lunak di atasnya
sehingga jika Anda ingin mendapatkan web berbasis aplikasi online hari ini,
Anda tentu harus tahu bagaimana program.
Anda perlu tahu Java atau Python atau PHP atau Ruby atau sekelompok bahasa lain.
>> Tapi Anda juga perlu tempat untuk meletakkannya.
Dan kami berbicara sebelumnya tentang mendapatkan sebuah perusahaan web hosting.
Itu semacam seperti pertengahan 2000-an pendekatan untuk mendapatkan sesuatu secara online.
Saat ini Anda mungkin bukan membayar seseorang seperti Heroku beberapa dolar per bulan.
Dan pada dasarnya, setelah Anda sudah melakukan beberapa konfigurasi awal,
untuk memperbarui situs web Anda, Anda ketik perintah di jendela.
Dan kode apa pun yang Anda sudah menulis di sini pada laptop Anda segera
terdistribusi ke sejumlah server di awan.
>> Dan Heroku mengurus semua kompleksitas.
Mereka mencari semua database hal, semua load balancing,
semua sakit kepala yang kita sudah hanya ditulis di papan tulis,
dan menyembunyikan semua itu untuk Anda.
Dan sebagai imbalannya, Anda hanya membayar mereka sedikit lebih.
Jadi Anda memiliki infrastruktur ini sebagai layanan, platform sebagai layanan,
dan kemudian software sebagai layanan.
Ini, sekali lagi, ini abstraksi atau layering.
>> Pertanyaan di atas awan atau membangun infrastruktur sendiri?
Baiklah, itu banyak.
Mengapa kita tidak pergi ke depan dan mengambil kami 15 menit istirahat di sini.
Kami akan kembali dengan konsep baru beberapa dan sedikit tangan-peluang
sebelum malam berakhir.