უკან დაბრუნება
Deno-ს გუნდი Cloudflare-ს შეუერთდა celld-ის workerd-თან შერწყმისთვის, რათა Workers-ის თვითჰოსტინგი გამარტივდეს
SiTech AI Team2 წთ. საკითხავი

Deno-ს გუნდი Cloudflare-ს შეუერთდა celld-ის workerd-თან შერწყმისთვის, რათა Workers-ის თვითჰოსტინგი გამარტივდეს

Deno-ს გუნდი Cloudflare-ს უერთდება, რათა celld-ს workerd-თან გააერთიანოს და თვითჰოსტინგის Workers და Durable Objects რადიკალურად გაამარტივოს დისტრიბუციურ აპლიკაციებზე მომუშავე დეველოპერებისთვის.

Deno-ს გუნდი Cloudflare-ს უერთდება

Deno-ს გუნდი Cloudflare-ს უერთდება, რათა რადიკალურად გაამარტივოს Workers-ისა და Durable Objects-ის თვითჰოსტინგი და დეველოპერებს საშუალება მისცეს, იგივე პრიმიტივები მეტ ადგილას გამოიყენონ. Ryan Dahl, უფროსი მთავარი ინჟინერი, და Kenton Varda, გამორჩეული ინჟინერი, ამ ნაბიჯის ისტორიას იზიარებენ.

Dahl, Node.js-ის შემქმნელი, Deno-ს JavaScript-ის წერისთვის უფრო ძლიერი აბსტრაქციების მოსაძებნად შეუდგა. Deno დეველოპერის გამოცდილებას აუმჯობესებდა, მაგრამ მისი თქმით, უფრო დიდი პრობლემები ქსელურ აპლიკაციებს ეხება: გამოთვლების განაწილება, მდგომარეობის კოორდინაცია, მონაცემების შენახვა და მოთხოვნის შესაბამისად ავტომასშტაბირება.

რატომ იყო Durable Objects მნიშვნელოვანი

გამოსავალი ნათელი გახდა, როცა Dahl-მა Cloudflare-ის Durable Objects-ის შესახებ წაიკითხა. ისინი დისტრიბუციულ სინგლტონს SQLite მონაცემთა ბაზით უზრუნველყოფენ. თითოეული Durable Object პატარა, ცალკე მისამართით მისადგომი სერვერივით მოქმედებს, საკუთარი რელაციური ბაზით, ერთნაკადიანი JavaScript-ის შესრულებით, WebSocket-ის მხარდაჭერით და ლოკალური SQLite-ზე სინქრონული წვდომით. ჩატის აპლიკაციის აწყობა თითო არხზე ერთი Durable Object-ით ანაწილებს მონაცემებსა და WebSocket კავშირებს, რაც აპლიკაციას მასშტაბირებადს ხდის.

ამ აბსტრაქციის თავზე სხვა სერვისებიც შეიძლება აშენდეს, მათ შორის Queues, KV, Durable Execution და თუნდაც Git-ის საცავი. თუმცა, ამ მოდელის Cloudflare-ის გარეთ გაშვება რთული რჩებოდა. workerd ღია კოდია, მაგრამ მისი Durable Objects-ის მხარდაჭერა მხოლოდ ერთ ინსტანციამდე შემოიფარგლება. Dahl-ს დისტრიბუციული ვერსია სურდა, რამაც celld-ის შექმნამდე მიიყვანა, ეს არის ერთი Rust-ის ბინარი, რომლის ერთადერთი გარე დამოკიდებულება ობიექტური საცავია.

Cloudflare-ის პასუხი

Kenton Varda გამოეხმაურა გავრცელებულ მტკიცებას, თითქოს Cloudflare-მა Workers-ი განსხვავებულად შექმნა მომხმარებლების ჩაკეტვისთვის. მან აღნიშნა, რომ Workers-ი განსხვავებულია, რადგან უკეთესია, რაც აპლიკაციების ასობით ლოკაციაზე გაშვებას მარტივსა და იაფს ხდის. მან ასევე აღნიშნა, რომ workerd, Cloudflare Workers-ის გარემო, ღია კოდია და პროდუქციაში იგივე კოდი მუშაობს, ხოლო ყოფილი მომხმარებლები მისი გამოყენებით სხვაგან გადასულან.

Varda აღიარა, რომ workerd-ს პროდუქციისთვის მზადყოფნაში ხარვეზი აქვს: Durable Objects მხოლოდ ერთი ინსტანციის რეჟიმში მუშაობს, რაც ლოკალური ტესტირებისთვის კარგია, მაგრამ მასშტაბირება არ შეუძლია. პროდუქციის როუტინგის იმპლემენტაცია დამოკიდებულია გარე სერვისებზე, რომლებსაც site reliability ინჟინრები მართავენ, ამიტომ თვითჰოსტერებისთვის უვარგისია. celld სთავაზობდა სრულად თავსებად, თვითჰოსტირებად და მასშტაბირებად იმპლემენტაციას.

გეგმა

Ryan Dahl და Bert Belder უხელმძღვანელებენ ახალ ძალისხმევას, რათა workerd-ის თვითჰოსტინგი იქცეს Workers-ის პროგრამირების მოდელით აპლიკაციების აწყობისა და გაშვების პირველკლასის მხარდაჭერილ გზად. სამუშაო მოიცავს celld-ის კოდისა და იდეების workerd-ში გაერთიანებას, უფრო მეტი განცხადება კი მომდევნო თვეებშია მოსალოდნელი. დეველოპერებს დღესვე შეუძლიათ celld-ის ან workerd-ის თვითჰოსტინგი დაიწყონ.

წყაროები: Cloudflare

SSiTech

SiTech — AI-გაძლიერებული ვებ დეველოპმენტი

ვქმნით სწრაფ, თანამედროვე ვებსაიტებს და AI-ს ვაერთიანებთ ქართული ბიზნესებისთვის. გაქვთ პროექტი ან კითხვა? სიამოვნებით დაგეხმარებით.