አሌክሲ ናይድኖቭ. ITooLabs በGo (Golang) የስልክ መድረክ ላይ የእድገት መያዣ። ክፍል 1

Alexey Naydenov, ዋና ሥራ አስፈፃሚ ITooLabsበ Go (Golang) የፕሮግራም አወጣጥ ቋንቋ ለቴሌኮም ኦፕሬተሮች የቴሌኮሙኒኬሽን መድረክ መዘጋጀቱን ይናገራል። በተጨማሪም አሌክሲ የመሳሪያ ስርዓቱን በድምጽ መልእክት አገልግሎት (VoiceMail) እና ቨርቹዋል ፒቢኤክስ (ክላውድ ፒቢኤክስ) ለማቅረብ በተጠቀመው ትልቁ የኤዥያ ቴሌኮም ኦፕሬተሮች ውስጥ መድረኩን በማሰማራት እና በመስራት ልምዱን ያካፍላል።

አሌክሲ ናይድኖቭ. ITooLabs በGo (Golang) የስልክ መድረክ ላይ የእድገት መያዣ። ክፍል 1

አሌክሲ ናይዴኖቭ (ከዚህ በኋላ - ኤኤን) - ሰላም ሁላችሁም! ስሜ አሌክሲ ናይዴኖቭ ነው። እኔ የ ITooLabs ዳይሬክተር ነኝ። በመጀመሪያ እኔ እዚህ ምን እየሰራሁ እንደሆነ እና እንዴት እዚህ እንደደረስኩ መልስ መስጠት እፈልጋለሁ.

የBitrix24 የገበያ ቦታን (ክፍል "ቴሌፎን") ከተመለከቱ, 14 መተግበሪያዎች እና 36 እዚያ ያሉት (40%) እኛ ነን:

አሌክሲ ናይድኖቭ. ITooLabs በGo (Golang) የስልክ መድረክ ላይ የእድገት መያዣ። ክፍል 1

በትክክል እነዚህ የኦፕሬተር አጋሮቻችን ናቸው ፣ ግን ከዚህ ሁሉ በስተጀርባ የእኛ መድረክ ነው (ፕላትፎርም እንደ አገልግሎት) - በትንሽ ሳንቲም የምንሸጣቸው። በእውነቱ፣ ስለዚህ መድረክ እድገት እና ወደ Go እንዴት እንደመጣን ማውራት እፈልጋለሁ።

የኛ መድረክ ቁጥሮች አሁን፡-

አሌክሲ ናይድኖቭ. ITooLabs በGo (Golang) የስልክ መድረክ ላይ የእድገት መያዣ። ክፍል 1

Megafon ን ጨምሮ 44 ከዋኝ አጋሮች። በአጠቃላይ በተለያዩ ጀብዱዎች ላይ መሄድ በጣም እንወዳለን፣ እና እዚህ ሩሲያ ውስጥ 100 ሚሊዮን የ 44 ኦፕሬተሮች ተመዝጋቢዎችን ማግኘት እንችላለን። ስለዚህ, ማንም ሰው የንግድ ሥራ ሃሳቦች ካለው, ሁልጊዜ እነሱን ለማዳመጥ ደስተኞች እንሆናለን.

  • 5000 የተጠቃሚ ኩባንያዎች.
  • በአጠቃላይ 20 ተመዝጋቢዎች። ይህ ሁሉ b000b ነው - የምንሰራው ከኩባንያዎች ጋር ብቻ ነው።
  • በቀን ውስጥ በደቂቃ 300 ጥሪዎች.
  • ባለፈው አመት 100 ሚሊዮን የጥሪ ደቂቃዎች (አከበርን)። ይህ በእኛ መድረክ ላይ የሚገኙትን የውስጥ ድርድር ግምት ውስጥ አያስገባም።

እንዴት ተጀመረ?

