cari
Rumahpembangunan bahagian belakangGolangBolehkah bahasa go digunakan untuk pengaturcaraan?

Bolehkah bahasa go digunakan untuk pengaturcaraan?

Dec 27, 2022 am 10:30 AM
golangpergi bahasa

Bahasa Go boleh diprogramkan. Bahasa Go ialah bahasa pengaturcaraan serentak yang ditaip kuat, disusun, dengan fungsi pengumpulan sampah yang dibangunkan oleh bahasa Go mempunyai banyak kegunaan dan boleh digunakan untuk pengaturcaraan rangkaian, pengaturcaraan sistem, pengaturcaraan serentak dan pengaturcaraan teragih. Sebagai bahasa pengaturcaraan pelayan, bahasa Go sangat sesuai untuk memproses log, pembungkusan data, pemprosesan mesin maya, sistem fail, sistem teragih, ejen pangkalan data, dll. Ia juga boleh digunakan untuk pengaturcaraan rangkaian seperti aplikasi Web, aplikasi API, dan muat turun aplikasi.

Bolehkah bahasa go digunakan untuk pengaturcaraan?

Persekitaran pengendalian tutorial ini: sistem Windows 7, GO versi 1.18, komputer Dell G3.

Bahasa Go, juga dikenali sebagai Golang, ialah bahasa pengaturcaraan yang ditaip kuat, disusun, serentak dan pengumpulan sampah yang dibangunkan oleh Google.

Bahasa Go (atau Golang) berasal pada tahun 2007 dan dikeluarkan secara rasmi pada tahun 2009. Go ialah bahasa yang sangat muda, dan matlamat utamanya ialah untuk "menggabungkan kelajuan pembangunan bahasa dinamik seperti Python dan prestasi serta keselamatan bahasa yang disusun seperti C/C++."

Bahasa Go ialah satu lagi percubaan dalam reka bentuk bahasa pengaturcaraan dan peningkatan besar berbanding bahasa seperti C. Ia bukan sahaja membenarkan anda mengakses sistem pengendalian asas, tetapi juga menyediakan pengaturcaraan rangkaian yang berkuasa dan sokongan pengaturcaraan serentak. Bahasa Go mempunyai banyak kegunaan, dan boleh digunakan untuk pengaturcaraan rangkaian, pengaturcaraan sistem, pengaturcaraan serentak dan pengaturcaraan teragih:

  • Pengaturcaraan pelayan, jika anda menggunakan C atau C++ untuk melakukan perkara tersebut sebelum ini , gunakan Go Ia sangat sesuai untuk memproses log, pembungkusan data, pemprosesan mesin maya, sistem fail, dsb.

  • Sistem teragih, ejen pangkalan data, perisian tengah, dsb., seperti Etcd.

  • Pengaturcaraan rangkaian, kawasan ini paling banyak digunakan pada masa ini, termasuk aplikasi Web, aplikasi API, aplikasi muat turun dan pakej net/http terbina dalam Go pada asasnya menyepadukan fungsi rangkaian yang biasa kami gunakan Semua direalisasikan.

Pelancaran bahasa Go bertujuan untuk mengurangkan kerumitan kod tanpa kehilangan prestasi aplikasi, dengan "penyerahan mudah, konkurensi yang baik, reka bentuk bahasa yang baik dan prestasi pelaksanaan yang baik" Pada masa ini, banyak syarikat IT domestik telah menggunakan bahasa Go untuk membangunkan projek.

Banyak projek sumber terbuka yang penting dibangunkan menggunakan bahasa Go, termasuk Docker, Go-Ethereum, Thrraform dan Kubernetes.

Syarikat atau projek manakah di dalam dan luar negara yang menggunakan bahasa Go

Selepas Go dikeluarkan, banyak syarikat, terutamanya syarikat pengkomputeran awan, mula menggunakan Go untuk pembinaan semula Banyak infrastruktur mereka dibangunkan secara langsung menggunakan Go Docker yang popular baru-baru ini dibangunkan menggunakan Go.

