{"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\/es\/blog\/news\/paypal-otkryl-kod-subd-junodb","title":{"rendered":"PayPal ha abierto el c\u00f3digo de la base de datos JunoDB","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>La empresa PayPal ha abierto el c\u00f3digo fuente de la base de datos resiliente JunoDB, que manipula datos en formato clave-valor. El sistema fue dise\u00f1ado inicialmente con una fuerte \u00e9nfasis en la seguridad, la escalabilidad horizontal, la resiliencia y la capacidad de manejar cientos de miles de conexiones simult\u00e1neas con retrasos predecibles. En PayPal, pr\u00e1cticamente todos los servicios, desde el inicio de sesi\u00f3n de usuarios hasta el procesamiento de transacciones financieras, dependen de JunoDB. El c\u00f3digo del proyecto est\u00e1 escrito en el lenguaje Go (la biblioteca del cliente est\u00e1 en Java) y se distribuye bajo la licencia Apache 2.0. Se aceptar\u00e1n correcciones, mejoras y cambios por parte de la comunidad en el desarrollo futuro.    <\/p>\n<p>La arquitectura de JunoDB se basa en el uso de un equilibrador de carga que recibe solicitudes de aplicaciones cliente y las distribuye entre los servidores proxy, que a su vez acceden a un grupo <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/es\/server\/\"   title=\"servidores\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"1715\">servidores<\/a> de almacenamiento al ejecutar la solicitud. Cada servidor proxy establece conexiones simult\u00e1neamente con todos los <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/es\/server\/dts-dusseldorf\/\"   title=\"servidores\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"3459\">servidores<\/a> servidores de almacenamiento y redirige las solicitudes al grupo de servidores de almacenamiento bas\u00e1ndose en el \u00edndice de particionamiento, que se almacena en un sistema de almacenamiento distribuido de configuraci\u00f3n etcd.     <center><img decoding=\"async\" alt=\"PayPal ha abierto el c\u00f3digo de la base de datos JunoDB\" src=\"\/wp-content\/uploads\/2023\/05\/1c7c7a0cae43c4da8b6b2ae7580194c4.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/center>              <\/p>\n<p>Los datos se particionan y se asignan a nodos de almacenamiento mediante hash, lo que permite reducir la movilidad de los datos al aumentar o disminuir los nodos en el cl\u00faster. Para garantizar la resiliencia, cada porci\u00f3n de datos se replica en varios nodos de almacenamiento, lo que permite conservar la informaci\u00f3n en caso de fallos de servidores individuales. Se admite la creaci\u00f3n de almacenes geogr\u00e1ficamente distribuidos, donde los grupos de nodos est\u00e1n ubicados en diferentes centros de datos.  <center><img decoding=\"async\" alt=\"PayPal ha abierto el c\u00f3digo de la base de datos JunoDB\" src=\"\/wp-content\/uploads\/2023\/05\/939ab12af3a3d8c2ad7d1c91c3ba622c.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/center>      <\/p>\n<p>En los nodos de almacenamiento, los datos se colocan en memoria o en almacenamiento local utilizando la biblioteca RocksDB. Para el almacenamiento permanente, los datos se almacenan de manera encriptada (la clave de cifrado puede ser definida tanto por el cliente como configurarse a nivel de proxy).      <center><img decoding=\"async\" alt=\"PayPal ha abierto el c\u00f3digo de la base de datos JunoDB\" src=\"\/wp-content\/uploads\/2023\/05\/f3069583a7f226d91f12d7d46f1c139f.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/center>      <\/p>\n<p>Para acceder a la base de datos desde aplicaciones, se proporciona una biblioteca cliente que ofrece una API para aplicaciones en los lenguajes Java, Go y C++. La parte del cliente se simplifica al m\u00e1ximo, y la l\u00f3gica compleja y las configuraciones se trasladan, en la medida de lo posible, al lado del SGBD. La interacci\u00f3n entre el cliente y el equilibrador de carga o proxy se realiza a trav\u00e9s de un canal de comunicaci\u00f3n cifrado. Para gestionar y enviar solicitudes, se puede utilizar la interfaz de l\u00ednea de comandos, que reproduce todas las capacidades de la API del cliente.      <\/p>\n<p>El sistema est\u00e1 dise\u00f1ado para manejar solicitudes con retrasos predecibles y bajos, por ejemplo, un cl\u00faster de tres nodos de almacenamiento y un proxy, formado por entornos n1-highmem-32 (32 CPU Intel Xeon 2.30GHz, 214G de RAM y 450G de almacenamiento basado en SSD), pudo ofrecer retrasos fijos que no superan los 2.5 ms en el 95% de los casos y 16 ms en el 99% al procesar 200 mil conexiones TLS simult\u00e1neas y un flujo de 15 mil solicitudes por segundo (con 3000 conexiones simult\u00e1neas y un flujo de 80 mil solicitudes por segundo, los retrasos no superaron los 6 ms en el 95% de los casos y 15 ms en el 99%). En PayPal, los servicios basados en JunoDB manejan alrededor de 350 mil millones de solicitudes al d\u00eda.    <center><img decoding=\"async\" alt=\"PayPal ha abierto el c\u00f3digo de la base de datos JunoDB\" src=\"\/wp-content\/uploads\/2023\/05\/61f0f3a3fdcf9974b4a5dcaef64bdba3.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/center><br \/>\n<br \/>Fuente: <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.2 - 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\/es\/blog\/news\/paypal-otkryl-kod-subd-junodb\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2\" \/>\n\t\t<meta property=\"og:locale\" content=\"es_ES\" \/>\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\/es\/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 ha abierto el c\u00f3digo de la base de datos JunoDB | ProHoster","description":"La empresa PayPal ha abierto el c\u00f3digo fuente de la base de datos tolerante a fallos JunoDB, que manipula datos en formato de clave-valor.","canonical_url":"https:\/\/prohoster.info\/es\/blog\/news\/paypal-otkryl-kod-subd-junodb","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"es_ES","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\/es\/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\/es\/wp-json\/wp\/v2\/posts\/108647","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/comments?post=108647"}],"version-history":[{"count":2,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts\/108647\/revisions"}],"predecessor-version":[{"id":161834,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts\/108647\/revisions\/161834"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/media\/108648"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/media?parent=108647"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/categories?post=108647"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/tags?post=108647"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}