ትክክለኛዎቹ ዱዶች እንዴት መድረክቸውን መሥራት ይጀምራሉ? እንዲሁም የ "ሃርድኮር ኢንተርፕራይዝ" ልማት ታሪክ እንዳለን እና እንዲያውም በዓመቱ ውስጥ በጣም ትክክለኛ በሆነው የድርጅት ጊዜ ውስጥ እንዳለን ግምት ውስጥ ማስገባት አለብን! ወደ ደንበኛህ መጥተህ “ተጨማሪ ሁለት አገልጋዮች እንፈልጋለን” ስትል ያ አስደሳች ጊዜ ነበር። እና ደንበኛው፡- “ምንም ጥያቄ የለም! በመደርደሪያው ውስጥ አስር አለን ።

ስለዚህ Oracle፣ Java፣ WebSphere፣ Db2 እና እነዚያን ሁሉ አደረግን። ስለዚህ፣ በእርግጥ፣ ምርጡን የሻጭ መፍትሄዎችን ወስደን፣ እነሱን በማዋሃድ እና ከእሱ ጋር ለመውሰድ ሞክረናል። በራሳችን ተራመድን። ይህ እንደዚህ ያለ ውስጣዊ ጅምር ይሆናል.

ይህ ሁሉ በ2009 ዓ.ም. ከ 2006 ጀምሮ, በአንድ ወይም በሌላ መንገድ በኦፕሬተር መፍትሄዎች ውስጥ በቅርብ እንሳተፋለን. ብዙ ብጁ ቨርቹዋል ፒቢኤክስ ሠራን (ልክ አሁን እንደያዝነው)፡ ተመለከትነው፣ ጥሩ እንደሆነ ወሰንን እና የውስጥ ጅምር ለመጀመር ወሰንን።

አሌክሲ ናይድኖቭ. ITooLabs በGo (Golang) የስልክ መድረክ ላይ የእድገት መያዣ። ክፍል 1

VMWare ወስደናል. እኛ በራሳችን ስለሆንን ወዲያውኑ አሪፍ የአቅራቢ ማከማቻን መተው ነበረብን። ስለእነሱ ሁሉንም ነገር እናውቃለን: ተስፋዎች በ 3 መከፈል አለባቸው, እና ወጪው በ 10 ማባዛት አለበት. ለዚያም ነው DirDB ወዘተ.

ከዚያም ማደግ ጀመረ. የመክፈያ አገልግሎት በዚህ ላይ ታክሏል ምክንያቱም መድረኩ ከአሁን በኋላ መቋቋም አልቻለም። ከዚያ ከ MySQL ያለው የሂሳብ አከፋፈል አገልጋይ ወደ ሞንጎ ተዛወረ። በውጤቱም፣ ወደዚያ የሚሄዱትን ሁሉንም ጥሪዎች የሚያስኬድ የስራ መፍትሄ አግኝተናል፡-

አሌክሲ ናይድኖቭ. ITooLabs በGo (Golang) የስልክ መድረክ ላይ የእድገት መያዣ። ክፍል 1

ግን የሆነ ቦታ ፣ ውስጥ ፣ ያ ተመሳሳይ የአቅራቢ ምርት እየተሽከረከረ ነው - ዋናው ፣ ኒዩክለር ፣ አንድ ጊዜ የወሰድነው። እ.ኤ.አ. በ 2011 መጨረሻ አካባቢ ለእኛ ዋነኛው ማነቆ በእርግጥ ይህ ልዩ ምርት እንደሚሆን ተገነዘብን - ወደ እሱ እንሮጣለን ። ብዙ ደንበኞቻችን እየመጡ በሄዱ ቁጥር ከፊታችን ያለውን ግድግዳ አየን።
በዚህ መሠረት አንድ ነገር ማድረግ ነበረብን። እርግጥ ነው፣ በተለያዩ ምርቶች ላይ ብዙ ምርምር አድርገናል - በሁለቱም ክፍት ምንጭ እና ሻጭ። አሁን በዚህ ላይ አላተኩርም - እኛ የምንናገረው ስለዚያ አይደለም. ያሰብነው የመጨረሻው የውድቀት አማራጭ የራሳችንን መድረክ መስራት ነው።

