[{"data":1,"prerenderedAt":201},["ShallowReactive",2],{"case-study-performance-reliability":3},{"_path":4,"_dir":5,"_draft":6,"_partial":6,"_locale":7,"title":8,"description":7,"area":9,"summary":10,"order":11,"body":12,"_type":195,"_id":196,"_source":197,"_file":198,"_stem":199,"_extension":200},"\u002Fes\u002Fcase-studies\u002Fperformance-reliability","case-studies",false,"","Performance y confiabilidad bajo carga","Performance","Reducí una query crítica de base de datos de 30s a ~2s, fortalecí un camino de caché corrupto, y ejecuté 100+ hotfixes a producción con cambios disciplinados y reversibles.",3,{"type":13,"children":14,"toc":187},"root",[15,35,44,51,56,62,107,113,136,142,147,153],{"type":16,"tag":17,"props":18,"children":19},"element","blockquote",{},[20],{"type":16,"tag":21,"props":22,"children":23},"p",{},[24,27,33],{"type":25,"value":26},"text","Extracto sanitizado de trabajo comercial en ",{"type":16,"tag":28,"props":29,"children":30},"strong",{},[31],{"type":25,"value":32},"Salutte2 (Alephoo HDE)",{"type":25,"value":34}," — un SaaS\nde historia clínica electrónica donde algunas clínicas procesan hasta 30.000\nturnos\u002Fdía. No se divulga código propietario.",{"type":16,"tag":21,"props":36,"children":37},{},[38],{"type":16,"tag":39,"props":40,"children":43},"img",{"alt":41,"src":42},"Optimización de query lenta: 30s a ~2s","\u002Fdiagrams\u002Fperf-query.svg",[],{"type":16,"tag":45,"props":46,"children":48},"h2",{"id":47},"contexto",[49],{"type":25,"value":50},"Contexto",{"type":16,"tag":21,"props":52,"children":53},{},[54],{"type":25,"value":55},"A escala, algunas queries lentas y un par de incidentes de caché corrupto\ndegradaron la experiencia en las clínicas de mayor volumen. La confiabilidad es\ncrítica en software de salud — un flujo de turnos degradado bloquea a los\npacientes.",{"type":16,"tag":45,"props":57,"children":59},{"id":58},"lo-que-hice",[60],{"type":25,"value":61},"Lo que hice",{"type":16,"tag":63,"props":64,"children":65},"ul",{},[66,77,87,97],{"type":16,"tag":67,"props":68,"children":69},"li",{},[70,75],{"type":16,"tag":28,"props":71,"children":72},{},[73],{"type":25,"value":74},"Reducí queries críticas de base de datos de >30s a ~2s (~15×)",{"type":25,"value":76}," reescribiéndolas\ny agregando los índices correctos — la métrica más citada de este trabajo.",{"type":16,"tag":67,"props":78,"children":79},{},[80,85],{"type":16,"tag":28,"props":81,"children":82},{},[83],{"type":25,"value":84},"Diagnosticué y corregí incidentes de caché corrupto",{"type":25,"value":86}," y fortalecí el camino de\ncaché.",{"type":16,"tag":67,"props":88,"children":89},{},[90,95],{"type":16,"tag":28,"props":91,"children":92},{},[93],{"type":25,"value":94},"100+ deploys y hotfixes a producción",{"type":25,"value":96},", incluyendo respuesta a incidentes\nurgentes.",{"type":16,"tag":67,"props":98,"children":99},{},[100,105],{"type":16,"tag":28,"props":101,"children":102},{},[103],{"type":25,"value":104},"Centralicé el monitoreo de errores en Sentry",{"type":25,"value":106}," para que las regresiones se\ndetecten inmediatamente en lugar de por reportes de usuarios.",{"type":16,"tag":45,"props":108,"children":110},{"id":109},"decisiones-que-vale-la-pena-defender",[111],{"type":25,"value":112},"Decisiones que vale la pena defender",{"type":16,"tag":63,"props":114,"children":115},{},[116,126],{"type":16,"tag":67,"props":117,"children":118},{},[119,124],{"type":16,"tag":28,"props":120,"children":121},{},[122],{"type":25,"value":123},"Medir y después optimizar.",{"type":25,"value":125}," La mejora de 30s→2s provino de identificar las\nqueries ofensoras reales (mediante análisis de slow queries), no de indexación\nespeculativa.",{"type":16,"tag":67,"props":127,"children":128},{},[129,134],{"type":16,"tag":28,"props":130,"children":131},{},[132],{"type":25,"value":133},"Tratar el acceso a producción como una skill de primera",{"type":25,"value":135}," — hotfixes\ndisciplinados, chicos y reversibles bajo presión, sin heroicos.",{"type":16,"tag":45,"props":137,"children":139},{"id":138},"resultado",[140],{"type":25,"value":141},"Resultado",{"type":16,"tag":21,"props":143,"children":144},{},[145],{"type":25,"value":146},"UX materialmente mejor en clínicas de alto volumen y detección y resolución de\nincidentes más rápida en toda la plataforma.",{"type":16,"tag":45,"props":148,"children":150},{"id":149},"evidencia-metadatos-públicos-de-prs",[151],{"type":25,"value":152},"Evidencia (metadatos públicos de PRs)",{"type":16,"tag":63,"props":154,"children":155},{},[156,170,175],{"type":16,"tag":67,"props":157,"children":158},{},[159,161,168],{"type":25,"value":160},"PR #13795 — ",{"type":16,"tag":162,"props":163,"children":165},"code",{"className":164},[],[166],{"type":25,"value":167},"Production mejoras slow queries",{"type":25,"value":169},".",{"type":16,"tag":67,"props":171,"children":172},{},[173],{"type":25,"value":174},"PR #13468 — fix de caché corrupto.",{"type":16,"tag":67,"props":176,"children":177},{},[178,180,186],{"type":25,"value":179},"100+ PRs etiquetados ",{"type":16,"tag":162,"props":181,"children":183},{"className":182},[],[184],{"type":25,"value":185},"Production",{"type":25,"value":169},{"title":7,"searchDepth":188,"depth":188,"links":189},2,[190,191,192,193,194],{"id":47,"depth":188,"text":50},{"id":58,"depth":188,"text":61},{"id":109,"depth":188,"text":112},{"id":138,"depth":188,"text":141},{"id":149,"depth":188,"text":152},"markdown","content:es:case-studies:performance-reliability.md","content","es\u002Fcase-studies\u002Fperformance-reliability.md","es\u002Fcase-studies\u002Fperformance-reliability","md",1788209838717]