Open Finance: Reality vagy Hype?  PlatoBlockchain Data Intelligence. Függőleges keresés. Ai.

Nyílt pénzügyek: Reality vagy Hype?

Általában vannak aggályok egy új technológia bevezetésekor, például mi történne, ha valahol elakadunk, és időnket és erőfeszítéseinket vesztegetnénk. Lehetséges, hogy vissza kell térnünk az eredeti megoldáshoz. Hasonló problémákkal szembesültünk egy évvel ezelőtt is, de hosszú és alapos kutatás után biztonságosabb és biztonságosabb megoldást találtunk.Golang és keretei. A dokumentálás módja nagyon hasznos. Abban azonban egészen biztosak voltunk, hogy nem találunk minden választ az interneten, ami kihívást jelentett számunkra a szelleme Lailah Gifty Akita híres közmondás, „MINDEN KIHÍVÁSSAL KAPCSOLATOS HELYZETRE MINDIG VAN MEGOLDÁS.”

Ez a blog elsősorban a Golang-Beego keretrendszerről és annak alkalmazásairól szól. Megvitatjuk, hogyan használják a Golangot a webfejlesztésben, és hogy a fejlesztők többsége miért tér át Python, Node vagy más nyelvekről a Go-ra.

Ismerjük meg a Golang keretrendszert, hogy megtudjuk, hogyan működik.

Mi az a Golang?

Először 2009-ben jelent meg, a Golang (népszerű nevén Go) gyorsan népszerűvé vált a fejlesztők körében, és a felhasználók több mint 90%-ának kedvelt nyelvévé vált. Ősnyelvei a C és C++ programozási nyelvek, ami egészen nyilvánvaló a szintaxis és a fordítási jellemzők alapján. 

Elsősorban háttérfejlesztésre használják, a Go-nak 4 további felhasználási esete van - 

  1. Felhő- és hálózati szolgáltatások
  2. Parancssori interfészek (CLI-k) 
  3. Web Development
  4. Fejlesztési műveletek és telephely-megbízhatósági tervezés. 

Íme néhány fő funkciója a Golangnak, amelyek ezt a keretrendszert preferálják a fejlesztők számára:

1. Egyszerűség 

A Go szintaxisa egyszerű, ahogy itt és annak is látható fordítóprogram problémákat érezhet és hibákat okozhat a felépítési folyamat során – vagyis a program futtatása előtt.

A Go mögött meghúzódó rugalmasság, használhatóság és hihetetlenül menő koncepció (hogyan kezeli a natív párhuzamosságot, a szemétgyűjtést és a biztonság+sebesség) néhány olyan funkció, amely nagyon hasznos a fejlesztők számára.

2. Sebesség

A beépített párhuzamosság (Goroutines és Channels) az egyik fő oka a nagy teljesítménynek. Ezt elemezve verem túlcsordulás lehetővé teszi a sebesség becslését.

„Lehet, hogy ezt helytelenül valósítottam meg, mert az eredményeknek nincs értelme. Van egy Go programom, ami 1000000000-ig számol; kevesebb mint egy másodperc alatt véget ér. Másrészt van egy Python szkriptem; néhány percen belül véget ér. Miért olyan gyorsabb a Go verzió? Mindketten 1000000000 XNUMX XNUMX XNUMX-ig számolnak, vagy lemaradok valamiről? 

Ha még mindig bizonytalan a sebességet illetően, íme egy összehasonlítás a Go, Csomópont JS, Java és Python, amelyek segítenek jobban tisztázni a használatát:

Saját készülék specifikáció:

Eszköz neve- LAPTOP-Q8U9LM8P

Processzor Intel(R) Core(TM) i5-10210U CPU @ 1.60 GHz   2.10 GHz

Telepített RAM- 16.0 GB (15.6 GB használható)

Rendszer típusa- 64-bites operációs rendszer, x64 alapú processzor