በመጨረሻ ወደዚህ አማራጭ ደርሰናል። ለምን? ምክንያቱም ሁሉም ሻጭ እና ክፍት ምንጭ ምርቶች የተሰሩት 10 አመት እድሜ ያላቸውን ችግሮች ለመፍታት ነው። ደህና, 10 አመት ከሆነ, እና አንዳንድ ተጨማሪ! ምርጫው ለእኛ ግልፅ ሆነ-ወይ ጥሩ አገልግሎት (ለአጋሮች ፣ ኦፕሬተሮች እና እራሳችን) ታላቅ ሀሳባችንን እንሰናበታለን ወይም የራሳችን የሆነ ነገር እናደርጋለን ።

የራሳችን የሆነ ነገር ለማድረግ ወሰንን!

የመድረክ መስፈርቶች

አንድ ነገር ለረጅም ጊዜ እየሰሩ ከሆነ (የሌላ ሰው ምርትን በመጠቀም) ፣ ከዚያ ሀሳቡ በጭንቅላቱ ውስጥ በቀስታ ይመሰረታል-ይህን ራሴ እንዴት አደርጋለሁ? ሁላችንም በኩባንያው ውስጥ ፕሮግራመሮች ስለሆንን (ከሽያጭ ሰዎች በስተቀር ምንም ፕሮግራም አድራጊዎች የሉም) ፣ የእኛ ፍላጎቶች የተገነቡት ከረጅም ጊዜ በፊት ነው ፣ እና እነሱ ግልጽ ነበሩ-

  1. ከፍተኛ የእድገት ፍጥነት. ያሠቃየን የሻጭ ምርት አጥጋቢ አልነበረም በመጀመሪያ ደረጃ ሁሉም ነገር ረዥም እና ቀስ ብሎ ስለተለወጠ. በፍጥነት እንፈልጋለን - ብዙ ሀሳቦች ነበሩን! አሁንም ብዙ ሃሳቦች አሉን, ነገር ግን የሃሳቦቹ ዝርዝር ከአስር አመት በፊት እስኪመስል ድረስ ነበር. አሁን ለአንድ አመት ብቻ።
  2. የብዝሃ-ኮር ብረት ከፍተኛ አጠቃቀም. ብዙ እና ብዙ ኮርሞች ብቻ እንደሚኖሩ ስላየን ይህ ለእኛም አስፈላጊ ነበር።
  3. ከፍተኛ አስተማማኝነት. እኛም ያለቀስነው ነገር።
  4. ውድቀቶች ከፍተኛ መቋቋም.
  5. በየቀኑ የሚለቀቁትን ሂደት ማጠናቀቅ እንፈልጋለን። ለዚህም የቋንቋ ምርጫ ያስፈልገናል።

አሌክሲ ናይድኖቭ. ITooLabs በGo (Golang) የስልክ መድረክ ላይ የእድገት መያዣ። ክፍል 1

