Apa yang boleh dilakukan oleh nodej: 1. Realisasikan pembangunan penuh untuk pengaturcara 2. Menyatukan perpustakaan kelas awam dan menyeragamkan kod; 6. Laksanakan sistem pemantauan untuk timbunan memori, dsb.
Persekitaran pengendalian artikel ini: sistem Windows 7, nodejs10.16.2, komputer Dell G3.
pengenalan nodejs:
Node.js ialah persekitaran berjalan JavaScript berdasarkan enjin Chrome V8. Node.js menggunakan model I/O yang dipacu peristiwa, tidak menyekat, menjadikannya ringan dan cekap. Pengurus pakej Node.js npm ialah ekosistem perpustakaan sumber terbuka terbesar di dunia.
Apa yang boleh dilakukan oleh nodej?
1. Nodejs adalah berdasarkan bahasa Javascript, jadi tidak perlu mempelajari bahasa yang tidak dikenali secara berasingan, sekali gus menurunkan ambang pembelajaran. Pada masa yang sama, bahasa Javascript adalah penting dalam pembangunan bahagian hadapan Web, terutamanya aplikasi HTML5 mesti menggunakannya Oleh itu, bahasa bersatu bahagian depan dan belakang bukan sahaja dapat merealisasikan pembangunan penuh programmer, tetapi juga menyatukan kelas awam. perpustakaan dan menyeragamkan kod. Berdasarkan ini sahaja, Nodejs telah memenangi pasaran.
2. Nodejs tidak membangunkan semula persekitaran masa jalan, tetapi memilih kernel penyemak imbas terpantas pada masa ini V8 sebagai enjin pelaksanaan untuk memastikan prestasi dan kestabilan Nodejs.
3. Pembangunan Nodejs sangat cekap dan kodnya mudah, terima kasih kepada mekanisme berbenang tunggal Nodejs. Satu lagi ciri Nodejs, pengaturcaraan tak segerak, memberikan Nodejs kelebihan yang jelas dalam mengendalikan aplikasi intensif IO. Secara peribadi, saya merasakan bahawa menggunakan Nodejs untuk pembangunan web adalah 10 kali lebih cekap daripada Java dan lebih mudah daripada kod PHP.
4. Komuniti Nodejs sedang berkembang Bukan sahaja bilangan pakej meningkat dengan pesat, tetapi kualiti pakej juga jauh lebih baik daripada bahasa lain. Banyak pakej peringkat bintang adalah ringkas dan pintar, direka untuk tabiat penggunaan pembangun. Kit alatan yang paling saya gunakan, seperti socket.io, moment.js, underscore.js, async.js, express.js, bower.js, grunt.js, forever.js..., benar-benar mengubah tabiat pengaturcaraan saya sebelum ini .
Sudah tentu, sebagai tambahan kepada sebab saya menggunakan Nodejs, banyak syarikat juga mempunyai sebab tersendiri untuk menggunakannya.
Sebab ebay memilih Nodejs boleh diringkaskan kepada 4 perkara berikut:
Bahasa dinamik: Kecekapan pembangunan sangat tinggi, dan ia mempunyai keupayaan untuk membina sistem yang kompleks, seperti http://ql.io.
Prestasi dan beban I/O: Nodejs menyelesaikan masalah intensif IO dengan sangat baik melalui IO tak segerak.
Memori overhed sambungan: Setiap proses Node.js boleh menyokong lebih daripada 120,000 sambungan aktif dan setiap sambungan menggunakan lebih kurang 2K memori.
Operasi: Melaksanakan sistem pemantauan tindanan memori Nodejs.
15 senario aplikasi Nodejs
Kami mempunyai pemahaman awal tentang Nodejs, mari kita lihat senario aplikasi Nodejs.
1 Pembangunan web: Express EJS Mongoose/MySQL
express ialah rangka kerja aplikasi web Nodejs yang ringan dan fleksibel yang boleh membina tapak web dengan pantas. Rangka kerja Express dibina pada modul Http terbina dalam Nodejs dan membungkus semula modul Http untuk melaksanakan fungsi pemprosesan permintaan Web.
ejs ialah enjin templat Javascript terbenam yang menjana kod HTML melalui kompilasi.
mongoose ialah alat model objek MongoDB Melalui rangka kerja Mongoose, anda boleh mengakses MongoDB.
mysql ialah API komunikasi yang bersambung ke pangkalan data MySQL dan boleh digunakan untuk mengakses MySQL.
Biasanya Nodejs digunakan untuk pembangunan web, yang memerlukan tiga rangka kerja untuk digunakan bersama, sama seperti SSH dalam Java.
2 pembangunan REST: Restify
resify ialah rangka kerja aplikasi REST berdasarkan Nodejs, pelayan sokongan dan klien. Restify lebih memfokuskan pada perkhidmatan REST daripada ekspres, mengalih keluar templat, render dan fungsi lain dalam ekspres Pada masa yang sama, ia mengukuhkan penggunaan protokol REST, sokongan versi dan pengendalian pengecualian HTTP.
3 Bilik Sembang Web (IM): Express http://Socket.io
socket.io ialah perisian berdasarkan seni bina Nodejs dan menyokong protokol websocket untuk komunikasi masa nyata. Beg. Socket.io menyediakan pakej lengkap untuk membina aplikasi masa nyata merentas pelayar Socket.io dilaksanakan sepenuhnya oleh JavaScript.
4 perangkak web: Cheerio/Request
cheerio ialah kit alat fungsi teras jQuery yang pantas, fleksibel dan merangkum yang disesuaikan khas untuk pelayan. Cheerio termasuk subset jQuery teras, menghilangkan semua ketidakkonsistenan DOM dan ketidakserasian pelayar daripada perpustakaan jQuery, mendedahkan APInya yang benar-benar elegan. Cheerio berfungsi pada model DOM yang sangat mudah dan konsisten, menjadikan penghuraian, manipulasi dan pemaparan sangat cekap. Penanda aras hujung ke hujung asas menunjukkan bahawa Cheerio adalah lebih kurang lapan kali (8x) lebih pantas daripada JSDOM. Cheerio merangkum htmlparser yang serasi @FB55 dan boleh menghuraikan hampir semua dokumen HTML dan XML.
5 Blog Web: Hexo
Hexo ialah rangka kerja blog statik yang ringkas, ringan dan statik berdasarkan Node. Melalui Hexo kita boleh membuat blog kita sendiri dengan cepat, yang boleh disiapkan dengan hanya beberapa arahan.
Apabila dikeluarkan, Hexo boleh digunakan pada pelayan Nod anda sendiri atau pada github. Bagi pengguna individu, menggunakan GitHub mempunyai banyak faedah Ia bukan sahaja dapat menjimatkan kos pelayan, tetapi juga mengurangkan masalah pelbagai operasi dan penyelenggaraan sistem (pengurusan sistem, sandaran, rangkaian). Oleh itu, tapak peribadi berdasarkan github mula menjadi popular...
6 Forum web: nodeclub
Node Club ialah perisian komuniti baharu yang dibangunkan dengan Node.js dan MongoDB, dengan elegan antara muka dan fungsi berkuasa Kaya, padat dan pantas, ia telah digunakan dalam komuniti teknikal Cina Node.js CNode, tetapi anda boleh menggunakannya untuk membina komuniti anda sendiri.
7 Tayangan Slaid Web: Cleaver
Cleaver boleh menjana pembentangan berdasarkan Markdown. Jika anda sudah mempunyai dokumen Markdown, anda boleh membuat tayangan slaid dalam masa 30 saat. Cleaver adalah alat untuk penggodam.
8 Platform pengurusan pakej bahagian hadapan: bower.js
Bower ialah alat pengurusan pakej yang dilancarkan oleh twitter Berdasarkan idea modular nodejs, fungsi-fungsi tersebut tersebar ke dalam pelbagai modul , supaya modul dan Terdapat hubungan antara modul, dan Bower digunakan untuk menguruskan hubungan ini antara modul.
Pengesahan 9 OAuth: Pasport
Projek Pasport ialah perisian tengah pengesahan berdasarkan Nodejs. Tujuan Pasport hanyalah untuk "pengesahan log masuk". Oleh itu, kod itu bersih, mudah diselenggara, dan boleh disepadukan dengan mudah ke dalam aplikasi lain. Aplikasi web biasanya mempunyai dua bentuk pengesahan log masuk: log masuk pengesahan nama pengguna dan kata laluan, dan log masuk pengesahan OAuth. Pasport boleh mengkonfigurasi mekanisme pengesahan yang berbeza berdasarkan ciri-ciri aplikasi. Artikel ini akan memperkenalkan log masuk yang disahkan dengan nama pengguna dan kata laluan.
10 alat tugas berjadual: kemudian
Nanti ialah perpustakaan alat berdasarkan Nodejs yang melaksanakan tugas berjadual dengan cara yang paling mudah. Kemudian boleh dijalankan dalam Node dan penyemak imbas.
11 alatan persekitaran penyemak imbas: browserify
Kemunculan Browserify membolehkan modul Nodejs dijalankan dalam penyemak imbas, gunakan format sintaks require() untuk mengatur kod bahagian hadapan dan memuatkan modul npm. Dalam penyemak imbas, kod yang disusun dengan memanggil browserify juga ditulis dalam teg
Operasi menggunakan Browserify terbahagi kepada 3 langkah. 1. Tulis program atau modul nod, 2. Gunakan Browserify untuk menyusunnya terlebih dahulu ke dalam bundle.js, 3. Muatkan bundle.js dalam halaman HTML.
12 Alat pengaturcaraan baris perintah: Komander
komander ialah modul nodejs ringan yang menyediakan fungsi berkuasa untuk input baris arahan pengguna dan penghuraian parameter. Komander berasal daripada projek Ruby dengan nama yang sama. Ciri komander: kod rakaman sendiri, menjana bantuan secara automatik, menggabungkan parameter pendek ("ABC" == "-A-B-C"), pilihan lalai, pilihan mandatori, penghuraian arahan dan gesaan.
13 Alat konsol web: tty.js
tty.js ialah tetingkap baris arahan yang menyokong berjalan dalam penyemak imbas Ia berdasarkan platform node.js dan bergantung pada soket. perpustakaan io melalui websocket berkomunikasi dengan sistem Linux. Ciri-ciri: menyokong model tetingkap berbilang tab;
14 alatan aplikasi klien: node-webwit
Node-Webkit ialah gabungan teknologi NodeJS dan WebKit, menyediakan rangka kerja asas untuk pembangunan aplikasi pelanggan merentas platform Windows dan Linux, memanfaatkan platform A yang popular untuk menulis aplikasi menggunakan teknologi web (Node.JS, JavaScript, HTML5). Pembangun aplikasi boleh memanfaatkan teknologi Web dengan mudah untuk melaksanakan pelbagai aplikasi. Prestasi dan ciri Node-Webkit telah menjadikannya platform aplikasi teknologi web terkemuka di dunia.
15 Sistem pengendalian: node-os
NodeOS ialah sistem pengendalian mesra yang dibangunkan menggunakan NodeJS Sistem pengendalian sepenuhnya dibina pada kernel Linux dan menggunakan shell dan NPM Untuk pengurusan pakej, NodeJS boleh bukan sahaja melaksanakan pengurusan pakej dengan baik, tetapi juga mengurus skrip, antara muka, dsb. dengan baik. Pada masa ini, kedua-dua Docker dan Vagrant dibina dengan versi pertama NodeOS.
Pembelajaran yang disyorkan: "tutorial video nod"
Atas ialah kandungan terperinci Perkara yang boleh dilakukan oleh nodej. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!