un blog de Radu Dumitru

►► canalele mele de YouTube: youtube.com/RaduDumitru (personal) și youtube.com/NwraduBlog (tech) ◄◄

Cum să improvizezi un CDN pentru imagini mari pe blog

5 Dec 2014  ·

GÂNDURI  ·

10 comentarii

Traficul pe blogul tău poate crește foarte mult cu ocazia unor evenimente speciale, de exemplu de Black Friday. Eu, de exemplu, am anticipat că publicarea cataloagelor Altex și Flanco vor genera un transfer imens de date cu serverul, având în vedere că era vorba de imagini foarte mari (calculul e mai jos), așa că am utilizat un mic truc pentru a improviza un CDN special pentru ele.

CDN înseamnă content delivery network, adică un server independent pe care ții anumite resurse (în cazul de față, imagini), ca să nu-l omori pe al tău, pe care ai în continuare baza de date și textul și celelalte elemente. Dacă vă interesează o soluție profesională pentru asta, a scris Zoso anul trecut despre Cloudfront de la Amazon – anul trecut spunea că a plătit 105 dolari, anul acesta 300 de dolari, dar a direcționat aproape 900 Gb de trafic spre serverul Amazon, nu spre hostingul său.

Dacă vrei o simplă improvizație, iată ce-am făcut eu anul acesta special pentru acele cataloage. Am utilizat funcția Tiled Galleries din plugin-ul Jetpack, un plugin mare, cu diverse module ce vă pot fi utile, dezvoltat tot de cei din spatele WordPress-ului.

Tiled Galleries face un singur lucru, vă aranjează galeria de fotografii sub o formă mai plăcută ochiului, dar pe mine m-a interesat un efect secundar al acestei funcții: pentru a rearanja respectiva galerie, modulu Tiled Galleries urcă automat fotografiile tale pe un CDN gratuit, ținut de WordPress, și le servește de acolo vizitatorilor.

Odată activat modulul, în pagina de creare a galeriilor apar trei opțiuni noi (Mosaic, Circle și Square), toate făcând ce-am spus mai sus. Opțiunea clasică Thumbnail Grid va servi în continuare imaginile de pe serverul tău.

Am introdus cele două cataloage de care vorbeam ca galerii Mosaic, dar nu pentru aspect, ci pentru ca fotografiile să fie automat duse pe serverele WordPress. Calculul de trafic economisit mă duce la cifra de 32 GB trafic făcut pe acele imagini și important este că l-a făcut serverul WordPress, în timp ce al meu servea textul și căuta prin baza de date și făcea alte lucruri necesare. Nu m-a costat nimic.

jetpack_tiled_galleriesmosaic_gallery

Iată cum arată o galerie Tiled Mosaic. Observați URL-ul fiecărei fotografii dacă dați click dreapta și alegeți open in new tab. Partea și mai bună este că, dacă în viitor renunțați la Jetpack, imaginile vor fi servite de pe serverul vostru, ca la orice galerie.