በዚህ መሠረት ለራሳችን ካስቀመጥነው ምርት መስፈርቶች, የቋንቋ መስፈርቶች በግልጽ ምክንያታዊ በሆነ መንገድ ያድጋሉ.

  1. ለብዙ-ኮር ስርዓቶች ድጋፍ ከፈለግን ለትይዩ ማስፈጸሚያ ድጋፍ እንፈልጋለን።
  2. የእድገት ፍጥነት ካስፈለገን የውድድር እድገትን የሚደግፍ ቋንቋ እንፈልጋለን። ማንም ሰው ልዩነቱን ካላጋጠመው, በጣም ቀላል ነው.
    • ትይዩ ፕሮግራሚንግ በተለያዩ ኮርሞች ላይ ሁለት የተለያዩ ክሮች እንዴት እንደሚፈጸሙ ነው;
    • በተመሳሳይ ጊዜ መፈጸም፣ ወይም በትክክል፣ የተመጣጠነ ድጋፍ፣ ቋንቋ (ወይም የሩጫ ጊዜ፣ ምንም አይደለም) በትይዩ አፈጻጸም የሚመጡትን ውስብስብ ነገሮች ለመደበቅ የሚረዳው እንዴት እንደሆነ ነው።
  3. ከፍተኛ መረጋጋት. በግልጽ ለማየት እንደሚቻለው፣ ዘለላ ያስፈልገናል፣ እና በአቅራቢው ምርት ላይ ከነበረን የተሻለ።

አሌክሲ ናይድኖቭ. ITooLabs በGo (Golang) የስልክ መድረክ ላይ የእድገት መያዣ። ክፍል 1

የሚያስታውሱ ከሆነ ያን ያህል ብዙ አማራጮች አልነበሩንም። በመጀመሪያ፣ ኤርላንግ - እንወደዋለን እና እናውቃለን፣ የግል፣ የግል ተወዳጅ ነበር። በሁለተኛ ደረጃ, ጃቫ እንኳን ጃቫ አይደለም, ነገር ግን በተለይ Scala. በሦስተኛ ደረጃ፣ በዚያን ጊዜ ፈጽሞ የማናውቀው ቋንቋ - ሂድ። በዚያን ጊዜ ታይቷል ወይም ይልቁንስ ለሁለት ዓመታት ያህል ቆይቷል ፣ ግን ገና አልተለቀቀም ።

አሸንፉ!

የ Go ታሪክ

በላዩ ላይ መድረክ አደረግን. ምክንያቱን ለማስረዳት እሞክራለሁ።

የጉዞ አጭር ታሪክ። እ.ኤ.አ. በ 2007 ተጀምሯል ፣ በ 2009 ተከፈተ ፣ የመጀመሪያው እትም በ 2012 ተለቀቀ (ይህም ከመጀመሪያው መለቀቅ በፊት እንኳን መሥራት ጀመርን)። አስጀማሪው ጎግል ነበር፣ እንደጠረጠርኩት ጃቫን መተካት የፈለገው።

ደራሲዎቹ በጣም ታዋቂዎች ናቸው-

  • ከዩኒክስ ጀርባ የነበረው ኬን ቶምሰን UTF-8ን ፈለሰፈ በፕላን 9 ስርዓት ላይ ሰርቷል;
  • UTF-8ን ከኬን ጋር የፈጠረው ሮብ ፓይክ በተጨማሪም በፕላን 9, Inferno, Limbo at Bell Labs;
  • እኛ የምናውቀው እና የምንወደው ሮበርት ጂስመር የጃቫ ሆትስፖት አቀናባሪን በመፈልሰፍ እና በጄኔሬተር ላይ በ V8 (የጉግል ጃቫስክሪፕት አስተርጓሚ) ላይ ለሰራው ሾል;
  • እና ከ 700 በላይ አስተዋፅዖ አበርካቾች፣ አንዳንድ የእኛን ጥገናዎች ጨምሮ።

አሌክሲ ናይድኖቭ. ITooLabs በGo (Golang) የስልክ መድረክ ላይ የእድገት መያዣ። ክፍል 1

ሂድ፡ መጀመሪያ ተመልከት

ቋንቋው ይብዛም ይነስም ቀላል እና ለመረዳት የሚቻል መሆኑን እናያለን። ግልጽ የሆኑ ዓይነቶች አሉን: በአንዳንድ ሁኔታዎች መገለጽ ያስፈልጋቸዋል, በሌሎች ውስጥ አስፈላጊ አይደሉም (ይህ ማለት አይነቶቹ በአንድ ወይም በሌላ መንገድ ይገመታል ማለት ነው).