N-test nyomat:

Forrás Számlálási idő 

Indulás: 6.34  másodperc

Python3: 545.25 másodperc

GO

output:

Faktoriális   Idő A faktoriális kiszámításához

10000       0.008 másodperc

50000       0.506 másodperc

100000 3.154      XNUMX másodperc

500000 82.394      XNUMX másodperc

1000000     284.445 másodperc

NodeJS (Javascript)

output:

Faktoriális   Idő A faktoriális kiszámításához

10000       0.113 másodperc

50000       1.974 másodperc

100000 22.730      XNUMX másodperc

500000 477.534      XNUMX másodperc 

1000000     1175.795 másodperc 

Piton

output:

Faktoriális   Idő A faktoriális kiszámításához

10000       0.046 másodperc

50000       1.187 másodperc

100000 6.051      XNUMX másodperc

500000 388.607      XNUMX másodperc 

1000000     813.725 másodperc 

JAVA

output:

Faktoriális   Idő A faktoriális kiszámításához

10000       0.064 másodperc

50000       1.607 másodperc

100000 5.363      XNUMX másodperc

500000     141.076 másodperc

1000000     585.868 másodperc

3. Biztonság:

Szemetes:

Go inkább kioszt memória a veremben, így a legtöbb memóriakiosztás ott fog végezni. Ez azt jelenti, hogy gorutinonként van egy verem, és amikor lehetséges, ehhez a veremhez fog változókat rendelni.

A Golang mark és sweep szemétgyűjtőnek két fázisa van: Mark és Sweep. Először is megjelöli az összes nem használt és használt változót, majd besöpör a nem használt változókat.

A statisztikák és a fenti leírás azt sugallja, hogy miért érdemes a Go-val dolgozni. A Golang keretrendszer, amely a legjobb API-k létrehozására, szintén felgyorsítja és megkönnyíti a fejlesztést.

Miért használjuk a Beego Framework-et?

Legyen szó Go vagy Beego, mindkettő fantasztikus a nagy teljesítményű REST API-k fejlesztéséhez. 

A Beego egy „elemes” keretrendszer, beépített eszközökkel (bee tool), ORM-mel és könyvtárakkal összehasonlítva más keretrendszerekkel, például a Gin-gonic-kal, amely nem „elemes” típusú, és tartalmazza a legtöbb alapvető könyvtárat és szolgáltatást, amely nem jó szerveroldali funkciók.

A Beego egy tipikus Model-View-Controller (MVC) keretrendszert használ, amely jónak bizonyult azoknak (mint mi), akik korábban a Python-Django-n dolgoztak, és a Beego meglehetősen hasonló.

Miért használjuk a Beego Framework-et?

Következtetés: 

Így indítottuk el a Golang és Beego alkalmazását. Dolgoztunk PDF-en, képkezelésen az ImageMagick segítségével, AWS-SNS-en, AWS-SES SMTP-n, IVR-hívásokon, faxon, digitális aláírásokon, jelentések generálásán ORM-mel és még sok máson. És nem találtunk semmilyen akadályt, miközben olyan harmadik féltől származó funkciókkal dolgoztunk, mint a Twilio vagy az AWS. Nagyon egyszerű kódot írni a Golangra, ahogy azt a készítőik említették. Vannak bizonyos kihívások a keretrendszer használatában, de vannak megoldások is. Nagyon élveztük, hogy ezen a kereten dolgoztunk. Sok szerencsét kívánunk a közelgő Golang-alkalmazásokhoz.

A szerzőről

Piyush Raj az IIT Kharagpur Kémiai Tanszékén végzett. Pályafutását az ML és az AI területén kezdte, jelenleg pedig a Mantra Labsnál dolgozik szoftverfejlesztőként. Szabadidejében szeret új utakat felfedezni a való világban vagy papíron az utazás és a festészet révén.

Időbélyeg:

Még több Mantra Labs