Terdapat banyak projek sumber terbuka yang dibangunkan menggunakan bahasa Go. Projek sumber terbuka bahasa Early Go hanya melaksanakan pengikatan pustaka bahasa Go antara bahasa Go dan projek tradisional, seperti Qt, Sqlite, dan lain-lain turut menyumbang kepada kemunculan sejumlah besar projek pembangunan asli menggunakan bahasa Go.

  • Medan infrastruktur pengkomputeran awan

    Projek perwakilan: docker, kubernetes, etcd, consul, cloudflare CDN, storan awan Qiniu, dsb.

  • Perisian asas

    Projek perwakilan: tidb, influxdb, cockroachdb, dsb.

  • Perkhidmatan Mikro

    Projek wakil: go-kit, mikro, typhon of monzo bank, bilibili, dsb.

  • Infrastruktur Internet

    Projek wakil: Ethereum, hyperledger, dsb.

Sesetengah syarikat asing menggunakan Go, seperti Google, Docker, Apple, Cloud Foundry, CloudFlare, Couchbase, CoreOS, Dropbox, MongoDB, AWS dan syarikat lain;

Syarikat domestik yang menggunakan pembangunan Go: syarikat seperti Alibaba Cloud CDN, Baidu, Xiaomi, Qiniu, PingCAP, Huawei, Kingsoft, Cheetah Mobile, Ele.me, dsb.

Bolehkah bahasa go digunakan untuk pengaturcaraan?

Docker

Docker ialah teknologi virtualisasi peringkat sistem pengendalian yang boleh Pengasingan antara mereka juga boleh dipanggil bekas . Docker boleh menjalankan satu atau lebih keadaan dengan cepat pada pelayan fizikal. Alat pembungkusan maya berdasarkan lxc boleh merealisasikan pembinaan platform PAAS. Sebagai contoh, mulakan sistem pengendalian CentOS dan tamatkannya selepas melaksanakan arahan pada baris arahan dalamannya Keseluruhan proses adalah cekap seperti sistem pengendalian itu sendiri.

bahasa go

Kod sumber awal bahasa Go sendiri ditulis dalam bahasa C dan bahasa himpunan. Bermula dari versi Go 1.5, ia ditulis sepenuhnya dalam bahasa Go itu sendiri. Kod sumber bahasa Go mempunyai kepentingan rujukan yang besar untuk memahami penjadualan asas bahasa Go. Pembaca yang ingin memahami bahasa Go disyorkan untuk membacanya.

Kubernetes

Perkhidmatan penjadualan kontena yang dibina pada Docker yang dibangunkan oleh Google Pengguna boleh mengurus gugusan kontena awan melalui gugusan Kubernetes.

etcd

Sistem storan KV yang diedarkan dan boleh dipercayai yang boleh dikonfigurasikan dengan cepat dalam awan.

beego

beego ialah rangka kerja Tornado seperti Python yang menggunakan idea reka bentuk RESTFul dan merupakan rangka kerja aplikasi web yang sangat ringan, berskala tinggi dan berprestasi tinggi yang ditulis dalam bahasa Go.

martini

Rangka kerja web untuk membina aplikasi web modular dengan cepat.

codis

Penyelesaian Redis teragih domestik yang sangat baik.

selidiki

Penyahpepijat kuat bahasa Go disepadukan oleh banyak persekitaran dan editor bersepadu.

Facebook

Facebook juga menggunakannya Atas sebab ini, mereka juga telah menubuhkan organisasi sumber terbuka facebookgo di Github Anda boleh menyemak projek sumber terbuka Facebook melawat, seperti Yang terkenal ialah rahmat naik taraf yang lancar.

Tencent

Sebagai sebuah syarikat domestik yang besar, Tencent masih berani mencuba, terutamanya dalam bidang kontena Docker Mereka telah membina puluhan ribu unit Docker pada tahun 2015 . Untuk amalan khusus, sila rujuk

http://www.infoq.com/cn/articles/tencent-millions-scale-docker-application-practice

Baidu