አሌክሲ ናይድኖቭ. ITooLabs በGo (Golang) የስልክ መድረክ ላይ የእድገት መያዣ። ክፍል 1

አወቃቀሮችን ለመግለጽ ፋሽን መሆኑን ማየት ይቻላል. የጠቋሚ ጽንሰ-ሐሳብ እንዳለን ማየት ይቻላል (ኮከቢቱ ባለበት). የድርድር እና የአስተሳሰብ ድርድሮች አጀማመርን ለማወጅ ልዩ ድጋፍ መኖሩን ማየት ይቻላል.

ከሞላ ጎደል ግልጽ ነው - መኖር ትችላለህ። ሄሎ አለም፡ ለመፃፍ እንሞክር፡-

አሌክሲ ናይድኖቭ. ITooLabs በGo (Golang) የስልክ መድረክ ላይ የእድገት መያዣ። ክፍል 1

ስለምንታይ? ይህ ሲ-እንደ አገባብ ነው፣ ሴሚኮሎን አማራጭ ነው። ለሁለት መስመሮች መለያየት ሊሆን ይችላል, ነገር ግን እነዚህ በአንድ መስመር ላይ ያሉ ሁለት ግንባታዎች ከሆኑ ብቻ ነው.

በቁጥጥር መዋቅሮች ውስጥ ቅንፎች (በ 14 ኛው መስመር) እንደ አማራጭ ሲሆኑ እናያለን, ነገር ግን የተጠማዘዙ ማሰሪያዎች ሁልጊዜ ይፈለጋሉ. ትየባው የማይለዋወጥ መሆኑን እናያለን። ቲም ብዙ ጊዜ ይወሰዳል. ይህ ምሳሌ ከተለመደው ሄሎ, ዓለም ትንሽ የበለጠ የተወሳሰበ ነው - ቤተ-መጽሐፍት መኖሩን ለማሳየት ብቻ ነው.

አስፈላጊ የሆነውን ሌላ ምን እናያለን? ኮዱ በጥቅሎች የተደራጀ ነው። እና ጥቅልን በራስዎ ኮድ ለመጠቀም የማስመጣት መመሪያን በመጠቀም ማስመጣት ያስፈልግዎታል - ይህ እንዲሁ አስፈላጊ ነው። እናስጀምረዋለን - ይሰራል። በጣም ጥሩ!

ቀጥሎ የበለጠ የተወሳሰበ ነገር እንሞክር፡ ሰላም ዓለም፣ አሁን ግን የ http አገልጋይ ነው። እዚህ ምን አስደሳች እናያለን?

አሌክሲ ናይድኖቭ. ITooLabs በGo (Golang) የስልክ መድረክ ላይ የእድገት መያዣ። ክፍል 1

በመጀመሪያ ደረጃ, ተግባሩ እንደ መለኪያ ይሠራል. ይህ ማለት የእኛ ተግባር "የመጀመሪያ ደረጃ ዜጋ" ነው እና በተግባራዊ ዘይቤ ውስጥ ብዙ አስደሳች ነገሮችን ማድረግ ይችላሉ. በመቀጠል አንድ ያልተጠበቀ ነገር እናያለን፡ የማስመጣት መመሪያው በቀጥታ ከ GitHub ማከማቻ ጋር ይገናኛል። ልክ ነው, እንደዚያ ነው - በተጨማሪም, እንደዚያ መደረግ አለበት.

በGo ውስጥ የአንድ ጥቅል ሁለንተናዊ ለዪው የማከማቻው ዩአርኤል ነው። ሁሉንም ጥገኞች የሚያመጣ፣ የሚያወርድ፣ የሚጭን፣ የሚያጠናቅቅ እና አስፈላጊ ከሆነ ጥቅም ላይ የሚውል ልዩ የ Goget መገልገያ አለ። በተመሳሳይ ጊዜ, Goget ስለ html-meta ያውቃል. በዚህ መሰረት፣ ወደ እርስዎ ልዩ ማከማቻ (ለምሳሌ እኛ እንደምናደርገው) የሚወስዱትን አገናኞች የያዘ የ http ማውጫ ማቆየት ይችላሉ።

