{"id":23654,"date":"2019-07-16T00:00:00","date_gmt":"2019-07-16T00:00:00","guid":{"rendered":"https:\/\/www.mailgun.com\/blog\/actualizacion-semanal-de-producto-actualizacion-a-mongodb-2-4-1\/"},"modified":"2026-09-16T10:55:45","modified_gmt":"2026-09-16T10:55:45","slug":"actualizacion-semanal-de-producto-actualizacion-a-mongodb-2-4-1","status":"publish","type":"blog","link":"https:\/\/www.mailgun.com\/es\/blog\/product\/actualizacion-semanal-de-producto-actualizacion-a-mongodb-2-4-1\/","title":{"rendered":"Actualizaci\u00f3n semanal de producto: actualizaci\u00f3n a MongoDB 2.4.1"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\"><strong>Originally posted on April 12, 2013.<\/strong><\/p>\n\r\n    <nav data-content-type=\"longform\" class=\"toc-block longform-spacings px-5 py-6 px-md-6 px-lg-7 py-md-7 bg-light fs-sm rounded-lg\" aria-labelledby=\"toc-title-3866\"><p class=\"h5 m-0\" id=\"toc-title-3866\">\u00cdndice<\/p><div class=\"d-flex mt-3\"><div class=\"w-auto fw-bold text-accent d-flex me-2\">01<\/div><div class=\"d-flex flex-column\"><a class=\"fw-bold scrollme link-body-color text-accent\" href=\"#upgrading-to-mongodb-2-4-1-from-2-2\">Upgrading to MongoDB 2.4.1 from 2.2<\/a><\/div><\/div><div class=\"d-flex mt-3\"><div class=\"w-auto fw-bold text-accent d-flex me-2\">02<\/div><div class=\"d-flex flex-column\"><a class=\"fw-bold scrollme link-body-color text-accent\" href=\"#upgrading-pymongo-version\">Upgrading PyMongo version<\/a><\/div><\/div><div class=\"d-flex mt-3\"><div class=\"w-auto fw-bold text-accent d-flex me-2\">03<\/div><div class=\"d-flex flex-column\"><a class=\"fw-bold scrollme link-body-color text-accent\" href=\"#upgrading-the-servers\">Upgrading the servers<\/a><\/div><\/div><\/nav>\n<p class=\"wp-block-paragraph\">This week we focused on backend improvements to make Mailgun more performant, reliable and scalable. Lots of boring stuff, but hopefully you\u2019ll feel the difference.<\/p>\n\n<p class=\"wp-block-paragraph\">One of the things that we did in particular was upgrade from MongoDB version 2.2 to 2.4.1. We\u2019re big fans of MongoDB here at Mailgun. The bigger \u201cWhy MongoDB\u201d post is long overdue but in the meantime, here\u2019s a little color around the experience upgrading to the latest MongoDB version. We also upgraded to the latest version of pymongo: the MongoDB Python driver.<\/p>\n\n<h2 class=\"wp-block-heading\">Upgrading to MongoDB 2.4.1 from 2.2<\/h2>\n\n<p class=\"wp-block-paragraph\">We highly recommend this version bump to anyone who\u2019s using MongoDB in production. While you can see the complete list of\u00a0<a href=\"http:\/\/docs.mongodb.org\/manual\/release-notes\/2.4-overview\/\" target=\"_tabs\" rel=\"noopener noreferrer\">what\u2019s new in 2.4.1<\/a>\u00a0on 10Gen web site, below is the list of features and improvements that we found particularly beneficial during evaluation on our staging environment:<\/p>\n\n<ul class=\"wp-block-list\">\n<li>New MongoClient and MongoReplicaSet classes. They introduce the new safe default: waiting for write acknowledgements.<\/li>\n\n\n\n<li>Bug fixes that have happened after the introduction of 2.4.<\/li>\n<\/ul>\n\n<p class=\"wp-block-paragraph\">Our infrastructure engineers performed the upgrade on a live high-stress system without any issues.<\/p>\n\n<h2 class=\"wp-block-heading\">Upgrading PyMongo version<\/h2>\n\n<p class=\"wp-block-paragraph\">Well, by default the tests won\u2019t pass.\u00a0\u00a0You\u2019ll have to fix some import errors. For example,\u00a0objectidmodule has moved from pymongo to bson package. Otherwise the upgrade is pretty safe because the new default behavior is only present in the new connection classes.<\/p>\n\n<p class=\"wp-block-paragraph\">There is one serious caveat to be aware of: in this version 10Gen introduced the idea of Requests. The connection objects you get from pymongo are now bound to their calling thread by default. Our testing showed a performance degradation by a factor on 3! Your mileage may very, but either way, it\u2019s a\u00a0<i>very<\/i>\u00a0serious change of default behavior, we wish 10Gen was more explicit about this.<\/p>\n\n<h2 class=\"wp-block-heading\">Upgrading the servers<\/h2>\n\n<p class=\"wp-block-paragraph\">You should not be using MongoDB without replica sets. This gives you the ability to not only be resilient to hardware failures, but it also makes it possible to perform database version upgrades on the fly. These are the steps we follow:<\/p>\n\n<ul class=\"wp-block-list\">\n<li>Obviously, make sure you have fresh backup of your data. We make backups by shutting down one of the slaves, compacting it\u2019s database and sending the tar ball of the DB directory to <a href=\"http:\/\/www.rackspace.com\/cloud\/files\/\" target=\"_tabs\" rel=\"noopener noreferrer\">Rackspace Cloud Files<\/a>.<\/li>\n\n\n\n<li>Upgrade one slave at a time, while monitoring the status of a replica set.<\/li>\n\n\n\n<li>Finally, step down the master.<\/li>\n\n\n\n<li>Upgrade the master.<\/li>\n<\/ul>\n\n<p class=\"wp-block-paragraph\">All in all, very boring and uneventful procedure. Just like we like it when it comes to databases.<\/p>\n\n<p class=\"wp-block-paragraph\">\nTill next week.<\/p>\n\n<p class=\"wp-block-paragraph\">Happy Emailing,<br \/>\nThe Mailgunners<\/p>\n\r\n    <aside data-content-type=\"longform\"  class=\"banner-block longform-spacings rounded-lg shadow-lg px-5 py-6 px-md-6 py-md-7 p-lg-7 bg-light\" data-theme=\"dark\" aria-labelledby=\"banner-block-block_25fe9b6ed555fadcccbd34743ecc9cb0\">\r\n                    <p class=\"text-uppercase section-caption text-body-color\">\r\n                Let&#8217;s talk email            <\/p>\r\n                            <p class=\"h4 text-accent fw-bold\" id=\"banner-block-block_25fe9b6ed555fadcccbd34743ecc9cb0\">\r\n                Learn about our deliverability services            <\/p>\r\n                            <div class=\"mb-0 text-body-color\">\r\n                                    <div class=\"content-body mb-0 text-body-color\">See what you can accomplish with the world&#x27;s best email delivery platform and experts at your disposal.<\/div>\r\n                            <\/div>\r\n        \r\n        <div class=\"text-start mt-5\"><a href=\"https:\/\/www.mailgun.com\/es\/contacto\/ventas\/\"  class=\"btn btn-secondary\" >Talk to an expert today<\/a><\/div>\r\n    <\/aside>\r\n\r\n","protected":false},"excerpt":{"rendered":"<p>Esta semana nos hemos centrado en las mejoras del backend para que Mailgun tenga un mayor rendimiento, y sea m\u00e1s fiable y escalable. M\u00e1s informaci\u00f3n&#8230;<\/p>\n","protected":false},"author":13,"featured_media":4555,"menu_order":0,"template":"","meta":{"_acf_changed":false,"footnotes":""},"blog_category":[22],"class_list":["post-23654","blog","type-blog","status-publish","has-post-thumbnail","hentry","blog_category-product"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Actualizaci\u00f3n semanal de producto: actualizaci\u00f3n a MongoDB 2.4.1 - Transactional Email API Service For Developers | Mailgun<\/title>\n<meta name=\"description\" content=\"Esta semana nos hemos centrado en las mejoras del backend para que Mailgun tenga un mayor rendimiento, y sea m\u00e1s fiable y escalable. M\u00e1s informaci\u00f3n...\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.mailgun.com\/es\/blog\/product\/actualizacion-semanal-de-producto-actualizacion-a-mongodb-2-4-1\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Actualizaci\u00f3n semanal de producto: actualizaci\u00f3n a MongoDB 2.4.1 - Transactional Email API Service For Developers | Mailgun\" \/>\n<meta property=\"og:description\" content=\"Esta semana nos hemos centrado en las mejoras del backend para que Mailgun tenga un mayor rendimiento, y sea m\u00e1s fiable y escalable. M\u00e1s informaci\u00f3n...\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.mailgun.com\/es\/blog\/product\/actualizacion-semanal-de-producto-actualizacion-a-mongodb-2-4-1\/\" \/>\n<meta property=\"og:site_name\" content=\"Transactional Email API Service For Developers | Mailgun\" \/>\n<meta property=\"article:modified_time\" content=\"2026-09-16T10:55:45+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.mailgun.com\/wp-content\/uploads\/2025\/07\/MG-Blog-Product.png\" \/>\n\t<meta property=\"og:image:width\" content=\"720\" \/>\n\t<meta property=\"og:image:height\" content=\"448\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"3 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/blog\\\/product\\\/actualizacion-semanal-de-producto-actualizacion-a-mongodb-2-4-1\\\/\",\"url\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/blog\\\/product\\\/actualizacion-semanal-de-producto-actualizacion-a-mongodb-2-4-1\\\/\",\"name\":\"Actualizaci\u00f3n semanal de producto: actualizaci\u00f3n a MongoDB 2.4.1 - Transactional Email API Service For Developers | Mailgun\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/blog\\\/product\\\/actualizacion-semanal-de-producto-actualizacion-a-mongodb-2-4-1\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/blog\\\/product\\\/actualizacion-semanal-de-producto-actualizacion-a-mongodb-2-4-1\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.mailgun.com\\\/wp-content\\\/uploads\\\/2025\\\/07\\\/MG-Blog-Product.png\",\"datePublished\":\"2019-07-16T00:00:00+00:00\",\"dateModified\":\"2026-09-16T10:55:45+00:00\",\"description\":\"Esta semana nos hemos centrado en las mejoras del backend para que Mailgun tenga un mayor rendimiento, y sea m\u00e1s fiable y escalable. M\u00e1s informaci\u00f3n...\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/blog\\\/product\\\/actualizacion-semanal-de-producto-actualizacion-a-mongodb-2-4-1\\\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.mailgun.com\\\/es\\\/blog\\\/product\\\/actualizacion-semanal-de-producto-actualizacion-a-mongodb-2-4-1\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/blog\\\/product\\\/actualizacion-semanal-de-producto-actualizacion-a-mongodb-2-4-1\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.mailgun.com\\\/wp-content\\\/uploads\\\/2025\\\/07\\\/MG-Blog-Product.png\",\"contentUrl\":\"https:\\\/\\\/www.mailgun.com\\\/wp-content\\\/uploads\\\/2025\\\/07\\\/MG-Blog-Product.png\",\"width\":720,\"height\":448},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/blog\\\/product\\\/actualizacion-semanal-de-producto-actualizacion-a-mongodb-2-4-1\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Blog\",\"item\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Actualizaci\u00f3n semanal de producto: actualizaci\u00f3n a MongoDB 2.4.1\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/#website\",\"url\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/\",\"name\":\"Transactional Email API Service For Developers | Mailgun\",\"description\":\"Potentes API de email transaccional que te permiten enviar, recibir y hacer seguimiento de emails, creadas pensando en los desarrolladores. \u00a1Descubre m\u00e1s!\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/#organization\",\"name\":\"Transactional Email API Service For Developers | Mailgun\",\"url\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.mailgun.com\\\/wp-content\\\/uploads\\\/2025\\\/06\\\/cropped-android-chrome-512x512-1.png\",\"contentUrl\":\"https:\\\/\\\/www.mailgun.com\\\/wp-content\\\/uploads\\\/2025\\\/06\\\/cropped-android-chrome-512x512-1.png\",\"width\":512,\"height\":512,\"caption\":\"Transactional Email API Service For Developers | Mailgun\"},\"image\":{\"@id\":\"https:\\\/\\\/www.mailgun.com\\\/es\\\/#\\\/schema\\\/logo\\\/image\\\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Actualizaci\u00f3n semanal de producto: actualizaci\u00f3n a MongoDB 2.4.1 - Transactional Email API Service For Developers | Mailgun","description":"Esta semana nos hemos centrado en las mejoras del backend para que Mailgun tenga un mayor rendimiento, y sea m\u00e1s fiable y escalable. M\u00e1s informaci\u00f3n...","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.mailgun.com\/es\/blog\/product\/actualizacion-semanal-de-producto-actualizacion-a-mongodb-2-4-1\/","og_locale":"es_ES","og_type":"article","og_title":"Actualizaci\u00f3n semanal de producto: actualizaci\u00f3n a MongoDB 2.4.1 - Transactional Email API Service For Developers | Mailgun","og_description":"Esta semana nos hemos centrado en las mejoras del backend para que Mailgun tenga un mayor rendimiento, y sea m\u00e1s fiable y escalable. M\u00e1s informaci\u00f3n...","og_url":"https:\/\/www.mailgun.com\/es\/blog\/product\/actualizacion-semanal-de-producto-actualizacion-a-mongodb-2-4-1\/","og_site_name":"Transactional Email API Service For Developers | Mailgun","article_modified_time":"2026-09-16T10:55:45+00:00","og_image":[{"width":720,"height":448,"url":"https:\/\/www.mailgun.com\/wp-content\/uploads\/2025\/07\/MG-Blog-Product.png","type":"image\/png"}],"twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"3 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.mailgun.com\/es\/blog\/product\/actualizacion-semanal-de-producto-actualizacion-a-mongodb-2-4-1\/","url":"https:\/\/www.mailgun.com\/es\/blog\/product\/actualizacion-semanal-de-producto-actualizacion-a-mongodb-2-4-1\/","name":"Actualizaci\u00f3n semanal de producto: actualizaci\u00f3n a MongoDB 2.4.1 - Transactional Email API Service For Developers | Mailgun","isPartOf":{"@id":"https:\/\/www.mailgun.com\/es\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.mailgun.com\/es\/blog\/product\/actualizacion-semanal-de-producto-actualizacion-a-mongodb-2-4-1\/#primaryimage"},"image":{"@id":"https:\/\/www.mailgun.com\/es\/blog\/product\/actualizacion-semanal-de-producto-actualizacion-a-mongodb-2-4-1\/#primaryimage"},"thumbnailUrl":"https:\/\/www.mailgun.com\/wp-content\/uploads\/2025\/07\/MG-Blog-Product.png","datePublished":"2019-07-16T00:00:00+00:00","dateModified":"2026-09-16T10:55:45+00:00","description":"Esta semana nos hemos centrado en las mejoras del backend para que Mailgun tenga un mayor rendimiento, y sea m\u00e1s fiable y escalable. M\u00e1s informaci\u00f3n...","breadcrumb":{"@id":"https:\/\/www.mailgun.com\/es\/blog\/product\/actualizacion-semanal-de-producto-actualizacion-a-mongodb-2-4-1\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.mailgun.com\/es\/blog\/product\/actualizacion-semanal-de-producto-actualizacion-a-mongodb-2-4-1\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.mailgun.com\/es\/blog\/product\/actualizacion-semanal-de-producto-actualizacion-a-mongodb-2-4-1\/#primaryimage","url":"https:\/\/www.mailgun.com\/wp-content\/uploads\/2025\/07\/MG-Blog-Product.png","contentUrl":"https:\/\/www.mailgun.com\/wp-content\/uploads\/2025\/07\/MG-Blog-Product.png","width":720,"height":448},{"@type":"BreadcrumbList","@id":"https:\/\/www.mailgun.com\/es\/blog\/product\/actualizacion-semanal-de-producto-actualizacion-a-mongodb-2-4-1\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.mailgun.com\/es\/"},{"@type":"ListItem","position":2,"name":"Blog","item":"https:\/\/www.mailgun.com\/es\/blog\/"},{"@type":"ListItem","position":3,"name":"Actualizaci\u00f3n semanal de producto: actualizaci\u00f3n a MongoDB 2.4.1"}]},{"@type":"WebSite","@id":"https:\/\/www.mailgun.com\/es\/#website","url":"https:\/\/www.mailgun.com\/es\/","name":"Transactional Email API Service For Developers | Mailgun","description":"Potentes API de email transaccional que te permiten enviar, recibir y hacer seguimiento de emails, creadas pensando en los desarrolladores. \u00a1Descubre m\u00e1s!","publisher":{"@id":"https:\/\/www.mailgun.com\/es\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.mailgun.com\/es\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":"Organization","@id":"https:\/\/www.mailgun.com\/es\/#organization","name":"Transactional Email API Service For Developers | Mailgun","url":"https:\/\/www.mailgun.com\/es\/","logo":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.mailgun.com\/es\/#\/schema\/logo\/image\/","url":"https:\/\/www.mailgun.com\/wp-content\/uploads\/2025\/06\/cropped-android-chrome-512x512-1.png","contentUrl":"https:\/\/www.mailgun.com\/wp-content\/uploads\/2025\/06\/cropped-android-chrome-512x512-1.png","width":512,"height":512,"caption":"Transactional Email API Service For Developers | Mailgun"},"image":{"@id":"https:\/\/www.mailgun.com\/es\/#\/schema\/logo\/image\/"}}]}},"_links":{"self":[{"href":"https:\/\/www.mailgun.com\/es\/wp-json\/wp\/v2\/blog\/23654","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.mailgun.com\/es\/wp-json\/wp\/v2\/blog"}],"about":[{"href":"https:\/\/www.mailgun.com\/es\/wp-json\/wp\/v2\/types\/blog"}],"author":[{"embeddable":true,"href":"https:\/\/www.mailgun.com\/es\/wp-json\/wp\/v2\/users\/13"}],"version-history":[{"count":3,"href":"https:\/\/www.mailgun.com\/es\/wp-json\/wp\/v2\/blog\/23654\/revisions"}],"predecessor-version":[{"id":24093,"href":"https:\/\/www.mailgun.com\/es\/wp-json\/wp\/v2\/blog\/23654\/revisions\/24093"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.mailgun.com\/es\/wp-json\/wp\/v2\/media\/4555"}],"wp:attachment":[{"href":"https:\/\/www.mailgun.com\/es\/wp-json\/wp\/v2\/media?parent=23654"}],"wp:term":[{"taxonomy":"blog_category","embeddable":true,"href":"https:\/\/www.mailgun.com\/es\/wp-json\/wp\/v2\/blog_category?post=23654"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}