მიკროსერვისების მდგომარეობა Temporal Technologies-ის მიხედვით

  • Jul 19, 2023

კვანძების უკმარისობის ირგვლივ ინჟინერია გადამწყვეტია იმისთვის, რომ ღრუბლოვანი აპლიკაციები გააგრძელონ მუშაობა. Temporal იპარავს გვერდს Java-ს ისტორიიდან, საშუალო პროგრამით სახელმწიფო მართვისთვის, რომელიც შექმნილია წარუმატებლობის მოსაგვარებლად.

clock.jpg
Shutterstock

საბოლოო მომხმარებლისთვის ღრუბლოვანი სერვისები უნდა გაამარტივონ ცხოვრება და უზრუნველყონ მეტი სისწრაფე. მიუხედავად ამისა, დეველოპერებისთვის მათ შეუძლიათ ცხოვრება ბევრად უფრო რთული გახადონ მათი განაწილებული ბუნების გამო. გამოწვევებს შორის არის სახელმწიფოს მართვა, რაც მეორე ბუნებაა მონაცემთა ბაზის პრაქტიკოსებისთვის, მაგრამ არა აუცილებლად აპლიკაციის შემქმნელებისთვის. ეს არის გამოწვევა დროებითი ტექნოლოგიები აიღო სახელმწიფო მენეჯმენტის უზრუნველყოფა მიკროსერვისების ორკესტრირების უკან, აიღო იქ, სადაც სერვისის ბადეები, როგორიცაა ისტიო დატოვება.

გასაგებია, რომ აქამდე ალბათ არასოდეს გსმენიათ ამ ორი წლის კომპანიის შესახებ, რადგან მისი მწირი ვებსაიტი კომპანიას თითქმის ისე გამოიყურება, თითქოს ის ჯერ კიდევ ფარულად არის. არ არის ნათელი, აქვს თუ არა Temporal-ს ბევრი ფასიანი კლიენტის ბაზა; ის ჩამოთვლის უამრავ ლოგოს, როგორიცაა Datadog, Netflix, Instacart, Qualtrics, Box და სხვა, მაგრამ ისინი არიან ღია კოდის ტექნოლოგიის მომხმარებლები და არ იხდიან მომხმარებლებს. თუ საკმარისად იკვლევთ, რეალურად შეგიძლიათ იპოვოთ რეალური დოკუმენტაცია. მაგრამ მხოლოდ იმ შემთხვევაში, თუ დაგვავიწყდება ამის აღნიშვნა, Temporal-მა მხოლოდ $103 მილიონიანი სერიის B რაუნდი მოიპოვა.

კონკრეტულად, დროებითი განსაზღვრავს ვიწრო ამოცანას: მიკროსერვისების მდგომარეობის მართვას. იმის გათვალისწინებით, რომ მიკროსერვისები, როგორც წესი, ჩნდება უაღრესად განაწილებულ ღრუბლოვან გარემოში, მდგომარეობის მართვა ჰგავს ტრანზაქციების ქორეოგრაფირებას უმაგისტრო ან მულტიმასტერ მონაცემთა ბაზაში. ეს არის გამოწვევა, რომელიც, მაგალითად, Cassandra-ს დეველოპერებმა კარგად იციან. მონაცემთა ბაზებში ეს ყველაფერი ეხება ტრანზაქციის თანმიმდევრულობის დაბალანსებას ჩაწერის ხელმისაწვდომობასთან. აპლიკაციის ან მიკროსერვისების დონეზე, საუბარია ხელმისაწვდომობაზე, სადაც ჯაჭვი (ამ შემთხვევაში, გამოთვლითი კვანძები, რომლებიც მასპინძლობს სპეციფიკურ მიკროსერვისებს) იქნება ისეთივე ძლიერი, როგორც მისი ყველაზე სუსტი რგოლი.

სახელმწიფოს მართვა, რომელიც ახორციელებს ტრანზაქციებს, არის გასაღები იმისთვის, რომ უზრუნველყოს შედეგები ვალიდური და მიმდინარე და სისტემა - იქნება ეს მონაცემთა ბაზა თუ აპლიკაცია - კრახისგან. მაგალითად, ბანკის ბანკომატიდან ნაღდი ფულის გამოტანისას, სახელმწიფო მენეჯმენტი აუცილებელია იმის უზრუნველსაყოფად, რომ ტრანზაქცია დასრულდეს მხოლოდ ანგარიშის დებეტით.

განაწილებულ გარემოში მდგომარეობის მართვის აუცილებლობა ძალზე კრიტიკულია, რადგან მრავალი მოძრავი ნაწილის შემთხვევაში, არსებობს იმის ალბათობა, რომ ერთ-ერთი მათგანი არასწორად გააქტიურდეს. ასე რომ, ყველაფერი, რომელიც მუშაობს ინტერნეტში ან ღრუბელში, მოითხოვს ინჟინერიას წარუმატებლობისთვის, რომელიც მოიცავს წარუმატებლობა და გამოსავალი, ასე რომ ერთი კვანძის გათიშვა არ დაარღვევს მთელ აპლიკაციას ან სერვისი.

მონაცემთა ბაზის სამყაროში სახელმწიფო ძრავები, როგორც წესი, ჩაშენებული იყო; თუ თქვენ გაუშვით მონაცემთა ბაზა, თქვენ არ გჭირდებათ საკუთარი სახელმწიფო ძრავის დაწერა. AppDev სამყაროში ეს ასე არ არის; დეველოპერებს, როგორც წესი, უნდა დაეწერათ საკუთარი.