ሌላ ምን እናያለን? ኤችቲቲፒ እና ጄሰን በመደበኛ ቤተ-መጽሐፍት ውስጥ። ግልጽ የሆነ ውስጣዊ እይታ አለ - ነጸብራቅ፣ እሱም ኢንኮዲንግ/json ውስጥ ጥቅም ላይ መዋል ያለበት፣ ምክንያቱም ዝም ብለን አንዳንድ የዘፈቀደ ነገርን እንተካለን።

እኛ እናስኬደዋለን እና በ 20 መስመሮች ውስጥ ጠቃሚ ኮድ እንዳለን እናያለን, ይህም የማሽኑን ወቅታዊ አማካይ ጭነት ያጠናቅራል, ይሠራል እና ሪፖርት ያደርጋል (በተነሳበት ማሽን ላይ).
ወዲያውኑ እዚህ ማየት የምንችለው ሌላ ምን አስፈላጊ ነገር አለ? ወደ አንድ የማይንቀሳቀስ ሁለትዮሽ (buinary) ተሰብስቧል። ይህ ሁለትዮሽ ምንም አይነት ጥገኝነት የለውም, ቤተ-መጽሐፍት የለውም! ወደ ማንኛውም ስርዓት መቅዳት ይችላሉ, ወዲያውኑ ያሂዱት, እና ይሰራል.

እንቀጥል።

ሂድ: ዘዴዎች እና በይነገጾች

ሂድ ዘዴዎች አሉት። ለማንኛውም ብጁ አይነት ዘዴን ማወጅ ይችላሉ. ከዚህም በላይ, ይህ የግድ መዋቅር አይደለም, ነገር ግን ምናልባት የአንዳንድ ዓይነት ተለዋጭ ስም ሊሆን ይችላል. ለ N32 ተለዋጭ ስም ማወጅ እና ማንኛውንም ጠቃሚ ነገር እንዲያደርግ ዘዴዎችን መጻፍ ይችላሉ።

እና እዚህ ለመጀመሪያ ጊዜ ድንዛዜ ውስጥ ወድቀናል... Go እንደዚህ አይነት ክፍሎች የሉትም። Goን የሚያውቁ ሰዎች ማካተት አይነት አለ ሊሉ ይችላሉ፣ ግን ያ ሙሉ በሙሉ ሌላ ነገር ነው። ቶሎ ገንቢው እንደ ውርስ ማሰብ ሲያቆም የተሻለ ይሆናል። በ Go ውስጥ ምንም ክፍሎች የሉም፣ እና ውርስም የለም።

ጥያቄ! የአለምን ውስብስብነት ለማንፀባረቅ በጎግል የሚመራው የደራሲዎች ኩባንያ ምን ሰጠን? በይነገጾች ሰጡን!

አሌክሲ ናይድኖቭ. ITooLabs በGo (Golang) የስልክ መድረክ ላይ የእድገት መያዣ። ክፍል 1

በይነገጽ በቀላሉ ዘዴዎችን, የስልት ፊርማዎችን ለመጻፍ የሚያስችል ልዩ ዓይነት ነው. በተጨማሪም ፣ እነዚህ ዘዴዎች ያሉበት ማንኛውም ዓይነት (የተፈፀመ) ከዚህ በይነገጽ ጋር ይዛመዳል። ይህ ማለት ለአንድ አይነት, ለሌላው (ከዚያ የበይነገጽ አይነት ጋር የሚዛመድ) ተጓዳኝ ተግባርን በቀላሉ መግለጽ ይችላሉ. በመቀጠል የዚህን በይነገጽ አይነት ተለዋዋጭ ያውጁ እና ከእነዚህ ነገሮች ውስጥ ማንኛውንም ይመድቡ።

