23 पॉइंट द्वारा xguru 2022-09-29 | 2 टिप्पणियां | WhatsApp पर शेयर करें
  • वास्तविक Cloudflare Workers में इस्तेमाल होने वाला JavaScript/WASM runtime code
    • दूसरे environments में port किया जा सके, इसके लिए केवल कुछ हिस्से बदले गए हैं
    • इसका नाम Unix server के -d "daemon" से लिया गया है, यानी "worker dee"

उपयोग

  • Workers को self-host किया जा सकता है. यह एक ऐसा web server भी है जिसे केवल API के रूप में इस्तेमाल किया जा सकता है. किसी भी environment में आसानी से लागू किया जा सकता है
  • local development और testing के लिए इस्तेमाल
  • programmable proxy (forward & reverse). JavaScript से request/response को intercept करके प्रोसेस किया जा सकता है

What it is

  • Server-first : कई JS/WASM runtimes बहुउद्देश्यीय होते हैं, लेकिन workerd केवल server पर केंद्रित है. उनमें भी खास तौर पर HTTP server पर
  • Web standard APIs : web browser में इस्तेमाल होने वाले जैसे standard APIs प्रदान करता है (Fetch, URL, WebCrypto आदि). यानी यहां विकसित किया गया code browser में भी port किया जा सकता है
  • Nanoservices : अब microservices से आगे nano services!
    • nano services एक नया मॉडल हैं, जिनमें independent deployment के फायदे होते हैं और overhead केवल library function call जितना होता है
    • workerd का उपयोग करके एक ही process के अंदर कई Workers configure किए जा सकते हैं, और हर Worker स्वतंत्र रूप से चलता है, लेकिन आपस में communication भी कर सकता है
  • Homogeneous deployment : पहले किसी खास container में खास service चलानी पड़ती थी, लेकिन workerd में सभी machines सभी services चला सकती हैं
  • Capability bindings: साफ-सुथरा configuration और SSRF सुरक्षा की गारंटी
  • Always backwards compatible : हमेशा backward compatibility की गारंटी

What it's not

  • workerd is not a Secure Sandbox : malicious code चल सकता है. इसे रोकने के लिए अलग sandboxing layer की जरूरत है
  • workerd is not an independent project : यह Cloudflare Workers का core और एक हिस्सा है. बाहरी commits स्वीकार किए जाते हैं, लेकिन उनकी गारंटी देना मुश्किल है.
  • workerd is not an off-the-shelf edge compute platform : यह पूरा Workers service नहीं है

2 टिप्पणियां

 
fastkoder 2022-09-29

यह तो वही चीज़ है जो public होने पर बनाकर देखना चाहता था, ओहो

 
galadbran 2022-09-29

Homogeneous deployment : पहले किसी खास container में किसी खास service को चलाना पड़ता था, लेकिन workerd में हर machine सभी services चला सकती है

पहले समझ नहीं आया कि इसका क्या मतलब है, लेकिन ठीक उससे पहले समझाए गए nanoservice(functions) तरीके से development करने पर बस सभी nanoservices को एक machine पर deploy किया जा सकता है (क्योंकि overhead कम है, इसलिए यह संभव है), और जरूरत पड़ने पर वैसी ही machines बढ़ा दीजिए, इसलिए किसी जटिल deployment configuration की जरूरत नहीं रहती।