{"id":108647,"date":"2023-05-21T12:49:09","date_gmt":"2023-05-21T10:49:12","guid":{"rendered":"https:\/\/prohoster.info\/?p=108647"},"modified":"2023-05-22T10:28:52","modified_gmt":"2023-05-22T08:28:52","slug":"paypal-otkryl-kod-subd-junodb","status":"publish","type":"post","link":"https:\/\/prohoster.info\/nl\/blog\/news\/paypal-otkryl-kod-subd-junodb","title":{"rendered":"PayPal heeft de code van de JunoDB-database geopend","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Het bedrijf PayPal heeft de broncode van de fouttolerante database JunoDB vrijgegeven, die gegevens in een sleutel-waardeformaat beheert. Het systeem is oorspronkelijk ontworpen met het oog op hoge veiligheid, horizontale schaalbaarheid, fouttolerantie en het vermogen om honderdduizenden gelijktijdige verbindingen met voorspelbare latenties te verwerken. Bij PayPal zijn vrijwel alle diensten, van gebruikersinvoer tot financi\u00eble transactieverwerking, afhankelijk van JunoDB. De projectcode is geschreven in de programmeertaal Go (met een clientbibliotheek in Java) en wordt verspreid onder de Apache 2.0-licentie. Tijdens verdere ontwikkeling zullen verbeteringen, correcties en wijzigingen van de gemeenschap worden geaccepteerd.    <\/p>\n<p>De architectuur van JunoDB is gebaseerd op het gebruik van een load balancer die aanvragen van clienttoepassingen ontvangt en deze verspreidt over proxyservers, die tegelijkertijd verbinding maken met een groep <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/nl\/server\/\"   title=\"servers\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"1715\">servers<\/a> opslag tijdens de uitvoering van een aanvraag. Elke proxyserver maakt verbinding met alle <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/nl\/server\/dts-dusseldorf\/\"   title=\"servers\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"3459\">servers<\/a> opslag en leidt aanvragen door naar de groep opslagservers op basis van een partitioneringsindex die is opgeslagen in het gedistribueerde configuratiesysteem etcd.     <center><img decoding=\"async\" alt=\"PayPal heeft de code van de JunoDB-database geopend\" src=\"\/wp-content\/uploads\/2023\/05\/1c7c7a0cae43c4da8b6b2ae7580194c4.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/center>              <\/p>\n<p>Gegevens worden gepartitioneerd en toegewezen aan opslagknopen met behulp van hashing, wat de verplaatsing van gegevens vermindert bij het toevoegen of verwijderen van knopen in het cluster. Om fouttolerantie te waarborgen, wordt elke datareplica op meerdere opslagknopen gerepliceerd, waardoor informatie behouden blijft bij uitval van afzonderlijke servers. Het ondersteunen van geografisch verspreide opslagruimtes, waarbij groepen knopen in verschillende datacenters zijn geplaatst.  <center><img decoding=\"async\" alt=\"PayPal heeft de code van de JunoDB-database geopend\" src=\"\/wp-content\/uploads\/2023\/05\/939ab12af3a3d8c2ad7d1c91c3ba622c.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/center>      <\/p>\n<p>Op de opslagknopen worden gegevens bewaard in het RAM of in lokale opslag op basis van de RocksDB-bibliotheek. Bij permanente opslag worden de gegevens in versleutelde vorm opgeslagen (de encryptiesleutel kan door de client worden gedefinieerd of op het niveau van de proxy worden ingesteld).      <center><img decoding=\"async\" alt=\"PayPal heeft de code van de JunoDB-database geopend\" src=\"\/wp-content\/uploads\/2023\/05\/f3069583a7f226d91f12d7d46f1c139f.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/center>      <\/p>\n<p>Voor toegang tot de database vanuit applicaties is er een clientbibliotheek beschikbaar, die een API biedt voor applicaties in de talen Java, Go en C++. De clientzijde is zo eenvoudig mogelijk gehouden, terwijl complexe logica en instellingen waar mogelijk naar de SDB zijn verplaatst. De interactie tussen de client en de load balancer of proxy vindt plaats via een versleuteld communicatiekanaal. Voor het beheer en het verzenden van aanvragen kan een command-line interface worden gebruikt, die alle mogelijkheden van de client API reproduceert.      <\/p>\n<p>Het systeem is ontworpen voor het verwerken van verzoeken met voorspelbaar lage latencies. Bijvoorbeeld, een cluster van drie opslagnodes en \u00e9\u00e9n proxy, samengesteld uit omgevingen n1-highmem-32 (32 CPU Intel Xeon 2.30GHz, 214G RAM en 450G opslag op basis van SSD), kon vaste latencies bieden die niet hoger waren dan 2,5 ms in 95% van de gevallen en 16 ms in 99% bij de verwerking van 200 duizend gelijktijdige TLS-verbindingen en een doorvoer van 15 duizend verzoeken per seconde (bij 3000 gelijktijdige verbindingen en een doorvoer van 80 duizend verzoeken per seconde waren de latencies niet hoger dan 6 ms in 95% van de gevallen en 15 ms in 99%). In PayPal bedienen services op basis van JunoDB ongeveer 350 miljard verzoeken per dag.    <center><img decoding=\"async\" alt=\"PayPal heeft de code van de JunoDB-database geopend\" src=\"\/wp-content\/uploads\/2023\/05\/61f0f3a3fdcf9974b4a5dcaef64bdba3.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/center><br \/>\n<br \/>Bron: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=59169\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f PayPal \u043e\u0442\u043a\u0440\u044b\u043b\u0430 \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0435 \u0442\u0435\u043a\u0441\u0442\u044b \u043e\u0442\u043a\u0430\u0437\u043e\u0443\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u043e\u0439 \u0421\u0423\u0411\u0414 JunoDB, \u043c\u0430\u043d\u0438\u043f\u0443\u043b\u0438\u0440\u0443\u044e\u0449\u0435\u0439 \u0434\u0430\u043d\u043d\u044b\u043c\u0438 \u0432 \u0444\u043e\u0440\u043c\u0430\u0442\u0435 \u043a\u043b\u044e\u0447-\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435. \u0421\u0438\u0441\u0442\u0435\u043c\u0430 \u0438\u0437\u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e \u0441\u043f\u0440\u043e\u0435\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0430 \u0441 \u043e\u0433\u043b\u044f\u0434\u043a\u043e\u0439 \u043d\u0430 \u0432\u044b\u0441\u043e\u043a\u0443\u044e \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u044c, \u0433\u043e\u0440\u0438\u0437\u043e\u043d\u0442\u0430\u043b\u044c\u043d\u0443\u044e \u043c\u0430\u0441\u0448\u0442\u0430\u0431\u0438\u0440\u0443\u0435\u043c\u043e\u0441\u0442\u044c, \u043e\u0442\u043a\u0430\u0437\u043e\u0443\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u043e\u0441\u0442\u044c \u0438 \u0441\u043f\u043e\u0441\u043e\u0431\u043d\u043e\u0441\u0442\u044c \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0442\u044c \u0441\u043e\u0442\u043d\u0438 \u0442\u044b\u0441\u044f\u0447 \u043e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0439 \u0441 \u043f\u0440\u0435\u0434\u0441\u043a\u0430\u0437\u0443\u0435\u043c\u044b\u043c\u0438 \u0437\u0430\u0434\u0435\u0440\u0436\u043a\u0430\u043c\u0438. \u0412 PayPal \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0432\u0441\u0435 \u0441\u0435\u0440\u0432\u0438\u0441\u044b, \u043e\u0442 \u0432\u0445\u043e\u0434\u0430 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 \u0434\u043e \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u0444\u0438\u043d\u0430\u043d\u0441\u043e\u0432\u044b\u0445 \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0439, \u0437\u0430\u0432\u044f\u0437\u0430\u043d\u044b \u043d\u0430 JunoDB. \u041a\u043e\u0434 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 \u043d\u0430\u043f\u0438\u0441\u0430\u043d \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Go [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":108648,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-108647","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f PayPal \u043e\u0442\u043a\u0440\u044b\u043b\u0430 \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0435 \u0442\u0435\u043a\u0441\u0442\u044b \u043e\u0442\u043a\u0430\u0437\u043e\u0443\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u043e\u0439 \u0421\u0423\u0411\u0414 JunoDB, \u043c\u0430\u043d\u0438\u043f\u0443\u043b\u0438\u0440\u0443\u044e\u0449\u0435\u0439 \u0434\u0430\u043d\u043d\u044b\u043c\u0438 \u0432 \u0444\u043e\u0440\u043c\u0430\u0442\u0435 \u043a\u043b\u044e\u0447-\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/nl\/blog\/news\/paypal-otkryl-kod-subd-junodb\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"nl_NL\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47PayPal \u043e\u0442\u043a\u0440\u044b\u043b \u043a\u043e\u0434 \u0421\u0423\u0411\u0414 JunoDB | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f PayPal \u043e\u0442\u043a\u0440\u044b\u043b\u0430 \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0435 \u0442\u0435\u043a\u0441\u0442\u044b \u043e\u0442\u043a\u0430\u0437\u043e\u0443\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u043e\u0439 \u0421\u0423\u0411\u0414 JunoDB, \u043c\u0430\u043d\u0438\u043f\u0443\u043b\u0438\u0440\u0443\u044e\u0449\u0435\u0439 \u0434\u0430\u043d\u043d\u044b\u043c\u0438 \u0432 \u0444\u043e\u0440\u043c\u0430\u0442\u0435 \u043a\u043b\u044e\u0447-\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/nl\/blog\/news\/paypal-otkryl-kod-subd-junodb\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2023-05-21T10:49:12+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2023-05-22T08:28:52+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47PayPal heeft de code van de SDB JunoDB vrijgegeven | ProHoster","description":"PayPal heeft de bronbestanden van de fouttolerante SDB JunoDB vrijgegeven, die gegevens in het sleutel-waardeformaat manipuleert.","canonical_url":"https:\/\/prohoster.info\/nl\/blog\/news\/paypal-otkryl-kod-subd-junodb","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"nl_NL","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47PayPal \u043e\u0442\u043a\u0440\u044b\u043b \u043a\u043e\u0434 \u0421\u0423\u0411\u0414 JunoDB | ProHoster","og:description":"\u041a\u043e\u043c\u043f\u0430\u043d\u0438\u044f PayPal \u043e\u0442\u043a\u0440\u044b\u043b\u0430 \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0435 \u0442\u0435\u043a\u0441\u0442\u044b \u043e\u0442\u043a\u0430\u0437\u043e\u0443\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u043e\u0439 \u0421\u0423\u0411\u0414 JunoDB, \u043c\u0430\u043d\u0438\u043f\u0443\u043b\u0438\u0440\u0443\u044e\u0449\u0435\u0439 \u0434\u0430\u043d\u043d\u044b\u043c\u0438 \u0432 \u0444\u043e\u0440\u043c\u0430\u0442\u0435 \u043a\u043b\u044e\u0447-\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435.","og:url":"https:\/\/prohoster.info\/nl\/blog\/news\/paypal-otkryl-kod-subd-junodb","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2023-05-21T10:49:12+00:00","article:modified_time":"2023-05-22T08:28:52+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"108647","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2026-02-09 16:51:35","updated":"2026-02-19 09:14:05","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/posts\/108647","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/comments?post=108647"}],"version-history":[{"count":2,"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/posts\/108647\/revisions"}],"predecessor-version":[{"id":161834,"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/posts\/108647\/revisions\/161834"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/media\/108648"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/media?parent=108647"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/categories?post=108647"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/nl\/wp-json\/wp\/v2\/tags?post=108647"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}