ለሃርድኮር አድናቂዎች ፣ ይህ ተለዋዋጭ በእውነቱ ሁለት ጠቋሚዎች ይኖሩታል ማለት እችላለሁ-አንዱ ወደ ውሂቡ ፣ ሌላኛው ወደ ልዩ ገላጭ ሠንጠረዥ ፣ ለዚህ ​​ዓይነቱ በይነገጽ የተለመደ ነው። ያም ማለት, በማገናኘት ጊዜ አቀናባሪው እንደዚህ አይነት ገላጭ ሠንጠረዦችን ይፈጥራል.

እና በ Go ውስጥ፣ በእርግጥ፣ ባዶ ለማድረግ ጠቋሚዎች አሉ። በይነገጽ {} (በሁለት ጥምዝ ቅንፎች) የሚለው ቃል በመርህ ደረጃ ወደ ማንኛውም ነገር እንዲጠቁሙ የሚያስችል ተለዋዋጭ ነው።
እስካሁን ድረስ ሁሉም ነገር ጥሩ ነው, ሁሉም ነገር የተለመደ ነው. ምንም አያስደንቅም.

ሂድ፡ ጓሮቲኖች

አሁን ወደ ምን ፍላጎት ደርሰናል፡ ቀላል ክብደት ያላቸው ሂደቶች - ጎሮቲንስ (ጎሮቲንስ) በ Go terminology።

አሌክሲ ናይድኖቭ. ITooLabs በGo (Golang) የስልክ መድረክ ላይ የእድገት መያዣ። ክፍል 1

  1. በመጀመሪያ ፣ እነሱ በእውነት ቀላል ናቸው (ከ 2 ኪባ በታች)።
  2. በሁለተኛ ደረጃ, እንዲህ ዓይነቱን ጎሮቲን የመፍጠር ወጪዎች ቸልተኛ ናቸው-በሴኮንድ አንድ ሺህ የሚሆኑትን መፍጠር ይችላሉ - ምንም አይሆንም.
  3. እነሱ የሚያገለግሉት በራሳቸው መርሐግብር ነው, ይህም በቀላሉ ቁጥጥርን ከአንድ ጓሮቲን ወደ ሌላ ያስተላልፋል.
  4. በዚህ ሁኔታ, ቁጥጥር በሚከተሉት ሁኔታዎች ውስጥ ይተላለፋል.
    • የጉዞው አገላለጽ ካጋጠመው (ጎሮውቲን የሚቀጥለውን ጎሮይድ ከጀመረ);
    • የግቤት/ውጪ ጥሪ ማገድ ከነቃ፤
    • ቆሻሻ መሰብሰብ ከጀመረ;
    • አንዳንድ ክዋኔ ከሰርጦች ጋር ከተጀመረ።

ያም ማለት በኮምፒዩተር ላይ የ Go ፕሮግራም በሚሰራበት ጊዜ በሲስተሙ ውስጥ ያሉትን የኮርሶች ብዛት ይወስናል ፣ እንደ አስፈላጊነቱ ብዙ ክሮች ያስነሳል (በሲስተሙ ውስጥ ስንት ኮሮች አሉ ወይም ስንት እንደነገሩት)። በዚህ መሠረት መርሐግብር አውጪው እነዚህን ቀላል ክብደት ያላቸውን የማስፈጸሚያ ክሮች በእያንዳንዱ ኮር ውስጥ ባሉት በሁሉም የስርዓተ ክወና ክሮች ላይ ያካሂዳል።

ይህ ብረትን ለመጠቀም በጣም ውጤታማው መንገድ መሆኑን ልብ ሊባል ይገባል. ከሚታየው በተጨማሪ, ብዙ ተጨማሪ እናደርጋለን. ለምሳሌ አንድ ክፍል 40 ጊጋቢትን እንዲያገለግል የሚፈቅዱ የዲፒአይ ስርዓቶችን እንሰራለን (በእነዚህ መስመሮች ውስጥ ምን እንደሚፈጠር ይወሰናል).

