Utjefte fan it ramt foar it meitsjen fan netwurkapplikaasjes ErgoFramework 2.2

De folgjende release fan ErgoFramework 2.2 fûn plak, ymplemintaasje fan de folsleine Erlang netwurkstapel en syn OTP-bibleteek yn 'e Go-taal. It ramt foarsjocht de ûntwikkelder mei fleksibele ark út 'e wrâld fan Erlang foar it meitsjen fan ferspraat oplossingen yn de Go taal mei help fan klear makke algemiene doel design patroanen gen.Application, gen.Supervisor en gen.Server, likegoed as spesjalisearre ones - gen. Stage (ferdield pub / sub), gen.

Derneist biedt it ramt proxy-funksjonaliteit mei end-to-end fersifering, dy't net beskikber is yn Erlang / OTP en Elixir. Sûnt de Go-taal hat gjin direkte analoog fan it Erlang-proses, brûkt it ramt goroutines as basis foar gen.Server mei in "recover" wrapper om útsûnderingssituaasjes te behanneljen. De projektkoade wurdt ferspraat ûnder de MIT-lisinsje.

De netwurkstapel yn ErgoFramework ymplementearret de DIST-spesifikaasje fan it Erlang-protokol folslein. Dit betsjut dat applikaasjes skreaun op basis fan ErgoFramework natuerlik wurkje mei alle applikaasjes skreaun yn 'e Erlang- of Elixir-programmearringstalen (in foarbyld fan ynteraksje mei in Erlang-knooppunt). It is ek de muoite wurdich op te merken dat it gen.Stage-ûntwerppatroan wurdt útfierd neffens de Elixir GenStage-spesifikaasje en is folslein kompatibel mei it (ymplemintaasjefoarbyld).

Yn de nije release:

  • Nije sjabloanen tafoege
    • gen.Web is in web API Gateway (ek bekend as Backend For Frontend) ûntwerppatroan. Foarbyld.
    • gen.TCP is in sjabloan wêrmei jo te fieren in pool fan TCP ferbining acceptors mei minimale ynspannings yn skriuwen koade. Foarbyld.
    • gen.UDP - fergelykber mei de gen.TCP-sjabloan, allinich foar it UDP-protokol. Foarbyld.
  • In nije Events-funksjonaliteit is foarsteld mei de ymplemintaasje fan in ienfâldige barrenbus binnen in knooppunt, wêrtroch jo meganismen kinne meitsje foar it útwikseljen fan eveneminten (pub / sub) tusken lokale prosessen. Foarbyld.
  • Stipe tafoege foar typeregistraasje, wêrtroch automatyske serialisaasje / deserialisaasje fan berjochten yn in memmetaal Golang-gegevenstype mooglik is. Dit betsjut dat jo etf.TermIntoStruct net langer hoege te brûken foar elk ûntfongen berjocht. Registrearre typen sille automatysk wurde omfoarme ta it opjûne type, wat de prestaasjes fan berjochtútwikseling tusken ferdielde knopen signifikant fersnelt.

Boarne: opennet.ru

Add a comment