Sobes.tech

Golang

Իմացեք ձեր վերջին նախագծի մասին. Ինչ էր բիզնեսի նպատակը և ինչու էր դա անհրաժեշտ?

Middle+
Лига Цифровой ЭкономикиЛига Цифровой Экономики
36

Քանի բաժին պետք է ունենա Kafka թեման?

Senior
А7
36

Կարո՞ղ է սխալների մշակումը ստանդարտացվի։

Senior
I-teco
36

/* Մեզ անհրաժեշտ է տվյալներ փոխանցել մի աղբյուրից մի սպառողի։ Աղբյուրն ապահովում է տվյալները փոքր խմբաքանակներով (~տասը գրառում), մինչդեռ սպառողը ավելի արդյունավետ է աշխատում մեծ խմբաքանակներով (~հազար գրառում): Իրական օրինակ է Kafka տիպի հերթերից տվյալների փոխանցումը Clickhouse տվյալների բազա: Աղբյուր: - Հավասարապես անսահմանափակ: - Աղբյուրը երբեք չի վերադարձնում ավելի քան MaxItems գրանցում մեկ Next կանչում: - Մի «սեսիա» (մեկ Pipe ֆունկցիայի կանչ) ընթացքում, աղբյուրը յուրաքանչյուր Next-ով վերադարձնում է նոր տվյալներ: - Սակայն, վերագործարկումից հետո, աղբյուրը սկսում է նախորդ «հաստատված» դիրքից, որը սահմանվում է cookie-ով: Այդ պատճառով, *յուրաքանչյուր* cookie արժեք, որը Next- ը վերադարձնում է, տվյալները պահելուց հետո, պետք է հաստատվի Commit կանչով, նույն հերթականությամբ, ինչպես դրանք վերադարձվել են Next-ով: Սպառող: - Չի կարող միաժամանակ ավելի քան MaxItems մշակել: Պահանջվում է իրականացնել func Pipe(p Producer, c Consumer) error ֆունկցիան, որը կարդում է տվյալները աղբյուրից, խմբավորում դրանք ոչ ավելի, քան MaxItems չափով բուֆերում և պահում է սպառողում, հետո հաստատում է առաջընթացը աղբյուրում: */ const MaxItems = 9999 type Producer interface { // Next վերադարձնում է: // - մի խմբաքանակ տարրեր, որոնք պետք է մշակվեն // - cookie, որը պետք է հաստատել, երբ աշխատանքը ավարտվի // - սխալ Next() (items []any, cookie int, err error) // Commit օգտագործվում է նշելու համար, որ տվյալների խմբաքանակը մշակված է Commit(cookie int) error } type Consumer interface { Process(items []any) error } func Pipe(p Producer, c Consumer) error { // TODO }

Middle+
Яндекс
36

Ինչպիսի՞ն են Kafka-ի առաքման երաշխիքները: Ինչ պետք է անել արտադրողի կողմից, որպեսզի ապահովվի exactly-once?

Middle+
plata
36

Կարո՞ղ եք Docker կոնտեյներ առանց պատկերի գործարկել:

Senior
SberAuto
36

Ինչպե՞ս եք ձեր տեսակետը հիմնավորում, եթե գործընկերդ համաձայն չէ:

Senior
AvitoAvito
36

Կարո՞ղ է Redis-ում պահել միայն order_id -> current_status և ամբողջ պատվերի քարտը ընթերցել ռեպլիկայից: Ինչպես բաժանել այս երկու տեսակի ընթերցումները?

Senior
plata
36

Ներկայացրեք index for the users աղյուսակի համար՝ gender և age դաշտերով, եթե անհրաժեշտ է ընտրել օգտվողներ սեռով կամ տարիքով

Middle
VKVK
36

Պատմիր մի դեպքի մասին, երբ դու ինչ-որ բան առաջարկեցիր և պետք էր ապացուցել քո տեսակետը։

Senior
Cloud.ru
36

Եթե տողը ալգորիթմով պալինդրոմ է, արդյոք այն վերադարձնում է true, թե ոչ?

Middle
VKVK
36

Ինչպես է աշխատում կոնտեյներիզացիան, պատմիր ավելի մանրամասն մասին namespace-ների մասին։

Senior
OZONOZON
36

Ի՞նչ անել, եթե endpoint-ը դանդաղում է: Նկարագրեք ախտորոշման քայլերը.

Middle+
plata
36

Ի՞նչ եք անում ինչ-որ բան վերանորոգելուց հետո։

Senior
WildberriesWildberries
36

Ինչ պահանջներ կդնեք անձնական տվյալների հետ աշխատող համակարգի համար առաջին հերթին։

Senior
Astra
36

Ի՞նչ խնդիրներ լուծել հետաքրքիր կլիներ։

Middle+
ВайлдберрисВайлдберрис
36

Մեծ ֆայլ ջնջեցի, բայց սկավառակի տեղը չազատվեց: Ինչու՞: Ինչպես գտնել և ուղղել?

Senior
Flant
36

Ի՞նչ է կոնտեքստը (context) Go-ում: Ինչպես է օգտագործվում: Ինչպես է աշխատում բեկորումը կոնտեքստի միջոցով?

Middle
YadroYadro
36

Ինչ է protobuf-ը։ Ի՞նչ կլինի դաշտը ավելացնելիս/հեռացնելիս։

Senior
SelectelSelectel
36

Եթե ավելացնենք ավելի շատ consumer-ներ մեծ Kafka lag-ի դեպքում, դա կօգնի՞: Որ դեպքերում կօգնի, իսկ որ դեպքերում՝ ոչ: Ինչ տեղի կունենա, եթե 16 բաժիններ և 2 consumer լինեն?

Middle+
ВайлдберрисВайлдберрис
36
/412