Seperti yang diketahui pada masa ini, Baidu digunakan pada bahagian operasi dan penyelenggaraan Ia adalah projek BFE bagi operasi dan penyelenggaraan Baidu, yang bertanggungjawab untuk akses trafik bahagian hadapan. Orang yang bertanggungjawab mereka berkongsinya pada tahun 2016. Anda boleh lihat di http://www.infoq.com/cn/presentations/application-of-golang-in-baidu-frontend ini

Yang kedua ialah sistem Pemesejan Baidu. Bertanggungjawab untuk pembangunan dan penyelenggaraan bahagian pelayan sistem pemesejan mudah alih syarikat.

Jingdong

Sistem tolak mesej Awan Jingdong, storan awan dan Jingdong Mall semuanya dibangunkan menggunakan Go.

Xiaomi

Sokongan Xiaomi untuk Golang tidak lebih daripada sistem pemantauan operasi dan penyelenggaraan sumber terbuka, iaitu http://open-falcon.com/.

Selain itu, pasukan seperti Xiaomi Interactive Entertainment, Xiaomi Mall, Xiaomi Video dan Xiaomi Ecological Chain semuanya menggunakan Golang.

360

360 juga banyak menggunakan Golang Salah satunya ialah sistem carian log sumber terbuka Poseidon, dihoskan pada Github,

dan pasukan tolak 360. juga menggunakannya, dan mereka juga menulis catatan blog di blog rasmi Golang.

Meituan

Program sokongan trafik latar belakang Meituan. Skop aplikasi: Menyokong trafik bahagian belakang tapak web utama (isih, pengesyoran, carian, dll.), menyediakan pengimbangan beban, cache, toleransi kesalahan, pengedaran bersyarat, penunjuk operasi statistik (qps, latensi) dan fungsi lain.

Didi

Platform perkhidmatan asas.

Jinshan Weikan

Skop aplikasi: antara muka perkhidmatan, perkhidmatan proses latar belakang, sistem mesej, sistem gambar

Sogou

Sistem tolak Sogou. Bahagian sistem Push yang digunakan untuk mengekalkan sambungan dengan pelanggan.

. . . . .

Ditulis pada penghujungnya

