Administrare server open source

Platforma de hosting cu software liber, gratuit, open source.

Cu totii am fost nevoiti sa achizitionam produse online prin intermediul site-urilor de tip eCommerce, fie datorita faptului ca produsul pe care il cautam nu era disponibil la magazinele din preajma noastra, sau pur si simplu datorita orarului supraincarcat care nu ne-a permis efectuarea unei deplasari in oras. Daca am efectuat o astfel de tranzactie in preajma sarbatorilor de iarna, sau pur si simplu am avut ghinionul sa accesam un astfel de magazin online intr-o zi foarte ‘aglomerata’ am observat probabil ca acesta se incarca foarte greu. Personal, am fost dea dreptul iritat atunci cand conexiunea a fost intrerupta pentru a 3-ea oara cand am incercat sa comand un produs. Pentru utilizatori acest lucru este foarte frustrant, iar studiile arata ca aproximativ 36% din useri prefera sa caute un alt magazin online daca cel pe care il acceseaza, daca acesta se incarca incet, sau conexiunea este pierduta in timpul efectuarii unei tranzactii. De aceea este foarte important ca site-ul nostru de eCommerce sa functioneze cat mai bine, si cu cat mai putine probleme.

Memcached si Magento

In articolele precedente am vorbit despre Memcached, un sistem de gestionare a memoriei gratuit ce sporeste viteza de incarcare a paginilor. De aceasta data vom incerca sa integram Memcached intr-un sistem open source de eCommerce destul de cunoscut, si anume Magento. Motivul pentru care am ales Magento se datoreaza faptului ca, incetul cu incetul, acesta a ajuns sa reprezinte standardul unui magazin online. Inainte sa incep sa vorbesc despre implementarea sistemului de cache, permiteti-mi sa vorbesc un pic despre Magento.

Magento

Magento reprezinta o platforma eCommerce ‘pentru crestere economica’, open-source, disponibila in 3 variante: Community, Professional, si Enterprise, prima dintre acestea fiind gratuita, dar totodata limitata la nivelul de asistenta(support) cat si feature-uri, dar accesibila interprinzatorilor mici. Aceasta platforma contine o sumedenie de unelte pe cat de utile, pe atat de interesante, unele dintre ele automatizand munca de zi cu zi pentru administrator, integrand diferite tipuri de optiuni care confera o portabilitate si scalabilitate necesara pentru promovarea produselor. Printre aceste se numara si:

  • integrarea diferitelor servici de e-payment precum paypal
  • un sistem de analiza si rapoarte detaliate despre tranzactiile efectuate
  • un sistem de gestionare avansat al utilizatorilor cu reprezentare grafica a actiunilor(precum tranzactii efectuate sau anulate, pagini si produse vizitate, etc)
  • integrarea platformei cu telefoanele mobile, aceasta fiind prezentata intr-o interfata usor de navigat (iPhone-ready)
  • suport pentru diferite etaloane monetare(inclusiv Leul romanesc)
  • Pe langa optiunile ce pot fi utilizate odata cu instalarea platformei, Magento ofera posibilitatea de a extinde functionalitatea shop-ului prin intermediul extensiilor, posibilitatile de costumizare fiind aproape nelimitate. Astfel orice administrator poate anexa un blog, un forum, sau poate integra diferite aplicatii de social networking precum Twitter sau Facebook, pentru promovarea produselor. De asemenea, Magento contine diferite front end-uri pentru o gramada de aplicatii si servici ce pot fii integrate, printre care si 3 tipuri de sisteme de cache, Memcached fiind unul dintre acestea.

    Integrare Memcached in Magento 1.4.1.0

    Pentru a realiza conexiunea cu serverul de Memcached nu este nevoie decat sa editam fisierul local.xml, generat odata cu instalarea platformei Magento. Pentru acest lucru trebuie sa tinem cont de ip-ul serverului Memcached, si portul pe care acesta asculta. In cazul de fata Memcached ruleaza pe un server local(locahost) si asteapta conexiunile prin intermediul portului default (11211). Fisierul local.xml poate fi localizat in folderul unde este instalat Magento. Nu ramane decat sa adaugam setarile necesare intre tag-urile <global> si </global>, calea fiind urmatoarea:

    [lamp@localhost]$ cd /calea/catre/magento/app/etc
    [lamp@localhost]$ vim local.xml

    Bucata de cod XML pe care dorim sa o inseram este urmatoarea:

    <global>
    . . . . . . . . . . 
    <cache>
    <backend>memcached</backend>
    <memcached>
    <servers>
    <server>
    <host><![CDATA[127.0.0.1]]></host>
    <port><![CDATA[11211]]></port>
    <persistent><![CDATA[1]]></persistent>
    </server>
    </servers>
    <compression><![CDATA[0]]></compression>
    <cache_dir><![CDATA[]]></cache_dir>
    <hashed_directory_level><![CDATA[]]></hashed_directory_level>
    <hashed_directory_umask><![CDATA[]]></hashed_directory_umask>
    <file_name_prefix><![CDATA[]]></file_name_prefix>
    </memcached>
    </cache>
     
    </global>
    Linux

    4 Responses so far.

    1. Catalin says:

      Foarte util tutorialul. Adevarul este ca Magento este un mare consumator de memorie. Am testat cateva scripturi de shopuri online. Magento arata foarte bine insa nu face fata la trafic masiv decat daca este postat pe un VPS. Poate doar versiunile noi sa fi fost imbunatatite (fara redundante in cod) insa acum vreo 6 luni, cam asta era problema Magento.

    2. Sergiu Tot says:

      Problema cu Magento inca persista. Din pacate asa e. Consuma foarte multe resurse si de obicei magazinele bazate pe Magento nu rezista prea mult pe servere de shared hosting.

    3. Laurentiu says:

      Ce anume imi recomanzi pentru a sustine un site pe platforma Magento? Un vps sau dedicat?

    4. Velix says:

      Platforma opencart pare a fi mai indemanul tuturor. Depinde acum de fiecare, subiectul este destul de subiectiv.