მიკროსერვისებისთვის, ორგანიზაციებს, როგორც წესი, უწევთ დაწერონ საკუთარი სახელმწიფო მანქანები აპლიკაციის კოე. დროებითი მომხმარებლისთვის Checkr, სერვისი, რომელიც უზრუნველყოფს თანამშრომლების ფონზე ონლაინ შემოწმებას, ტიპიური სამუშაო პროცესი ხშირად მოიცავს 50-ის სერიას -- 60- ავტომატური და ხელით საფეხური (თითოეული მათგანი მიკროსერვისია) მონაცემების მოძიება მრავალფეროვანი გარედან წყაროები. იყო უამრავი კაფკას რიგი ჟონგლირებისთვის, მონაცემების ჩაწერა მრავალ სამიზნე მონაცემთა ბაზაში, შემდეგ ლოგიკის დაწერა შედეგების შერწყმის მიზნით. დროებითი სერვერით, მათ შეეძლოთ ფოკუსირება აპზე და არა სახელმწიფო ძრავზე.

Temporal ახასიათებს მის გადაწყვეტას, როგორც "ღია კოდის პლატფორმა მაღალი საიმედოობის ორკესტრირებისთვის, მისიის კრიტიკული აპლიკაციები მასშტაბით." მიკროსერვისებისთვის, ერთი შეხედვით, ეს ძალიან ჰგავს იმას, რაც სერვისის ბადეები აკეთებენ. მაგრამ სერვისის ბადეები ფუნქციონირებს ინფრასტრუქტურის დონეზე, ახორციელებს კავშირებს და უზრუნველყოფს ავარიას, თუ კვანძები გადადიან n. ამის საპირისპიროდ, Temporal ყურადღებას ამახვილებს აპლიკაციის დონეზე და უფრო კონკრეტულად, ამოწმებს, არის თუ არა კოდი ან მიკროსერვისში ლოგიკა შესრულებულია და, თუ არა, კასკადური გამოსავლის მართვა დამოკიდებულებები.

პრობლემა, რომელსაც Temporal წყვეტს მიკროსერვისებით, არაფერია. როგორც ზემოთ აღინიშნა, AppDev სამყაროში სახელმწიფო ძრავები უნდა დაიწეროს როგორც გარე კოდი ან შეფუთული იყოს გარკვეული ჩარჩოს ნაწილი. ეს არის ზუსტად ის პრობლემა, რომელიც ასევე უნდა გადაჭრას ინტერნეტ აპლიკაციებმა, რადგან ინტერნეტი მოქალაქეობის არმქონე იყო და სწორედ ამან გამოიწვია მიძღვნილი შუა პროგრამული უზრუნველყოფა, ან აპლიკაციის სერვერები, პროცესს ვებ აპლიკაციებთან მუშაობისთვის, სადაც პოპულარულ ენას, როგორიცაა Java, აქვს საკუთარი მექანიზმები. მმართველი სახელმწიფო.

დროებითი ისტორია მეორდება მიკროსერვისების დონეზე. მისი სახელმწიფო მართვის სერვერის ტექნოლოგია მოდის ხუთწლიანი ღია კოდის პროექტი ეს იყო Uber-ში შემუშავებული მუშაობის შედეგი. ირგვლივ არის აშენებული დროებითი სერვერი, მიკროსერვისის ორკესტრირების პლატფორმა, რომელიც ზის გამოთვლით სერვერებსა და შესრულებად კოდს შორის.

ეს იწვევს აშკარა კითხვას: თუ მიკროსერვისები ნაწილდება ბუნებაში, შესრულება განაწილებულად კომპიუტერული გარემოში, ცენტრალური საორკესტრო სერვერი არ დაამარცხებს მიზანს ერთი წერტილის შემოღებით მარცხი? პასუხი არის ახალი "ექსპერიმენტული" მრავალკლასტერული ასინქრონული რეპლიკაციის ფუნქცია რომელიც უნდა უზრუნველყოფდეს მარცხის აუცილებელ შესაძლებლობებს. რაც შეეხება მიკროსერვისების ტრანზაქციის გარანტიებს, მომავალი ჯერ კიდევ მიმდინარეობს.

Დიდი მონაცემები

როგორ გავარკვიოთ, ხართ თუ არა ჩართული მონაცემების დარღვევაში (და რა უნდა გააკეთოთ შემდეგ)
AI-ში მიკერძოების წინააღმდეგ ბრძოლა იწყება მონაცემებით
სამართლიანი პროგნოზი? როგორ აწვდიან 180 მეტეოროლოგი ამინდის „საკმარისად კარგ“ მონაცემებს
კიბოს თერაპია დამოკიდებულია თავბრუდამხვევ მონაცემებზე. აი, როგორ არის დალაგებული ღრუბელში
  • როგორ გავარკვიოთ, ხართ თუ არა ჩართული მონაცემების დარღვევაში (და რა უნდა გააკეთოთ შემდეგ)
  • AI-ში მიკერძოების წინააღმდეგ ბრძოლა იწყება მონაცემებით
  • სამართლიანი პროგნოზი? როგორ აწვდიან 180 მეტეოროლოგი ამინდის „საკმარისად კარგ“ მონაცემებს
  • კიბოს თერაპია დამოკიდებულია თავბრუდამხვევ მონაცემებზე. აი, როგორ არის დალაგებული ღრუბელში