Sudah tentu, sama ada sesuatu teknologi boleh dibangunkan bergantung pada tiga perkara utama. (Pandangan berikut dipetik daripada https://www.cnblogs.com/qwangxiao/p/8318894.html)

• Adakah terdapat komuniti yang lebih baik. Ekosistem C, C++, Java, Python dan JavaScript semuanya sangat kaya dan popular. Terutamanya komuniti dengan banyak organisasi komersial yang mengambil bahagian adalah lebih popular, seperti komuniti Linux.

• Adakah terdapat piawaian industri ? C, C++ dan Java semuanya mempunyai organisasi standardisasi. Java, khususnya, telah membangunkan piawaian peringkat perusahaan seperti J2EE dari segi seni bina.

• Adakah terdapat satu atau lebih apl pembunuh . Tidak perlu dikatakan, aplikasi pembunuh C, C++ dan Java, walaupun untuk PHP, yang belum menjadi bahasa pengaturcaraan yang baik, adalah teknologi utama dalam LAMP, penyelesaian pembunuh pertama dalam era Linux, jadi, juga dibangunkan. Tiga mata di atas adalah sangat kritikal .

Sudah tentu, sebagai tambahan kepada tiga perkara penting di atas, terdapat faktor lain yang mempengaruhi, seperti:

  • Sama ada keluk pembelajaran rendah dan sama ada ia pantas untuk bermula. Ini sangat penting, dan C++ semakin teruk pada ketika ini.
  • Adakah terdapat rangka kerja pembangunan yang baik untuk meningkatkan kecekapan pembangunan. Seperti: rangka kerja Spring Java, STL C++, dsb.
  • Sama ada ia disokong oleh satu atau lebih syarikat teknologi gergasi . Contohnya: IBM dan Sun di belakang Java dan Linux...
  • Adakah mereka telah menyelesaikan masalah kesakitan dalam pembangunan perisian? Contohnya: Java menyelesaikan masalah pengurusan memori C dan C++.

Menggunakan pembaris ini untuk mengukur bahasa Go, kita dapat melihat dengan jelas:

  • Bahasa Go mudah dipelajari

  • Bahasa Go menyelesaikan masalah pengaturcaraan serentak dan kecekapan pembangunan aplikasi peringkat rendah;

  • Aplikasi pembunuh bahasa Go ialah Docker, dan ekosistem Docker telah meletup sepenuhnya dalam beberapa tahun kebelakangan ini.

Jadi, masa depan bahasa Go adalah tanpa had. Sudah tentu, Go mungkin memakan banyak projek C, C++ dan Java. Walau bagaimanapun, Projek utama yang ditelan oleh bahasa Go mestilah projek lapisan pertengahan, bukan peringkat sangat rendah mahupun lapisan perniagaan. Dalam erti kata lain, bahasa Go tidak akan menelan projek peringkat rendah seperti C dan C++, dan juga tidak akan menelan projek peringkat tinggi seperti lapisan perniagaan Java. Perkara yang boleh dimakan oleh bahasa Go mestilah projek pada PaaS, seperti beberapa perisian tengah cache mesej, penemuan perkhidmatan, ejen perkhidmatan, sistem kawalan, ejen, pengumpulan log, dll. Tiada senario perniagaan yang rumit dan ia tidak dapat mencapai lapisan bawah khas ( seperti sistem pengendalian), projek perisian atau alat yang merupakan lapisan platform perantaraan. C dan C++ akan dialihkan ke tahap yang lebih rendah, dan Java akan dialihkan ke lapisan perniagaan yang lebih tinggi.

Baiklah, mari kita gunakan pembaris di atas untuk mengukur Docker, aplikasi pembunuh bahasa Go, dan anda akan mendapati bahawa ia pada dasarnya adalah sama.

  • Docker mudah untuk dimulakan.

  • Docker menyelesaikan masalah alam sekitar dalam operasi dan penyelenggaraan dan titik kesakitan penjadualan perkhidmatan.

  • Ekosistem Docker mempunyai syarikat besar di belakangnya. Seperti Google.

  • Docker menghasilkan OCI standard industri.

  • Komuniti dan ekosistem Docker telah pun terbentuk seperti Java dan Linux.

[Cadangan berkaitan: Pergi tutorial video, Pengajaran pengaturcaraan]

Atas ialah kandungan terperinci Bolehkah bahasa go digunakan untuk pengaturcaraan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Golang dan Python: Memahami PerbezaanGolang dan Python: Memahami PerbezaanApr 18, 2025 am 12:21 AM

Perbezaan utama antara Golang dan Python adalah model konvensional, sistem jenis, prestasi dan kelajuan pelaksanaan. 1. Golang menggunakan model CSP, yang sesuai untuk tugas serentak yang tinggi; Python bergantung pada multi-threading dan gil, yang sesuai untuk tugas I/O-intensif. 2. Golang adalah jenis statik, dan Python adalah jenis dinamik. 3. Golang mengumpulkan kelajuan pelaksanaan bahasa adalah cepat, dan pembangunan bahasa yang ditafsirkan Python adalah pantas.

Golang vs C: Menilai perbezaan kelajuanGolang vs C: Menilai perbezaan kelajuanApr 18, 2025 am 12:20 AM

Golang biasanya lebih perlahan daripada C, tetapi Golang mempunyai lebih banyak kelebihan dalam pengaturcaraan serentak dan kecekapan pembangunan: 1) Koleksi sampah Golang dan model konkurensi menjadikannya berfungsi dengan baik dalam senario konvensyen yang tinggi; 2) C memperoleh prestasi yang lebih tinggi melalui pengurusan memori manual dan pengoptimuman perkakasan, tetapi mempunyai kerumitan pembangunan yang lebih tinggi.

Golang: bahasa utama untuk pengkomputeran awan dan devOpsGolang: bahasa utama untuk pengkomputeran awan dan devOpsApr 18, 2025 am 12:18 AM