Modulul Photon din Jetpack face acest truc cu transferul imaginilor pe un server WordPress pentru orice imagine pui pe blog. Nu-i ceva necesar, zic eu, decât dacă ai vreun blog foto pe care urci imagini full-size sau altă situație asemănătoare. Aveți grijă cu Jetpack, prea multe module activate vă vor îngreuna site-ul.

    10 comentarii

  1. Alte poze demonstrative nu aveai?

      (Citează)

  2. Coincidență totală, așa mi-au ieșit în cale :P

      (Citează)

  3. Poti folosi Photon si fara Jetpack, n-am idee insa daca te blocheaza la trafic mare.

      (Citează)

  4. Un plugin foarte bun pentru măsurarea încărcării suplimentare aduse de pluginuri:
    WordPress › P3 (Plugin Performance Profiler) « WordPress Plugins : https://wordpress.org/plugins/p3-profiler/

    Pentru imagini, eu personal folosesc Picasa, stocare gratuită pentru poze până în 2000 de pixeli (are resize automat la upload), în combinație cu:
    WordPress › Alpine PhotoTile for Google Plus and Picasa « WordPress Plugins : https://wordpress.org/plugins/alpine-photo-tile-for-picasa-and-google-plus/

      (Citează)

    • Prea complicat, cel mai simplu este să încarci fotografiile în blog, nu pe alte servicii și să depinzi de ele și de pluginuri. Când vor opri Picasa ce faci, actualizezi toate fotografiile din urmă cu Google Drive sau altceva?

        (Citează)

  5. Am vreo 300 de albume, cam cum 50-100 de poze în medie fiecare. Câteva zeci de mii de fotografii. Mi-ar ocupa vreo minim 2 Giga, comprimate, pe serverul meu. Dar necomprimate dimensiunile cresc mult mai mult de atât.

    Am avut poze la Picbox, acum ceva timp, s-a închis. Niște clipuri video la Trilulilu, la un moment dat mi s-a zis să reuploadez clipurile, că s-a închis. Videobox, închis. Videomax, închis.

    Totuși, trăgând linia, probabilitatea să se închidă serviciul de imagini al Google e destul de mică.

    Pluginul pe care îl folosesc generează un cod care cere – user album & user ID și includ asta în articol. Un alt plugin, pe un sistem asemănător (să ceară ID user și ID album) poate fi adaptat ușor să funcționeze. Nu îmi fac mari griji nici despre plugin/înlocuitor al lui.

    Marele defect al soluției mele e că încarcă imaginile de pe site-urile Google, mai încete uneori decât un hosting din România.

      (Citează)

  6. @Olivian Breda
    Asa au zis si de Google Reader…

      (Citează)

  7. olivian e românul clasic. ai nevoie de un ciocan, el te învață să cumperi o drujbă cu 4 viteze.

      (Citează)

  8. @ Olivian cea mai buna varianta e sa le ai low-res comprimate pe serverul tau:

    1. Stii sigur ca imaginea aia se incarca si nu iti face nici o figura plugin-ul.

    2. Avantaj foarte mare SEO, bine, asta daca stai si denumesti fiecare imagine, bagi alt tag-uri etc.

    3. Pentru cazuri extreme poti activa Photon

    PS: @nwradu : Nu iti trebuie neaparat galerie ca sa poti activa Photon. Merge si fara. Dezavantajul este ca daca il folosesti pe intregul site iti iei adio de la seo pentru imagini

      (Citează)

  9. Mi-am adus aminte de articolul ăsta vechi. Când Google au trecut la Google Photos, cam tot ce era pe Picasa, inclusiv pluginul de WordPress, n-a mai mers. M-a lăsat cu multe albume în aer. Am avut o idee mai puțin fericită. :(

      (Citează)

    Alătură-te discuției, lasă un mesaj

    E-mail-ul nu va fi publicat. Fără înjurături și cuvinte grele, că vorbim prietenește aici. Gândiți-vă de două ori înainte de a publica. Nu o luați pe arătură doar pentru că aveți un monitor în față și nu o persoană reală.

    Apăsați pe Citează pentru a cita întreg comentariul cuiva sau selectați întâi anumite cuvinte și apăsați apoi pe Citează pentru a le prelua doar pe acelea. Link-urile către alte site-uri, dar care au legătură cu subiectul discuției, sunt ok.


    Prin trimiterea comentariului acceptați politica de confidențialitate a site-ului.



    Vreți un avatar în comentarii? Mergeți pe gravatar.com (un serviciu Wordpress) și asociați o imagine cu adresa de email cu care comentați.

    Dacă ați bifat să fiți anunțați prin email de noi comentarii sau posturi, veți primi inițial un email de confirmare. Dacă nu validați acolo alegerea, nu se va activa sistemul și după un timp nu veți mai primi nici alte emailuri

    Comentariile nu se pot edita ulterior, așa că verificați ce ați scris. Dacă vreți să mai adăugați ceva, lăsați un nou comentariu.

sus