{"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\/da\/blog\/news\/paypal-otkryl-kod-subd-junodb","title":{"rendered":"PayPal har frigivet koden til databasesystemet JunoDB","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>PayPal har \u00e5bnet kildeteksterne til den fejltolerante database JunoDB, der h\u00e5ndterer data i n\u00f8gle-v\u00e6rdi format. Systemet er oprindeligt designet med fokus p\u00e5 h\u00f8j sikkerhed, horisontal skalerbarhed, fejltolerance og evnen til at h\u00e5ndtere hundredtusindvis af samtidige forbindelser med forudsigelige forsinkelse. I PayPal er stort set alle tjenester, fra bruger-login til behandling af finansielle transaktioner, afh\u00e6ngige af JunoDB. Projektets kode er skrevet i Go (klientbiblioteket er p\u00e5 Java) og distribueres under Apache 2.0 licensen. Under den videre udvikling vil \u00e6ndringer, forbedringer og rettelser fra f\u00e6llesskabet blive accepteret.    <\/p>\n<p>JunoDB's arkitektur er baseret p\u00e5 brugen af en belastningsfordeler, der accepterer anmodninger fra klientapplikationer og distribuerer dem mellem proxy-servere, der samtidig henvender sig til en gruppe <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/da\/server\/\"   title=\"servere\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"1715\">servere<\/a> lagringssystemer under anmodningen. Hver proxy-server opretter forbindelser til alle <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/da\/server\/dts-dusseldorf\/\"   title=\"servere\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"3459\">servere<\/a> lagringssystemer og omdirigerer anmodninger til en gruppe lagringsservere baseret p\u00e5 partitioneringsindekset, der opbevares i det distribuerede konfigurationslagersystem etcd.     <center><img decoding=\"async\" alt=\"PayPal har frigivet koden til databasesystemet JunoDB\" src=\"\/wp-content\/uploads\/2023\/05\/1c7c7a0cae43c4da8b6b2ae7580194c4.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/center>              <\/p>\n<p>Data partitioneres og knyttes til lagringsnoder ved hj\u00e6lp af hashing, hvilket reducerer flytningen af data ved udvidelse eller reduktion af noder i klyngen. For at sikre fejltolerance replikeres hver datas\u00e6t p\u00e5 flere lagringsnoder, hvilket muligg\u00f8r bevarelse af information, n\u00e5r enkelte servere svigter. Det underst\u00f8ttes oprettelse af geografisk distribuerede lagre, hvor grupper af noder er placeret i forskellige datacentre.  <center><img decoding=\"async\" alt=\"PayPal har frigivet koden til databasesystemet JunoDB\" src=\"\/wp-content\/uploads\/2023\/05\/939ab12af3a3d8c2ad7d1c91c3ba622c.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/center>      <\/p>\n<p>Data p\u00e5 lagringsnoder placeres i RAM eller i lokal lagring baseret p\u00e5 RocksDB-biblioteket. Ved permanent opbevaring gemmes data i krypteret form (krypteringsn\u00f8glen kan defineres af klienten eller angives p\u00e5 proxy-niveau).      <center><img decoding=\"async\" alt=\"PayPal har frigivet koden til databasesystemet JunoDB\" src=\"\/wp-content\/uploads\/2023\/05\/f3069583a7f226d91f12d7d46f1c139f.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/center>      <\/p>\n<p>For database access from applications, a client library is provided, offering an API for applications in Java, Go, and C++. The client part is greatly simplified, while complex logic and settings are as much as possible delegated to the DBMS. Interaction between the client and load balancer or proxy is done through an encrypted communication channel. For management and request sending, a command-line interface can be used that replicates all capabilities of the client API.      <\/p>\n<p>The system is designed to handle requests with predictable low latencies. For instance, a cluster of three storage nodes and one proxy, formed from environments n1-highmem-32 (32 CPU Intel Xeon 2.30GHz, 214G RAM, and 450G SSD-based storage), managed to provide fixed latencies not exceeding 2.5 ms in 95% of cases and 16 ms in 99% when processing 200,000 simultaneous TLS connections and a stream of 15,000 requests per second (with 3,000 concurrent connections and a stream of 80,000 requests per second, latencies did not exceed 6 ms in 95% of cases and 15 ms in 99%). At PayPal, services based on JunoDB handle about 350 billion requests daily.    <center><img decoding=\"async\" alt=\"PayPal har frigivet koden til databasesystemet JunoDB\" src=\"\/wp-content\/uploads\/2023\/05\/61f0f3a3fdcf9974b4a5dcaef64bdba3.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/center><br \/>\n<br \/>Kilde: <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\/da\/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=\"da_DK\" \/>\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\/da\/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 has opened the source code of the DBMS JunoDB | ProHoster","description":"PayPal has open-sourced the source code of the fault-tolerant DBMS JunoDB, which manipulates data in key-value format.","canonical_url":"https:\/\/prohoster.info\/da\/blog\/news\/paypal-otkryl-kod-subd-junodb","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"da_DK","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\/da\/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\/da\/wp-json\/wp\/v2\/posts\/108647","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/comments?post=108647"}],"version-history":[{"count":2,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts\/108647\/revisions"}],"predecessor-version":[{"id":161834,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts\/108647\/revisions\/161834"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/media\/108648"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/media?parent=108647"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/categories?post=108647"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/tags?post=108647"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}