Golang digunakan secara meluas dalam pengkomputeran awan dan devOps, dan kelebihannya terletak pada kesederhanaan, kecekapan dan keupayaan pengaturcaraan serentak. 1) Dalam pengkomputeran awan, Golang dengan cekap mengendalikan permintaan serentak melalui mekanisme goroutine dan saluran. 2) Di DevOps, kompilasi cepat Golang dan ciri-ciri silang platform menjadikannya pilihan pertama untuk alat automasi.

Golang dan C: Memahami kecekapan pelaksanaanGolang dan C: Memahami kecekapan pelaksanaanApr 18, 2025 am 12:16 AM

Golang dan C masing -masing mempunyai kelebihan sendiri dalam kecekapan prestasi. 1) Golang meningkatkan kecekapan melalui pengumpulan goroutine dan sampah, tetapi boleh memperkenalkan masa jeda. 2) C menyedari prestasi tinggi melalui pengurusan memori manual dan pengoptimuman, tetapi pemaju perlu menangani kebocoran memori dan isu -isu lain. Apabila memilih, anda perlu mempertimbangkan keperluan projek dan timbunan teknologi pasukan.

Golang vs Python: Konvensyen dan MultithreadingGolang vs Python: Konvensyen dan MultithreadingApr 17, 2025 am 12:20 AM

Golang lebih sesuai untuk tugas -tugas kesesuaian yang tinggi, sementara Python mempunyai lebih banyak kelebihan dalam fleksibiliti. 1.Golang dengan cekap mengendalikan kesesuaian melalui goroutine dan saluran. 2. Pilihannya harus berdasarkan keperluan khusus.

Golang dan C: Perdagangan dalam prestasiGolang dan C: Perdagangan dalam prestasiApr 17, 2025 am 12:18 AM

Perbezaan prestasi antara Golang dan C terutamanya ditunjukkan dalam pengurusan ingatan, pengoptimuman kompilasi dan kecekapan runtime. 1) Mekanisme pengumpulan sampah Golang adalah mudah tetapi boleh menjejaskan prestasi, 2) Pengurusan memori manual C dan pengoptimuman pengkompil lebih cekap dalam pengkomputeran rekursif.

Golang vs Python: Aplikasi dan Kes GunakanGolang vs Python: Aplikasi dan Kes GunakanApr 17, 2025 am 12:17 AM

PilihgolangforhighperformanceandConcurrency, IdealForBackEndServicesandnetworkprogramming; SelectPythonForrapidDevelopment, datascience, danMachinelearningDuetoitSversativilityAndextiveLibraries.

Golang vs Python: Perbezaan dan Persamaan UtamaGolang vs Python: Perbezaan dan Persamaan UtamaApr 17, 2025 am 12:15 AM

Golang dan Python masing -masing mempunyai kelebihan mereka sendiri: Golang sesuai untuk prestasi tinggi dan pengaturcaraan serentak, sementara Python sesuai untuk sains data dan pembangunan web. Golang terkenal dengan model keserasiannya dan prestasi yang cekap, sementara Python terkenal dengan sintaks ringkas dan ekosistem perpustakaan yang kaya.

See all articles

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
1 bulan yang laluBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
1 bulan yang laluBy尊渡假赌尊渡假赌尊渡假赌
Akan R.E.P.O. Ada Crossplay?
1 bulan yang laluBy尊渡假赌尊渡假赌尊渡假赌

Alat panas

PhpStorm versi Mac

PhpStorm versi Mac

Alat pembangunan bersepadu PHP profesional terkini (2018.2.1).

Penyesuai Pelayan SAP NetWeaver untuk Eclipse

Penyesuai Pelayan SAP NetWeaver untuk Eclipse

Integrasikan Eclipse dengan pelayan aplikasi SAP NetWeaver.

SublimeText3 versi Inggeris

SublimeText3 versi Inggeris

Disyorkan: Versi Win, menyokong gesaan kod!

Muat turun versi mac editor Atom

Muat turun versi mac editor Atom

Editor sumber terbuka yang paling popular

Dreamweaver Mac版

Dreamweaver Mac版

Alat pembangunan web visual