Hoʻokuʻu ʻia o ke kāʻei no ka hana ʻana i nā noi pūnaewele ErgoFramework 2.2

ʻO ka hoʻokuʻu hou ʻana o ErgoFramework 2.2 i hana ʻia, e hoʻokō ana i ka waihona pūnaewele Erlang piha a me kāna waihona OTP ma ka ʻōlelo Go. Hāʻawi ka framework i ka mea hoʻomohala me nā mea hana maʻalahi mai ka honua o Erlang no ka hoʻokumu ʻana i nā hāʻina i hāʻawi ʻia ma ka ʻōlelo Go me ka hoʻohana ʻana i nā kumu hoʻolālā kumu nui i mākaukau ʻia gen.Application, gen.Supervisor a me gen.Server, a me nā mea kūikawā - gen. ʻO ke kahua (pub/sub i hāʻawi ʻia), gen. Saga (nā kālepa i hāʻawi ʻia, kahi hoʻokō o ke ʻano hoʻolālā SAGA) a me gen.Raft (kahi hoʻokō o ka protocol Raft).

Eia kekahi, hāʻawi ka framework i ka hana proxy me ka hoʻopili ʻana i ka hopena, ʻaʻole i loaʻa ma Erlang / OTP a me Elixir. No ka loaʻa ʻole o ka ʻōlelo Go i kahi analogue pololei o ke kaʻina hana Erlang, hoʻohana ka framework i nā goroutine i kumu no ka gen.Server me kahi wīwī "recover" e mālama i nā kūlana ʻokoʻa. Hāʻawi ʻia ke code papahana ma lalo o ka laikini MIT.

Hoʻokō piha ka waihona pūnaewele ma ErgoFramework i ka kikoʻī DIST o ka protocol Erlang. ʻO ia ke ʻano o nā noi i kākau ʻia ma ke kumu o ErgoFramework e hana maoli me nā noi i kākau ʻia ma ka Erlang a i ʻole Elixir programming language (kahi hiʻohiʻona o ka launa pū ʻana me kahi node Erlang). He mea kūpono hoʻi e hoʻomaopopo ʻia ua hoʻokō ʻia ke ʻano hoʻolālā gen.Stage e like me ka Elixir GenStage kikoʻī a paʻa loa me ia (implementation example).

I ka hoʻokuʻu hou:

  • Hoʻohui ʻia nā mamana hou
    • ʻO gen.Web kahi kumu hoʻolālā API Web (ʻike pū ʻia ʻo Backend For Frontend). Laʻana.
    • ʻO gen.TCP kahi laʻana e hiki ai iā ʻoe ke hoʻokō i kahi wai o nā mea hoʻohui pili TCP me ka liʻiliʻi o ka hoʻoikaika ʻana i ke kākau ʻana i nā code. Laʻana.
    • gen.UDP - like me ka gen.TCP template, no ka protocol UDP wale nō. Laʻana.
  • Ua manaʻo ʻia kahi hanana hanana hou me ka hoʻokō ʻana i kahi kaʻa kaʻa hanana maʻalahi i loko o kahi node, e hiki ai iā ʻoe ke hana i nā hana no ka hoʻololi ʻana i nā hanana (pub/sub) ma waena o nā kaʻina kūloko. Laʻana.
  • Kākoʻo hoʻohui ʻia no ka hoʻopaʻa inoa ʻano, kahi e ʻae ai i ka serialization / deserialization o nā memo i loko o kahi ʻano ʻikepili Golang maoli. ʻAʻole pono ʻoe e hoʻohana hou i ka etf.TermIntoStruct no kēlā me kēia memo i loaʻa. E hoʻololi ʻia nā ʻano i hoʻopaʻa ʻia i ke ʻano i ʻōlelo ʻia, kahi e wikiwiki ai ka hana o ka hoʻololi ʻana i nā memo ma waena o nā nodes i puʻunaue ʻia.

Source: opennet.ru

Pākuʻi i ka manaʻo hoʻopuka