{"id":55231,"date":"2020-01-16T00:00:00","date_gmt":"2020-01-15T21:00:00","guid":{"rendered":"https:\/\/prohoster.info\/blog\/blog_prohoster\/pro-multitenancy"},"modified":"2020-02-18T14:03:19","modified_gmt":"2020-02-18T11:03:19","slug":"pro-multitenancy","status":"publish","type":"post","link":"https:\/\/prohoster.info\/es\/blog\/administrirovanie\/pro-multitenancy","title":{"rendered":"Sobre la multitenencia","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Lamentablemente, este t\u00e9rmino no tiene un buen equivalente en ruso. Wikipedia proporciona <noindex><a rel=\"nofollow\" href=\"http:\/\/ru.wikipedia.org\/wiki\/%D0%9C%D1%83%D0%BB%D1%8C%D1%82%D0%B8%D0%B0%D1%80%D0%B5%D0%BD%D0%B4%D0%BD%D0%BE%D1%81%D1%82%D1%8C\">la traducci\u00f3n<\/a><\/noindex> \u00abmultitenencia, alquiler m\u00faltiple\u00bb. A veces se le llama \u00abpropiedad m\u00faltiple\u00bb. Estos t\u00e9rminos pueden ser algo confusos, ya que el tema no se relaciona esencialmente con el alquiler o la propiedad. Es realmente una cuesti\u00f3n de arquitectura de software y organizaci\u00f3n de su explotaci\u00f3n. Y esta \u00faltima no es menos importante. <\/p>\n<p>Comenzamos a formar nuestra comprensi\u00f3n de multitenencia al mismo tiempo que comenzamos a dise\u00f1ar el enfoque para el modelo de trabajo en la nube (servicio) de \u00ab1C:Enterprise\u00bb. Esto fue hace varios a\u00f1os. Desde entonces, nuestra comprensi\u00f3n se ha ido ampliando constantemente. Descubrimos continuamente nuevos aspectos de este tema (ventajas, desventajas, dificultades, caracter\u00edsticas, etc.). <\/p>\n<p><img decoding=\"async\" alt=\"Sobre la multitenencia\" src=\"\/wp-content\/uploads\/2020\/01\/a14e60822b948ecd079722ed828f853f.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\nA veces, los desarrolladores entienden por multitenencia un concepto bastante simple: \u00abpara que los datos de varias organizaciones se almacenen en una sola base, es necesario agregar una columna con el identificador de la organizaci\u00f3n en todas las tablas y establecer un filtro sobre ella\u00bb. Tambi\u00e9n, por supuesto, comenzamos nuestro estudio sobre este tema desde este punto. Pero r\u00e1pidamente nos dimos cuenta de que esto es solo un \u00e1rea (que tambi\u00e9n, por cierto, no es sencilla). En general, es \u00abtodo un pa\u00eds\u00bb. <\/p>\n<p>La idea principal de la multitenencia se puede describir de esta manera. Una aplicaci\u00f3n com\u00fan es una caba\u00f1a, dise\u00f1ada para el alojamiento de una sola familia, que utiliza su infraestructura (paredes, techo, suministro de agua, calefacci\u00f3n, etc.). Una aplicaci\u00f3n de multitenencia es un edificio de apartamentos. En \u00e9l, cada familia utiliza el mismo conjunto de infraestructura, pero la infraestructura est\u00e1 implementada para todo el edificio en su conjunto. <\/p>\n<p>\u00bfEs un enfoque de multitenencia bueno o malo? Se pueden encontrar opiniones muy diversas al respecto. Parece que no existe un \u00abbueno o malo\u00bb en absoluto. Se deben comparar las ventajas y desventajas en el contexto de tareas espec\u00edficas a resolver. Pero ese es un tema aparte... <\/p>\n<p>En su comprensi\u00f3n m\u00e1s simple, el objetivo de la multitenencia es reducir los costos de mantenimiento de la aplicaci\u00f3n mediante la \u00absocializaci\u00f3n\u00bb de los gastos de infraestructura. Es un movimiento similar a la reducci\u00f3n del costo de la aplicaci\u00f3n a trav\u00e9s de la implementaci\u00f3n de una soluci\u00f3n de volumen (posiblemente, con ajustes y modificaciones), en lugar de desarrollarla \u00aba medida\u00bb. Solo que en un caso se socializa el desarrollo, y en el otro, la explotaci\u00f3n. <\/p>\n<p>Cabe mencionar que no hay un v\u00ednculo directo con el m\u00e9todo de venta. La arquitectura de multitenancy puede aplicarse perfectamente en la infraestructura IT de corporaciones o instituciones para automatizar un gran n\u00famero de filiales homog\u00e9neas, empresas de un holding. <\/p>\n<p>Se puede decir que el multitenancy no es solo una cuesti\u00f3n de organizaci\u00f3n del almacenamiento de datos. Es todo un modelo de funcionamiento de la aplicaci\u00f3n (incluyendo una parte significativa de los aspectos de su arquitectura, el modelo de despliegue y la organizaci\u00f3n del mantenimiento). <\/p>\n<p>Lo m\u00e1s complicado e interesante de la modelo de multitenancy, en nuestra opini\u00f3n, es que la esencia de la aplicaci\u00f3n se 'duplica'. Una parte de la funcionalidad trabaja con \u00e1reas de datos espec\u00edficas (apartamentos) y 'no se interesa' por los inquilinos en otros apartamentos. Mientras que otra parte percibe el edificio en su totalidad y trabaja simult\u00e1neamente para todos los inquilinos. Sin embargo, esta \u00faltima no puede abstraerse de que, en definitiva, se trata de apartamentos individuales, y es necesario asegurar un nivel requerido de granularidad y seguridad. <\/p>\n<p>En '1C:Empresa', el modelo de multitenancy se implementa a trav\u00e9s de varias tecnolog\u00edas. Son los mecanismos de la plataforma '1C:Empresa', los mecanismos '<noindex><a rel=\"nofollow\" href=\"http:\/\/www.1c.ru\/news\/info.jsp?id=16065\">1C:Tecnolog\u00eda de publicaci\u00f3n de soluciones 1cFresh<\/a><\/noindex>\u00bb y \u00ab<noindex><a rel=\"nofollow\" href=\"http:\/\/www.1c.ru\/news\/info.jsp?id=15382\">1C:Tecnolog\u00eda de desarrollo de soluciones 1cFresh<\/a><\/noindex>', los mecanismos <noindex><a rel=\"nofollow\" href=\"http:\/\/v8.1c.ru\/libraries\/ssl\/index.htm\">BSP<\/a><\/noindex> (bibliotecas de subsistemas est\u00e1ndar). <\/p>\n<p>Cada uno de estos elementos contribuye a construir la infraestructura general de un edificio de apartamentos. \u00bfPor qu\u00e9 se implementa en varias tecnolog\u00edas y no en una sola, por ejemplo, en la plataforma? Principalmente porque parte de los mecanismos, en nuestra opini\u00f3n, se puede modificar adecuadamente seg\u00fan la variante de despliegue. Pero en t\u00e9rminos generales, esta es una cuesti\u00f3n compleja, y constantemente nos enfrentamos a la decisi\u00f3n de a qu\u00e9 nivel es mejor implementar cada aspecto del multitenancy. <\/p>\n<p>Es evidente que la parte b\u00e1sica de los mecanismos deb\u00eda implementarse en la plataforma. Por ejemplo, la propia separaci\u00f3n de datos. Es de donde generalmente comienza la conversaci\u00f3n sobre multitenancy. Pero al final, el modelo de multitenancy 'ha recorrido' una parte significativa de los mecanismos de la plataforma y ha requerido su mejora, y en algunos casos, una reconsideraci\u00f3n. <\/p>\n<p>A nivel de plataforma, hemos implementado los mecanismos b\u00e1sicos. Estos permiten crear aplicaciones que funcionan en un modelo de multitenencia. Sin embargo, para que las aplicaciones \"vivan y funcionen\" en este modelo, es necesario contar con un sistema que gestione su \"vida \u00fatil\". Esto es responsabilidad de las tecnolog\u00edas 1cFresh y de la capa unificada de l\u00f3gica de negocio a nivel de BSP. Al igual que en un edificio de apartamentos, donde la infraestructura proporciona a los residentes todo lo necesario, las tecnolog\u00edas 1cFresh aseguran que las aplicaciones que operan en el modelo de multitenencia dispongan de lo que requieren. Y para que las aplicaciones puedan interactuar con esta infraestructura (sin modificaciones significativas), se integran \"conectores\" correspondientes en forma de subsistemas BSP. <\/p>\n<p>Desde el punto de vista de los mecanismos de la plataforma, es f\u00e1cil notar que, a medida que obtenemos experiencia y desarrollamos la variante en la nube de \"1C:Enterprise\", ampliamos el conjunto de mecanismos involucrados en esta arquitectura. Un ejemplo es que en el modelo de multitenencia, cambia dr\u00e1sticamente la distribuci\u00f3n de roles de los participantes en el mantenimiento de aplicaciones. Aumenta considerablemente el papel (nivel de responsabilidad) de quienes son responsables de la explotaci\u00f3n de las aplicaciones. Estos ahora necesitan contar con herramientas de control m\u00e1s potentes. Porque los usuarios de las aplicaciones (residentes) conf\u00edan principalmente en el proveedor con el que trabajan. Para ello, hemos implementado en la versi\u00f3n 8.3 un nuevo <noindex><a rel=\"nofollow\" href=\"https:\/\/wonderland.v8.1c.ru\/blog\/profili-bezopasnosti\/?sphrase_id=12972\">mecanismo de perfiles de seguridad<\/a><\/noindex>. Este mecanismo permite a los administradores del proveedor limitar la libertad de los desarrolladores de aplicaciones al nivel de seguridad necesario, aislando en esencia el trabajo de la aplicaci\u00f3n para cada residente dentro de ciertos marcos de una \"sandbox\". <\/p>\n<p>La arquitectura para la gesti\u00f3n de aplicaciones que operan en modo multitenancy (como se implementa en las tecnolog\u00edas 1cFresh y BSC) es de igual inter\u00e9s. En comparaci\u00f3n con el modelo de implementaci\u00f3n tradicional, las exigencias de automatizaci\u00f3n de los procesos de gesti\u00f3n aumentan significativamente. Existen decenas de estos procesos: la creaci\u00f3n de nuevas \u00e1reas de datos (\u2018apartamentos\u2019), la actualizaci\u00f3n de aplicaciones, la actualizaci\u00f3n de informaci\u00f3n normativa, copias de seguridad, etc. Y, por supuesto, aumentan las exigencias en cuanto a fiabilidad y disponibilidad. Por ejemplo, para asegurar la interacci\u00f3n fiable entre aplicaciones y componentes del sistema de gesti\u00f3n, hemos implementado la tecnolog\u00eda de sistema de llamadas as\u00edncronas con entrega garantizada. <\/p>\n<p>Un aspecto muy delicado es la forma de compartir datos y procesos. Esto puede parecer sencillo (si alguien lo percibe as\u00ed) a primera vista. La mayor complejidad radica en encontrar un equilibrio entre la centralizaci\u00f3n de datos y procesos y la descentralizaci\u00f3n. Por un lado, la centralizaci\u00f3n permite reducir costos (espacio en disco, recursos del procesador, esfuerzos de los administradores, etc.). Por otro lado, limita la libertad de los \u2018inquilinos\u2019. Este es precisamente uno de los momentos de \u2018divisi\u00f3n\u2019 de la aplicaci\u00f3n, donde el desarrollador debe pensar simult\u00e1neamente en la aplicaci\u00f3n en un sentido estricto (que atiende a un solo \u2018apartamento\u2019) y en un sentido amplio (que atiende a todos los \u2018inquilinos\u2019). <\/p>\n<p>Como ejemplo de tal \u2018dilema\u2019, podemos citar la informaci\u00f3n normativa y de referencia. Ciertamente, existe la seducci\u00f3n de hacerla com\u00fan para todos los \u2018inquilinos\u2019 del edificio. Esto permite almacenarla en un solo ejemplar y actualizarla de inmediato para todos. Pero puede suceder que alg\u00fan inquilino necesite cambios espec\u00edficos. Curiosamente, esto ocurre en la pr\u00e1ctica, incluso para la informaci\u00f3n que est\u00e1 especificada por los reguladores (organismos gubernamentales). Surge la pregunta complicada: \u00bfcompartir o no compartir? Por supuesto, es tentador crear informaci\u00f3n general para todos y privada para quienes lo deseen. Pero eso lleva a una implementaci\u00f3n bastante complicada. No obstante, estamos trabajando en ello\u2026 <\/p>\n<p>Otro ejemplo es el dise\u00f1o de la implementaci\u00f3n de procesos regulares (realizados seg\u00fan un horario, iniciados por el sistema de gesti\u00f3n, etc.). Por un lado, se pueden implementar por separado para cada \u00e1rea de datos. Esto es m\u00e1s simple y conveniente. Pero, por otro lado, tal granularidad crea una gran carga en el sistema. Para reducir la carga, es necesario implementar procesos comunitarios. Pero requieren una elaboraci\u00f3n m\u00e1s cuidadosa. <\/p>\n<p>Por supuesto, surge una pregunta muy importante. \u00bfC\u00f3mo pueden los desarrolladores de aplicaciones garantizar el funcionamiento en modo multitenencia? \u00bfQu\u00e9 deben hacer para lograrlo? Claro, buscamos que la carga de cuestiones tecnol\u00f3gicas e infraestructurales recaiga lo m\u00e1s posible sobre la tecnolog\u00eda proporcionada, y que el desarrollador de la aplicaci\u00f3n solo se preocupe por la l\u00f3gica del negocio. Pero al igual que con otras preguntas arquitect\u00f3nicas clave, los desarrolladores de aplicaciones deben tener alg\u00fan conocimiento sobre el funcionamiento en el modelo de multitenencia y se requerir\u00e1n ciertos esfuerzos al desarrollar aplicaciones. \u00bfPor qu\u00e9? Porque hay aspectos que la tecnolog\u00eda no puede gestionar autom\u00e1ticamente sin tener en cuenta la sem\u00e1ntica de los datos. Por ejemplo, la definici\u00f3n de los l\u00edmites de la compartici\u00f3n de informaci\u00f3n. Pero nos esforzamos por mantener estas complejidades al m\u00ednimo. Ya existen ejemplos de la implementaci\u00f3n de tales aplicaciones. <\/p>\n<p>Un aspecto importante en el contexto de la implementaci\u00f3n de multitenencia en \"1C:Enterprise\" es que creamos un modelo h\u00edbrido en el que una aplicaci\u00f3n puede funcionar tanto en modo multitenencia como en modo normal. Esta es una tarea bastante complicada y es un tema de discusi\u00f3n aparte.<br \/>\n<br \/>Fuente: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/1c\/blog\/326654\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041a \u0441\u043e\u0436\u0430\u043b\u0435\u043d\u0438\u044e, \u0443 \u044d\u0442\u043e\u0433\u043e \u0442\u0435\u0440\u043c\u0438\u043d\u0430 \u043d\u0435\u0442 \u0445\u043e\u0440\u043e\u0448\u0435\u0433\u043e \u0440\u0443\u0441\u0441\u043a\u043e\u044f\u0437\u044b\u0447\u043d\u043e\u0433\u043e \u0430\u043d\u0430\u043b\u043e\u0433\u0430. \u00ab\u0412\u0438\u043a\u0438\u043f\u0435\u0434\u0438\u044f\u00bb \u0434\u0430\u0435\u0442 \u043f\u0435\u0440\u0435\u0432\u043e\u0434 \u00ab\u043c\u0443\u043b\u044c\u0442\u0438\u0430\u0440\u0435\u043d\u0434\u043d\u043e\u0441\u0442\u044c, \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u0430\u044f \u0430\u0440\u0435\u043d\u0434\u0430\u00bb. \u0418\u043d\u043e\u0433\u0434\u0430 \u044d\u0442\u043e \u043d\u0430\u0437\u044b\u0432\u0430\u044e\u0442 \u00ab\u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u043c \u0432\u043b\u0430\u0434\u0435\u043d\u0438\u0435\u043c\u00bb. \u042d\u0442\u0438 \u0442\u0435\u0440\u043c\u0438\u043d\u044b \u043c\u043e\u0433\u0443\u0442 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043f\u0443\u0442\u0430\u0442\u044c, \u0442\u0430\u043a \u043a\u0430\u043a \u043f\u0440\u0435\u0434\u043c\u0435\u0442 \u043d\u0435 \u0441\u0432\u044f\u0437\u0430\u043d \u043f\u043e \u0441\u0443\u0442\u0438 \u043d\u0438 \u0441 \u0430\u0440\u0435\u043d\u0434\u043e\u0439, \u043d\u0438 \u0441 \u0432\u043b\u0430\u0434\u0435\u043d\u0438\u0435\u043c. \u042d\u0442\u043e \u0432\u043e\u043f\u0440\u043e\u0441 \u0438\u043c\u0435\u043d\u043d\u043e \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u044b \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0433\u043e \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0435\u043d\u0438\u044f \u0438 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u0438 \u0435\u0433\u043e \u044d\u043a\u0441\u043f\u043b\u0443\u0430\u0442\u0430\u0446\u0438\u0438. \u041f\u0440\u0438\u0447\u0435\u043c \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0435 \u043d\u0435 \u043c\u0435\u043d\u0435\u0435 \u0432\u0430\u0436\u043d\u043e. \u041c\u044b \u043d\u0430\u0447\u0430\u043b\u0438 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":55232,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-55231","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041a \u0441\u043e\u0436\u0430\u043b\u0435\u043d\u0438\u044e, \u0443 \u044d\u0442\u043e\u0433\u043e \u0442\u0435\u0440\u043c\u0438\u043d\u0430 \u043d\u0435\u0442 \u0445\u043e\u0440\u043e\u0448\u0435\u0433\u043e \u0440\u0443\u0441\u0441\u043a\u043e\u044f\u0437\u044b\u0447\u043d\u043e\u0433\u043e \u0430\u043d\u0430\u043b\u043e\u0433\u0430.\" \/>\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\/administrirovanie\/pro-multitenancy\" \/>\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\udd47\u041f\u0440\u043e multitenancy | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041a \u0441\u043e\u0436\u0430\u043b\u0435\u043d\u0438\u044e, \u0443 \u044d\u0442\u043e\u0433\u043e \u0442\u0435\u0440\u043c\u0438\u043d\u0430 \u043d\u0435\u0442 \u0445\u043e\u0440\u043e\u0448\u0435\u0433\u043e \u0440\u0443\u0441\u0441\u043a\u043e\u044f\u0437\u044b\u0447\u043d\u043e\u0433\u043e \u0430\u043d\u0430\u043b\u043e\u0433\u0430.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/es\/blog\/administrirovanie\/pro-multitenancy\" \/>\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=\"2020-01-15T21:00:00+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-02-18T11:03:19+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\udd47Sobre la multitenencia | ProHoster","description":"Lamentablemente, este t\u00e9rmino no tiene un buen equivalente en espa\u00f1ol.","canonical_url":"https:\/\/prohoster.info\/es\/blog\/administrirovanie\/pro-multitenancy","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\udd47\u041f\u0440\u043e multitenancy | ProHoster","og:description":"\u041a \u0441\u043e\u0436\u0430\u043b\u0435\u043d\u0438\u044e, \u0443 \u044d\u0442\u043e\u0433\u043e \u0442\u0435\u0440\u043c\u0438\u043d\u0430 \u043d\u0435\u0442 \u0445\u043e\u0440\u043e\u0448\u0435\u0433\u043e \u0440\u0443\u0441\u0441\u043a\u043e\u044f\u0437\u044b\u0447\u043d\u043e\u0433\u043e \u0430\u043d\u0430\u043b\u043e\u0433\u0430.","og:url":"https:\/\/prohoster.info\/es\/blog\/administrirovanie\/pro-multitenancy","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":"2020-01-15T21:00:00+00:00","article:modified_time":"2020-02-18T11:03:19+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"55231","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":null,"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":"2021-02-28 19:47:39","updated":"2022-09-29 20:30:21","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\/55231","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=55231"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts\/55231\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/media\/55232"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/media?parent=55231"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/categories?post=55231"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/tags?post=55231"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}