የኔትወርክ አፕሊኬሽኖችን ለመፍጠር ማዕቀፉን መልቀቅ ErgoFramework 2.2

ቀጣዩ የErgoFramework 2.2 ልቀት ተካሄዷል፣ ሙሉውን የኤርላንግ ኔትወርክ ቁልል እና የኦቲፒ ቤተ-መጽሐፍትን በጎ ቋንቋ በመተግበር ነው። ማዕቀፉ ዝግጁ የሆኑ አጠቃላይ ዓላማ ያላቸውን የንድፍ ንድፎችን gen.Application, gen.Supervisor እና gen.Serverን በመጠቀም በ Go ቋንቋ ውስጥ የተከፋፈሉ መፍትሄዎችን ለመፍጠር ለገንቢው ከኤርላንግ አለም ተለዋዋጭ መሳሪያዎችን ያቀርባል, እንዲሁም ልዩ የሆኑትን - ዘፍ. ደረጃ (የተከፋፈለ መጠጥ ቤት/ንዑስ ክፍል)፣ ጄኔራል ሳጋ (የተከፋፈሉ ግብይቶች፣ የ SAGA ንድፍ ንድፍ አተገባበር) እና gen.Raft (የራፍት ፕሮቶኮል ትግበራ)።

በተጨማሪም፣ ማዕቀፉ በኤርላንግ/ኦቲፒ እና በኤሊክስር የማይገኝ ከጫፍ እስከ ጫፍ ምስጠራ ያለው የተኪ ተግባርን ይሰጣል። የ Go ቋንቋ የኤርላንግ ሂደት ቀጥተኛ አናሎግ ስለሌለው ማዕቀፉ ለየት ያሉ ሁኔታዎችን ለማስተናገድ “ማገገሚያ” መጠቅለያ ያለው ለጄን.ሰርቨር እንደ መሰረት አድርጎ goroutines ይጠቀማል። የፕሮጀክት ኮድ በ MIT ፈቃድ ስር ተሰራጭቷል።

በ ErgoFramework ውስጥ ያለው የአውታረ መረብ ቁልል የኤርላንግ ፕሮቶኮል የ DIST ዝርዝር መግለጫን ሙሉ በሙሉ ተግባራዊ ያደርጋል። ይህ ማለት በ ErgoFramework ላይ የተፃፉ መተግበሪያዎች በ Erlang ወይም Elixir ፕሮግራሚንግ ቋንቋዎች (ከኤርላንግ ኖድ ጋር የመስተጋብር ምሳሌ) ከተፃፉ ማንኛቸውም መተግበሪያዎች ጋር በአገርኛ ይሰራሉ። የ gen.Stage ንድፍ ንድፍ በ Elixir GenStage ዝርዝር መሰረት መተግበሩን እና ከእሱ ጋር ሙሉ ለሙሉ የሚስማማ መሆኑን ልብ ሊባል የሚገባው ነው (የአተገባበር ምሳሌ).

በአዲሱ እትም፡-

  • አዲስ አብነቶች ታክለዋል።
    • gen.Web የድር ኤፒአይ ጌትዌይ (Backend For Frontend በመባልም ይታወቃል) ንድፍ ንድፍ ነው። ለምሳሌ.
    • gen.TCP በጽሑፍ ኮድ ውስጥ በትንሹ ጥረት TCP ግንኙነት receivers ገንዳ ተግባራዊ ለማድረግ የሚያስችል አብነት ነው. ለምሳሌ.
    • gen.UDP - ከ gen.TCP አብነት ጋር ተመሳሳይ ነው፣ ለ UDP ፕሮቶኮል ብቻ። ለምሳሌ.
  • በአከባቢ ሂደቶች መካከል ክስተቶችን ለመለዋወጥ ዘዴዎችን ለመፍጠር የሚያስችል ቀላል የዝግጅት አውቶቡስ በመስቀለኛ መንገድ ውስጥ አዲስ የክስተት ተግባር ቀርቧል። ለምሳሌ.
  • ለአይነት ምዝገባ ድጋፍ ታክሏል፣ ይህም መልእክቶችን በራስ ሰር ተከታታይ ማድረግ/ወደ ጎላንግ የውሂብ አይነት መሰረዝ ያስችላል። ይህ ማለት ከአሁን በኋላ ለእያንዳንዱ መልእክት etf.TermIntoStruct መጠቀም አያስፈልግዎትም ማለት ነው። የተመዘገቡ ዓይነቶች በራስ-ሰር ወደተገለጸው ዓይነት ይለወጣሉ፣ ይህም በተከፋፈሉ አንጓዎች መካከል የመልእክት ልውውጥን በከፍተኛ ሁኔታ ያፋጥናል።

ምንጭ: opennet.ru

አስተያየት ያክሉ