{"id":430,"date":"2012-09-19T08:28:19","date_gmt":"2012-09-19T11:28:19","guid":{"rendered":"http:\/\/www.agenciadewebsites.com.br\/?p=430"},"modified":"2012-09-19T08:32:34","modified_gmt":"2012-09-19T11:32:34","slug":"otimizando-o-mysql-usando-store-sessions-in-memory","status":"publish","type":"post","link":"https:\/\/www.agenciadewebsites.com.br\/?p=430","title":{"rendered":"Otimizando o MySQL, usando store sessions in memory"},"content":{"rendered":"<div id=\"fb_share_1\" style=\"float: right; margin-left: 10px;\"><a name=\"fb_share\" type=\"box_count\" share_url=\"https:\/\/www.agenciadewebsites.com.br\/?p=430\" href=\"http:\/\/www.facebook.com\/sharer.php\">Share<\/a><\/div>\n<div><script src=\"http:\/\/static.ak.fbcdn.net\/connect.php\/js\/FB.Share\" type=\"text\/javascript\"><\/script><\/div>\n<p>O Joomla! tem a capacidade de escolher o m\u00e9todo de armazenamento de sess\u00e3o: none (arquivo), APC, database, EAccelerator, Memcache e XCache manipuladores de armazenamento s\u00e3o poss\u00edveis. Mas, na verdade o Joomla! ainda armazena dados de sess\u00f5es no banco de dados e realiza tr\u00eas consultas SQL por cada carregamento da p\u00e1gina, mesmo se o cache est\u00e1 Ligado e armazenamento de sess\u00e3o n\u00e3o \u00e9 &#8221; database &#8216;.<\/p>\n<h2>reduzir a carga do MySQL<\/h2>\n<p>Como podemos resolver este problema e reduzir a carga do MySQL?<\/p>\n<p>jos_session table \u00e9 armazenado usando mecanismo de armazenamento MyISAM &#8211; vamos guardar essa tabela em mem\u00f3ria usando mecanismo de armazenamento MEMORY!<\/p>\n<p>Primeiro, precisamos mudar o tipo de data field porque mecanismo de armazenamento MEMORY n\u00e3o suporta colunas do tipo BLOB\/TEXT\u00a0:<\/p>\n<pre><span style=\"color: #ff0000;\">ALTER TABLE `jos_session` CHANGE `data` `data` VARCHAR( 5000 ) \r\nCHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL<\/span><\/pre>\n<p>\u00e9 geralmente suficiente para lidar com os dados da sess\u00e3o, voc\u00ea pode configurar mais se tendo problemas (se n\u00e3o conseguir fazer o login) ou a configura\u00e7\u00e3o para 0 se o seu m\u00e9todo de armazenamento de sess\u00e3o Joomla n\u00e3o \u00e9 &#8220;database&#8221;.<br \/>\nAgora vamos mudar o motor:<\/p>\n<p><span style=\"color: #ff0000;\">ALTER TABLE `jos_session` TYPE = memory<\/span><\/p>\n<p>O Mecanismo MEMORY MySQL \u00e9 muito mais r\u00e1pido do que MyISAM. A \u00fanica coisa \u00e9 que as sess\u00f5es ser\u00e3o perdidas se o servidor cair. Mas em 99,9999999999999999999\u00a0% voc\u00ea n\u00e3o precisa tomar cuidado com isso, os usu\u00e1rios ter\u00e3o apenas fazer o re- login.<\/p>\n<p>Todas estas opera\u00e7\u00f5es podem ser facilmente realizado em phpMyAdmin.<\/p>\n<p>Al\u00e9m disso, na maioria dos sites a tabela jos_session geralmente tem overhead e requer otimiza\u00e7\u00e3o &#8211; o mecanismo MEMORY vai ajudar a evitar isso.<\/p>\n<p>Overhead pode levar \u00e0 corrup\u00e7\u00e3o de banco de dados e voc\u00ea n\u00e3o ser\u00e1 ainda capaz de login no backend, \u00e9 por isso que voc\u00ea precisa para otimizar as tabelas MySQL e especialmente jos_session regularmente.<\/p>\n<p><strong>Fonte: JoomlaClube<\/strong><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Share O Joomla! tem a capacidade de escolher o m\u00e9todo de armazenamento de sess\u00e3o: none (arquivo), APC, database, EAccelerator, Memcache e XCache manipuladores de armazenamento s\u00e3o poss\u00edveis. Mas, na verdade o Joomla! ainda armazena dados de sess\u00f5es no banco de dados e realiza tr\u00eas consultas SQL por cada carregamento da p\u00e1gina, mesmo se o cache [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[10],"tags":[],"_links":{"self":[{"href":"https:\/\/www.agenciadewebsites.com.br\/index.php?rest_route=\/wp\/v2\/posts\/430"}],"collection":[{"href":"https:\/\/www.agenciadewebsites.com.br\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.agenciadewebsites.com.br\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.agenciadewebsites.com.br\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.agenciadewebsites.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=430"}],"version-history":[{"count":9,"href":"https:\/\/www.agenciadewebsites.com.br\/index.php?rest_route=\/wp\/v2\/posts\/430\/revisions"}],"predecessor-version":[{"id":439,"href":"https:\/\/www.agenciadewebsites.com.br\/index.php?rest_route=\/wp\/v2\/posts\/430\/revisions\/439"}],"wp:attachment":[{"href":"https:\/\/www.agenciadewebsites.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=430"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.agenciadewebsites.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=430"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.agenciadewebsites.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=430"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}