እዚያ ፣ ከመሄድ በፊት እንኳን ፣ በትክክል ተመሳሳይ መርሃግብሩን በትክክል የተጠቀምንበት ለዚህ ምክንያት ነው-ምክንያቱም የአቀነባባሪውን መሸጎጫ አከባቢን ለመጠበቅ እና የስርዓተ ክወና አውድ መቀየሪያዎችን ቁጥር በእጅጉ ለመቀነስ ስለሚያስችል (ይህም ብዙ ጊዜ ይወስዳል)። እደግመዋለሁ: ይህ ብረትን ለመጠቀም በጣም ውጤታማው መንገድ ነው.

ይህ ቀላል የ21 መስመር ምሳሌ በቀላሉ ኢኮ ሰርቨር የሚያደርግ ምሳሌ ነው። እባክዎን የአገልጋዩ ተግባር እጅግ በጣም ቀላል ነው ፣ መስመራዊ ነው። ምንም ጥሪዎች የሉም, መጨነቅ እና ማሰብ አያስፈልግም ... ማንበብ እና መጻፍ ብቻ ነው!

በተመሳሳይ ጊዜ ፣ ​​ካነበቡ እና ከፃፉ ፣ እሱ በትክክል ማገድ አለበት - ይህ ጓሮቲን በቀላሉ ወረፋ ውስጥ ያስገባ እና አፈፃፀም እንደገና በሚቻልበት ጊዜ በጊዜ ሰሌዳው ይወሰዳል። ማለትም፣ ይህ ቀላል ኮድ በዚያ ማሽን ላይ ያለው ስርዓተ ክወና በሚፈቅደው መጠን ለብዙ ግንኙነቶች እንደ echo አገልጋይ ሆኖ ሊያገለግል ይችላል።

በቅርቡም ይቀጥላል...

አንዳንድ ማስታወቂያዎች 🙂

ከእኛ ጋር ስለቆዩ እናመሰግናለን። ጽሑፎቻችንን ይወዳሉ? የበለጠ አስደሳች ይዘት ማየት ይፈልጋሉ? ትእዛዝ በማዘዝ ወይም ለጓደኞች በመምከር ይደግፉን፣ ደመና ቪፒኤስ ለገንቢዎች ከ$4.99, በእኛ ለእርስዎ የተፈለሰፈው ልዩ የመግቢያ ደረጃ አገልጋዮች አናሎግ፡- ስለ VPS (KVM) ሙሉ እውነት E5-2697 v3 (6 Cores) 10GB DDR4 480GB SSD 1Gbps ከ$19 ወይንስ እንዴት አገልጋይ መጋራት ይቻላል? (በRAID1 እና RAID10፣ እስከ 24 ኮሮች እና እስከ 40GB DDR4 ድረስ ይገኛል።

በአምስተርዳም ውስጥ በ Equinix Tier IV የመረጃ ማዕከል ውስጥ Dell R730xd 2x ርካሽ? እዚህ ብቻ 2 x Intel TetraDeca-Core Xeon 2x E5-2697v3 2.6GHz 14C 64GB DDR4 4x960GB SSD 1Gbps 100 TV ከ$199 በኔዘርላንድስ! Dell R420 - 2x E5-2430 2.2Ghz 6C 128GB DDR3 2x960GB SSD 1Gbps 100TB - ከ$99! ስለ አንብብ የመሠረተ ልማት ኮርፖሬሽን እንዴት እንደሚገነባ ክፍል ጋር Dell R730xd E5-2650 v4 አገልጋዮች ዋጋ 9000 አንድ ሳንቲም ዩሮ?

ምንጭ: hab.com

አስተያየት ያክሉ