Sareko aplikazioak sortzeko esparrua kaleratzea ErgoFramework 2.2

ErgoFramework 2.2-ren hurrengo bertsioa egin zen, Erlang sareko pila osoa eta bere OTP liburutegia Go hizkuntzan ezarriz. Esparruak Erlang-en munduko tresna malguak eskaintzen dizkio garatzaileari Go hizkuntzan soluzio banatuak sortzeko prest egindako helburu orokorreko diseinu-ereduak erabiliz gen.Application, gen.Supervisor eta gen.Server, baita espezializatuak ere - gen. Stage (banatutako pub/sub), gen. Saga (banatutako transakzioak, SAGA diseinu-ereduaren ezarpena) eta gen.Raft (Raft protokoloaren ezarpena).

Gainera, esparruak proxy funtzionaltasuna eskaintzen du muturreko enkriptatzearekin, Erlang/OTP eta Elixir-en eskuragarri ez dagoena. Go hizkuntzak Erlang prozesuaren analogo zuzenik ez duenez, markoak goroutinak erabiltzen ditu gen.Server-en oinarri gisa "berreskuratu" bilgarri batekin salbuespen egoerak kudeatzeko. Proiektuaren kodea MIT lizentziapean banatzen da.

ErgoFramework-eko sare-pilaketak Erlang protokoloaren DIST zehaztapena guztiz inplementatzen du. Horrek esan nahi du ErgoFramework-en oinarrituta idatzitako aplikazioek natiboki lan egiten dutela Erlang edo Elixir programazio-lengoaietan idatzitako edozein aplikaziorekin (Erlang nodo batekin elkarrekintzaren adibide bat). Aipatzekoa da, halaber, gen.Stage diseinu eredua Elixir GenStage zehaztapenaren arabera inplementatzen dela eta guztiz bateragarria dela (inplementazio adibidea).

Argitalpen berrian:

  • Txantiloi berriak gehitu dira
    • gen.Web Web API Gateway (Backend For Frontend gisa ere ezaguna) diseinu eredua da. Adibidea.
    • gen.TCP TCP konexio-onartzaile multzo bat ezartzeko aukera ematen duen txantiloia da, kodea idazteko ahalegin minimoarekin. Adibidea.
    • gen.UDP - gen.TCP txantiloiaren antzekoa, UDP protokolorako soilik. Adibidea.
  • Gertaerak funtzionaltasun berri bat proposatu da nodo baten barruan gertaera-bus soil bat ezartzearekin, eta horri esker, tokiko prozesuen artean gertaerak (pub/sub) trukatzeko mekanismoak sortzea ahalbidetzen da. Adibidea.
  • Mota erregistratzeko euskarria gehitu da, mezuak automatikoki serializatu/deserializatzeko aukera ematen duena Golang datu-mota jatorrizko batean. Horrek esan nahi du jada ez duzula etf.TermIntoStruct erabili behar jasotako mezu guztietan. Erregistratutako motak automatikoki zehaztutako motara eraldatuko dira, eta horrek nabarmen bizkortzen du banatutako nodoen arteko mezu-trukearen errendimendua.

Iturria: opennet.ru

Gehitu iruzkin berria