Open Finance: Reality or Hype? PlatoBlockchain Data Intelligence. Vertikalt søk. Ai.

Åpen finans: virkelighet eller hype?

Det er vanligvis noen bekymringer når vi implementerer en ny teknologi, for eksempel hva som vil skje hvis vi blir sittende fast et sted og ender opp med å kaste bort tid og krefter. Det er mulig vi må gå tilbake til den opprinnelige løsningen. Vi møtte lignende problemer for et år siden, men etter lang og grundig forskning fant vi en løsning som var sikrere og tryggere.Golang og dens rammer. Måten det er dokumentert på er veldig nyttig. Vi var imidlertid ganske sikre på at vi ikke ville finne alle svarene på nettet, noe som var en utfordring vi takket ja til ånden til Lailah Gifty Akita's kjent ordtak, "DET FINNES ALLTID EN LØSNING PÅ HVER UTFORDRENDE SITUASJON."

Denne bloggen snakker hovedsakelig om Golang-Beego-rammeverket og dets applikasjoner. Vi skal diskutere hvordan Golang brukes i webutvikling og hvorfor de fleste utviklerne skifter fra Python, Node eller andre språk til Go.

La oss forstå Golang-rammeverket for å vite hvordan det fungerer.

Hva er Golang?

Først dukket opp i 2009, Golang (populært kjent som Go) ble raskt populær blant utviklere, og ble et foretrukket språk for mer enn 90 % av brukerne. Forfedrespråkene er programmeringsspråkene C og C++, noe som er ganske tydelig ved å se på syntaksen og kompileringsfunksjonene. 

Primært brukt for backend-utvikling, Go har 4 andre bruksområder- 

  1. Sky- og nettverkstjenester
  2. Kommandolinjegrensesnitt (CLI) 
  3. Webutvikling
  4. Development Operations & Site Reliability Engineering. 

Her er noen av hovedtrekkene til Golang som gjør dette rammeverket til det foretrukne valget for utviklere:

1. Enkelhet 

Go-syntaksen er grei som vist her og dens kompilatoren kan lukte trøbbel og oppstå feil under byggeprosessen - det vil si før programmet kjøres.

Fleksibiliteten, brukervennligheten og det utrolig kule konseptet bak Go (hvordan den håndterer naturlig samtidighet, søppelinnsamling og sikkerhet+hastighet) er noen av funksjonene som er ganske nyttige for utviklere.

2. Speed

Innebygd samtidighet ( Goroutines and Channels ) er en av hovedårsakene til dens høye ytelse. Analyserer dette stabeloverløp vil tillate oss å estimere hastigheten.

"Jeg kan ha implementert dette feil fordi resultatene ikke gir mening. Jeg har et Go-program som teller til 1000000000; den er ferdig på mindre enn et sekund. På den annen side har jeg et Python-skript; den er ferdig på noen få minutter. Hvorfor er Go-versjonen så mye raskere? Teller de begge opp til 1000000000, eller mangler jeg noe?" 

Hvis du fortsatt er usikker på hastigheten, her er en sammenligning mellom Go, Knutepunkt JS, Java og Python som vil hjelpe til med å få mer klarhet om bruken:

Min enhetsspesifikasjon:

Enhetsnavn- BÆRBARE PC-Q8U9LM8P

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

Installert RAM- 16.0 GB (15.6 GB kan brukes)

System type- 64-bit operativsystem, x64-basert prosessor

N-kroppstrykk:

Kilde Tid å telle 

Gå: 6.34 sekunder

Python3: 545.25 sekunder

GO

Utgang:

Fakultet   Tid For å beregne faktorial

10000 0.008 sekunder

50000 0.506 sekunder

100000 3.154 XNUMX sekunder

500000 82.394 XNUMX sekunder

1000000 284.445 sekunder

NodeJS (Javascript)

Utgang:

Faktoriell tid For å beregne faktoriell

10000 0.113 sekunder

50000 1.974 sekunder

100000 22.730 XNUMX sekunder

500000 477.534 XNUMX sekunder 

1000000 1175.795 sekunder 

Python

Utgang:

Faktoriell tid For å beregne faktoriell

10000 0.046 sekunder

50000 1.187 sekunder

100000 6.051 XNUMX sekunder

500000 388.607 XNUMX sekunder 

1000000 813.725 sekunder 

JAVA

Utgang:

Faktoriell tid For å beregne faktoriell

10000 0.064 sekunder

50000 1.607 sekunder

100000 5.363 XNUMX sekunder

500000 141.076 sekunder

1000000 585.868 sekunder

3. Sikkerhet:

Søppelmann:

Gå foretrekker å tildele minne på stabelen, så de fleste minnetildelinger vil havne der. Dette betyr at den har en stack per goroutine og når det er mulig vil den tildele variabler til denne stabelen.

Golang merke og feie søppelsamler har to faser: Mark og Sweep. Først vil den merke alle ubrukte og brukte variabler, og deretter sveipe ubrukte.

Statistikken og beskrivelsen ovenfor antyder hvorfor man bør jobbe med Go. Golang-rammeverk som er best for å lage APIer akselererer og letter også utviklingen.

Hvorfor bruker vi Beego Framework?

Det være seg Go eller Beego, begge er fantastiske for å utvikle REST APIer med høy ytelse. 

Beego er et "batteri inkludert" rammeverk, med innebygde verktøy ( bee tool ), ORM og biblioteker sammenlignet med andre rammeverk som Gin-gonic som ikke er en "batteri inkludert" type og inneholder de fleste viktige biblioteker og funksjoner som ikke er bra for funksjoner på serversiden.

Beego bruker et typisk Model-View-Controller (MVC) rammeverk som har vist seg å være bra for folk (som oss) som jobber med Python-Django før, og Beego er ganske lik.

Hvorfor bruker vi Beego Framework?

Konklusjon: 

Det var slik vi startet søknaden vår med Golang og Beego. Vi jobbet med PDF, bildehåndtering med ImageMagick, AWS-SNS, AWS-SES SMTP, IVR-anrop, faks, digitale signaturer, rapportgenerering med ORM og mange flere. Og vi har ikke funnet noen blokkering mens vi jobber med tredjepartsfunksjoner som Twilio eller AWS. Det er veldig enkelt å skrive kode på Golang som nevnt av skaperne deres. Det er visse utfordringer ved å bruke dette rammeverket, men det finnes også løsninger. Vi likte det å jobbe med dette rammeverket. LYKKE TIL for dine kommende Golang-applikasjoner.

om forfatteren

Piyush Raj ble uteksaminert fra IIT Kharagpur i Chemical Dept. Han startet sin karriere med ML og AI, og jobber nå ved Mantra Labs som programvareutvikler. På fritiden liker han å utforske nye veier i den virkelige verden eller på papir gjennom å reise og male.

Tidstempel:

Mer fra Mantra Labs