, Hogyan kell Létrehozni egy Közösségi Hálózati Oldal, Mint a Facebook: A sikertörténet

, Hogyan kell Létrehozni egy Közösségi Hálózati Oldal, Mint a Facebook: A sikertörténet

megfigyelhető, Hogy a buktatókat szerint megoldások kapcsolódó kliens-oldali alkotó a szociális hálózat fejlesztése, nézzük, mi a fontos szempontokat, a szerver-oldali részét kell figyelembe venni.

Back-end development

Ha egy közösségi média platformot a semmiből építesz, azt akarod, hogy zökkenőmentesen működjön, és csökkentse a felhasználók lemorzsolódásának százalékát., Ezért fontos, hogy fontolja meg a következő szempontokat során back-end fejlesztés:

  1. megfelelő renderelés
    • szerver oldali renderelés (SSR)

      Ez egy hagyományos és statikus módon weboldal tartalom renderelés, amely biztosítja a késleltetett oldal betöltése akár egy pár másodpercig. Ha blogolást vagy közösségi média platformokat hoz létre, akkor ez a lehetőség az Ön számára, mivel nem igényel gyors és azonnali választ a következő oldalbetöltések között.,

      a megjelenítési megközelítést a back-end fejlesztők hajtják végre HTML/CSS-coderrel együttműködve vagy anélkül, akár tavaszi keretrendszer, Velocity library, akár más hatékony Java technológiák segítségével. Ne feledje, hogy a CSR-től (ügyféloldali megjelenítéstől) eltérően a microservices back-end architektúrája nem alkalmazható az SSR-re; ezért válassza a monolit architektúrát.

    • kliens oldali renderelés (CSR)

      Facebook-szerű webhelyfejlesztés esetén az ilyen típusú adatmegjelenítés alkalmasabb., Ez a megközelítés dinamikusabb és érzékenyebb, és lehetővé teszi egy olyan hálózat létrehozását, amely a kezdeti első terhelés után gyors weboldal-megjelenítést biztosít Önnek.

      a CSR megoldást front-end fejlesztők végzik, és általában JavaScript-ben implementálják AngularJS, React segítségével.js, vagy Vue.js frameworks. Az Ön igényeitől függően mind a monolit, mind a mikroszolgáltatások back-end architektúrái alkalmasak webhelyére, ha a CSR-t választja.,

  2. a biztonság fokozása
    • strukturált lekérdezési nyelv (SQL) injekciómegelőzés

      a felhasználók érzékeny adatai, például a hitelesítési adatok és a hitelkártya-információk, sérülékenyek lehetnek az SQL-injekciókkal szemben elégtelen biztonság esetén. Hogy megakadályozza az ilyen rosszindulatú támadások, győződjön meg róla, hogy a hely biztonságos Java adatbázis vezető nyilatkozatot jellemzője, hogy küld lekérdezést, majd az adatokat az adatbázis szerverhez külön-külön, elkerülve a beavatkozás ilyen támadás nyilvántartásba be az adatbázisba.,

      A PHP adatbázis-illesztőprogram például nem nyújt ilyen védelmet, ezért a fejlesztőnek meg kell védenie azt escape bemeneti adatok vagy más technológia segítségével.

      mint látható, a programozási nyelv és / vagy keretrendszer kiválasztása befolyásolja a terméket biztosító eszközök veremét, amelyet viszont helyesen kell használni.

    • védelem a webhelyközi szkriptek (XSS) támadásai ellen

      Ha a közösségi média hálózata nem rendelkezik megfelelően biztonságos bemeneti adatok érvényesítésével, webhelye nyitva áll az XSS támadások előtt., Ebben az esetben fontolja meg a bemeneti adatok szűrésének integrálását érkezéskor, vagy kódolja adatait a kimeneten.

    • biztonságos tárhely

      annak biztosítása érdekében, hogy a felhasználók adatai biztonságosan tárolódjanak, kívánatos a megbízható, legmagasabb szintű felhő web hosting szolgáltatók, például AWS, A2 Hosting, HostGator vagy InMotion választása.

    • adat titkosítás

      a közösségi média weboldal létrehozása szempontjából az SSL típusú adattitkosítás integrálása az egyik leghatékonyabb és kötelező biztonsági intézkedés., Megakadályozza, hogy a hackerek megszerezzék a felhasználók érzékeny adatait tranzit közben.

    • programok frissítése

      számos webhely biztonsága gyakran veszélybe kerül az elavult szoftverösszetevők miatt. Mindig győződjön meg róla, hogy a programok minden része frissül, legyen az a plugin vagy a CMS legújabb verziója, hogy ne legyen nyitott webhely sebezhetősége a támadásokhoz.

  3. adminisztrációs panel

    Ez az egyik legfontosabb eszköz bármely olyan közösségi média webhely moderálásához, amelyet nem lehet figyelmen kívül hagyni., Ez egy teljes értékű alkalmazás interoperates a weboldal célja, hogy fokozza a képességeit a vállalkozás által:

    • nyújt betekintést a felhasználó kapcsolatos funkciók (felhasználói viselkedés);
    • kimutatására a megsértése honlap szabályzat, valamint politika;
    • megjelenítése üzleti mutatók (kpi-k).
  4. jobb teljesítmény
    • vízszintes skálázhatóság

      minél híresebb lesz a hálózatod, annál több egyidejű munkaterhelés fut a weboldalon., Ebben az esetben a vízszintes skálázhatóság fenntartása elengedhetetlen, amelyet az eladó megfelelő terheléselosztó választásával lehet elérni.

    • tartalomszolgáltató hálózat

      abban az esetben, ha nem csak egy adott földrajzi helyen, hanem globálisan kívánja népszerűsíteni hálózatát, a CDN (content delivery network) használatával növelheti webhelyének teljesítményét. Egy ilyen megoldás a tartalom gyorsabb kézbesítését biztosítja a végfelhasználóknak, akik a hosztolt kiszolgálótól távol helyezkednek el, a legközelebbi vagy helyi edge szerverek felhasználásával.,

      6.kép. A CDN munkájának áttekintése. Forrás: Wpbeginner
    • Tartalomméret optimalizálás

      a webhely munkájának optimalizálásához szükség lehet olyan szoftverre, amely tömöríti a hangot, a videót, a szöveges fájlokat és más típusú fájlokat. Használhat egy gzip alkalmazást, amely statikus vagy dinamikusan tömöríti és tömöríti a fájlokat, mindkettő javítva a webhely oldalterhelését majdnem 15% – kal., Sőt, jobb tömörített fájlokat tárolni, mint tömöríteni őket a frontend oldalon minden alkalommal, amikor a kérés megérkezik.

  5. a weboldal hibatűrővé tétele

    számos tényező negatívan befolyásolhatja webhelyének működését. A hibatűrés bármely közösségi hálózat egyik legfontosabb szempontja, amely segít ellensúlyozni az ilyen behatolásokat., Lehet, feltéve, hogy az ilyen megelőző intézkedések:

    • engedélyezés klaszterezés, az a folyamat, amely segít megismételni az intézkedések a szerver esetében a hirtelen elmulasztása funkció;
    • győződjön meg róla, hogy egy hibatűrő, adatbázis, amely átveszi a munka a fő, ha a kimaradás;
    • integrálni megbízható kommunikációs csatorna, amely biztosítja, biztonságos, következetes adatcsere, illetve csökkentsék a kockázatokat, a kapcsolat elvesztése;
    • biztosít az adatbázis biztonsági mentését, hogy megszünteti a lehetőségét, hogy az érzékeny adatokat veszteség;
    • biztosítása, katasztrófa-helyreállítási eljárásokat., Az ilyen eljárások attól függnek, hogy a felhőalapú számítástechnikát vagy a helyszínen választja-e. Az előbbi esetében engedélyeznie kell az adatok felhőalapú migrációját a másik régióba. Ha az utóbbi lehetőséget választja, győződjön meg róla, hogy van biztonsági mentési szolgáltatója vagy adatközpontja más földrajzi területen., Ha helyszíni környezetet is használ, akkor ebben az esetben felhőalapú számítástechnikára válthat;
  6. CI/CD

    folyamatos integráció (CI) és folyamatos telepítések (CD) nélkülözhetetlen gyakorlatok, amelyek lehetővé teszik a hatékony és rugalmas munkafolyamatot, amely végül gyorsabb és hibamentes telepítéshez vezet. A DevOps mérnökei azok, akik a CI/CD beállítás helyes működését biztosítják és fenntartják a fejlesztési életciklusban., A választó ez a megközelítés, hogy a fejlődés a szociális média, honlap, lehet beszerezni:

    • minimális hiba megjelenése, amikor elindítja a honlapon, mint regresszió fogott korábban során iteratív automatizált tesztek (CI);
    • kedvezményes költségek utáni fejlesztés, tesztelés, mert CI szerver végzi a számos vizsgálat automatikusan;
    • gyorsabb kiadás, mint CI/CD csővezeték folyamatosan egyesíti a kódot, majd telepíteni, hogy a gyártás után az automatizált tesztelés, ezért mindig fenntartom kiadás-kész.,

Technology stack

a megfelelő tech stack kiválasztása a közösségi hálózat programozásához általában a beállított követelmények legmegfelelőbb megoldásától, a projekt összetettségétől, valamint a szoftvergyártó tapasztalatától függ a backend technológiákban.,”>Programming languages

Java, PHP, Python Search engines Apache Solr, Elasticsearch Frameworks/libraries Spring stack for Java
Laravel, Symfony for PHP
Django, Flask, Tornado for Python Caching Redis, Memcached Front-end frameworks and technologies React.,js, Vue.,Szögletes Front-end programozási nyelvek Géppel, a JavaScript DevOps GitLab CI, TeamCity, GoCD Jenkins, WS CodeBuild, Terraform

Tesztelés

A karbantartás a magas terhelés a honlapon, felelősséget vállal a biztonság a felhasználók adatait, valamint a kifizetések a hálózaton belül azok a tényezők, amelyek meghatározzák, rendkívül fontos, hogy a megközelítés a tesztelési szakaszban elgondolkodva.,

a közösségi média webhelyének tesztelése bizonyos vizsgálati tárgyak létrehozását igényli: tesztstratégia, tesztterv, tesztadatok, tesztesetek stb. Ezeket azért végzik, hogy garantálják, hogy a szoftvergyártó pontosan megértse az ügyfél összes követelményét. Ezenkívül lehetővé teszik mind az ügyfél, mind az érdekelt felek, mind a tesztelők számára, hogy nyomon kövessék a projekten belüli változásokat, kiküszöbölve a felek közötti esetleges félreértéseket.,

általában a következő típusú teszteket hajtják végre, amikor közösségi hálózatot fejleszt ki:

  • funkcionális tesztelés — segít biztosítani, hogy a hálózat minden funkciója a követelmény specifikációjának megfelelően működjön., Elvégzésével, a QA csapat fizet a figyelmet arra, hogy a következő szempontokat vizsgálja:

    • vizsgálatok weboldal alapvető funkciók;
    • biztosítja, hogy a frissítések, valamint a fejlesztések nem befolyásolják negatívan a honlap működését;
    • ellenőrzések átjárhatóság a különböző funkcionális modulok;
    • ellenőrizze, hogy a felhasználói felület megfelel a végső fogyasztó elvárásainak.,
  • biztonsági vizsgálati—, hogy győződjön meg arról, hogy a közösségi média weboldal nem tartalmaz fenyegetést, biztonsági rések, amelyek károsíthatják a felhasználók érzékeny adatait, tesztelők összpontosítani az ilyen területeken:

    • a biztonsági hálózati szkennelés;
    • biztosítja, hogy a frissítések, valamint a fejlesztések nem befolyásolják negatívan a honlap működését;
    • hozzáférési pontok ellenőrzése;
    • hiányosságai szoftver komponensek.,
  • teljesítmény-tesztelés—, míg végez, a kész a honlap fenntartásához lehetséges terhelés által vizsgált ellenőrzése:

    • kapcsolat sebességét;
    • weboldal viselkedés alatt a növekvő terhelés;
    • weboldal viselkedés határain kívül a várható feladatait;
    • weboldal viselkedés alatt folyamatos nehéz teher.
  • interface testing-segít biztosítani az adatok helyes továbbítását a szerver oldalról, valamint a kliens oldalon történő megjelenítést., QA csapat végzi keresztül:

    • érvényesítése megfelelő interakció az alkalmazás szerver kapcsolódási pontok;
    • érvényesítése megfelelő kölcsönhatás a web szerver adatbázis-kiszolgáló felületek;
  • használhatósági tesztelés — QA mérnök teszt, hogy van-e bármilyen hiányosságot a kliens-oldali része a honlapon, mint például:

    • illeszkedés navigációs;
    • általános nézet, hogy a design;
    • alkalommal, amikor a felhasználó tölti a feladat elvégzéséhez.,

    az AIMPROSOFT minőségbiztosítási osztálya a termék összetettségétől és az Ön igényeitől függően a legösszetettebb megközelítést alkalmazza a megfelelő tesztkészlettípus kiválasztására. A QA csapat munkájának a projekt kezdetétől történő integrálásával potenciálisan csökkentheti a fejlesztési költségeket, biztosíthatja a hálózat zökkenőmentes működését, valamint növelheti képességeit., a megközelítés a MINŐSÉGBIZTOSÍTÁSI osztály felé tesztelési szakaszban

a Kiadás, promóció

több köztes kiadások (Proof of Concept, MVP, alfa, béta verzió) szállítjuk, mielőtt a termék telepítési, hogy ellenőrizze az új honlap működését, valamint megvalósíthatósági.

egy közösségi hálózat programozásához az iteratív tesztelési eljárások ciklusa megelőzi a weboldal végleges kiadását. Ezt követően az Aimprosoft freeze code-ot használjuk, majd 2-3 hétig folytatjuk a hibák kijavítását a termék módosítása nélkül., Hogy megakadályozzák az esetleges üzleti kapcsolatos kockázatok a kiadás, az is kívánatos, hogy:

  • teszt Url megfelelő működését;
  • ellenőrizze, hogy a honlap böngésző mobil-barát;
  • annak ellenőrzésére, hogy a HTML/CSS kód errorless;
  • -ellenőrizd, hogy a webhely biztonsági rendszerelem, majd ellenőrizze, hogy a szociális hálózat biztonsági mentés.,

További szempontok, amelyek hozzájárulnak a sikeres weboldal indítása lehetnek:

  • végrehajtása hatékony SEO technikák;
  • beállítás a Google Analytics további monitoring;
  • biztosítása, az Url-ek keresése-motor-barát.

miután a közösségi hálózatot jóváhagyták a tényleges kiadáshoz, itt az ideje, hogy végrehajtsuk a webhely népszerűsítésére szolgáló marketingstratégiát., Lehet, hogy a következők:

  • hirdessen a termék keresztül más népszerű közösségi hálózatok, ha a fogalom eltér a tiéd;
  • elősegítik a Quora azzal, hogy válaszolsz a kérdésekre kapcsolatos témák, mellékelve a linket a honlapon;
  • promóció segítségével a népszerű befolyásos;
  • befektetni a search engine marketing jelenik meg az első oldalon keresési eredmények között.

miután elindította webhelyét, elengedhetetlen annak teljesítményének és felhasználói viselkedésének figyelemmel kísérése, hogy ennek megfelelően tovább frissítse azt.,

közösségi oldal fejlesztési költségbecslés

a saját közösségi hálózat elindításához szükséges hozzávetőleges költség meghatározásához Vegyünk egy hasonló terméket, amelyet Chattlez néven hoztunk létre.

A Chattlez tartalmazta a szabványos közösségi média webhely alapvető jellemzőit; különös hangsúlyt fektettünk a tervezés érzékenységére is, amely 2013-ban nem volt olyan gyakori. A Chattlez koncepciója az volt, hogy a termék-aggregátort összekapcsolják a közösségi média hálózattal, és olyan piactérré alakítják át, amely lehetővé teszi az emberek számára a kommunikációt és a vásárlást., Majdnem 5 hónapba telt egy ilyen közösségi hálózat kifejlesztése, és ez lehetővé tette számunkra, hogy durva képletet készítsünk a közösségi média webhelyek létrehozásának idejének és költségének becslésére.

amikor saját közösségi oldalt építesz, először ki kell fejlesztened egy MVP-t, hogy azonosítsd a termék gyengeségeit és pontos fejlesztéseit a további befektetéshez., A következő core bármilyen szociális média, a hálózati funkciók volt végre a Chattlez:

  • a Felhasználó regisztráció;

  • a Felhasználói hitelesítést;

  • Felhasználói profil;

  • Előfizetés;

  • News feed;

  • Tartalom megosztása lehetőséget;

  • Tartalom közzététele;

  • Megjegyzések;

  • Keresés;

  • Üzenetek lehetőséget.,

A következő csapat stack általában szükséges, ha ön úgy dönt, hogy hozzon létre egy MVP első:

  • 1 Projekt Menedzser;

  • a Felhasználói hitelesítést;

  • 1 UI/UX mérnök;

  • 1 Backend fejlesztő;

  • 1 frontend fejlesztő;

  • 1 QA mérnök;

  • 1 DevOps mérnök.,

Ha MVP megy keresztül az első hullám a kritikus vizsgálat, amelyet a potenciális közönség a visszajelzést kapott, lehet, hogy folytassa a fejlesztés a teljes termék a következő kiegészítő szolgáltatásokat tartalmazza Chattlez is:

  • Admin panel;

  • Összekapcsolása más közösségi média platformok;

  • Tartalom mértékkel;

  • Analytics;

  • a Speciális keresés;

  • Testreszabási a felhasználói profilt.,

ha azonnal egy teljes termék létrehozását választja, akkor szüksége lesz egy ilyen közelítő szoftverfejlesztőre, hogy a közösségi hálózati oldalt a semmiből kódolja. A projekt összetettségétől és a bevezetés időpontjától függően változhat:

a Chattlez létrehozásának szakértelmét használtuk fel az alábbi összehasonlító táblázat elkészítéséhez, amely tartalmazza a közösségi hálózati weboldal MVP-jének és a teljes terméknek a fejlesztésére fordított hozzávetőleges időt.,v>850 — 950

QA 90 — 100 175 — 225 Product architecture 30 — 40 50 — 60 CI/CD 100 — 140 140 — 180

The above-mentioned estimated time may vary if you conduct a business analysis, all mockups and prototypes yourself, and then turn to the full-cycle development company., Ami a backend fejlesztést illeti, a legigényesebb és legösszetettebb részek az Admin panel és az integrált analitika létrehozásával kapcsolatosak, amelyek egyenként körülbelül 200 órát igényelnek.,>€52 500 — 63 900

€92 400 — 108 000 UK £55 £48 125 — 58 575 £84 700 — 99 000 Eastern Europe (Ukraine) $30 $26 250 — 31 950 $46 200 — 54 000

You may see that depending on geographical area, the average rate of the developers may significantly differ., Így például a kelet-európai (Ukrajna) közösségi hálózati weboldal teljes fejlesztési költsége az Egyesült Államokban ugyanazon költségnek csak 40% – át teszi ki.

következtetés

amint azt már megfigyelték, web-univerzum a szociális média hálózatok meglehetősen többdimenziós és jövedelmező. Annak érdekében, hogy egy ilyen ígéretes iparágból több előnyt szerezzen, megvalósítható ötletre, egy kis bátorságra, valamint dedikált szoftverpartnerre van szüksége a legösszetettebb funkciók megvalósításához., Ha azt szeretnénk, hogy megvitassák a kérdést, hogyan lehet létrehozni egy közösségi média honlapján, lépjen kapcsolatba velünk, és Aimprosoft alaposan segíti a startup-Endeavour.

GYIK

A közösségi média weboldalak fejlesztése napjainkban is releváns?

jelenleg több mint 3, 81 milliárd ember használja a közösségi médiát. Ez azt jelenti, hogy az ilyen típusú webhelyek iránti kereslet magasabb, mint valaha. A mélyen gyökerező közösségi média webhelyek küzdenek a felhasználók folyamatosan növekvő igényeinek kielégítésére. Ezért az újonnan érkezők progresszív víziója jelentősen hozzájárulhat e szféra fejlődéséhez.,

van-e olyan technológia, amelyet javasolhat egy robusztus közösségi média webhely fejlesztésére?

a megfelelő feature stack függ a projekt összetettségétől, a kívánt funkciók készletétől, valamint a költségvetéstől. Mivel különböző típusú közösségi média webhelyek vannak, a funkcionalitás jelentősen eltérhet. Miután azonosította azokat a funkciókat, amelyeket be szeretne vonni, javasoljuk, hogy konzultáljon a kiválasztott szoftvergyártóval az ajánlott technológiákkal kapcsolatban., Az eladónak meg kell adnia a lehetőségeket, azok összehasonlítását, majd válassza ki a legmegfelelőbb szoftvereszközöket.

Hogyan válasszuk ki a megfelelő funkciókészletet a közösségi média webhelyéhez? Bármilyen tipp, hogy kövesse?

mindig jobb meghatározni, hogy milyen kihívásokkal nézhetnek szembe a potenciális felhasználók, amikor ilyen platformmal foglalkoznak, és milyen elvárásaik vannak a hasonló webhelyekkel kapcsolatos korábbi tapasztalataik alapján. Ez segít azonosítani a szükséges eszközöket a célközönség igényeinek kielégítéséhez, valamint a felesleges funkciók kizárásához. Is, végezzen alapos kutatást a versenytársak., Határozza meg, hogy milyen funkciók segítenek nekik a sikerben, és milyen gyengeségeik vannak, így javíthatja őket, és átalakíthatja előnyeit.

hogyan biztosíthatom a legmagasabb szintű biztonságot a közösségi média webhelyem számára?

az egyik legfontosabb biztonsági szabály, amelyet a közösségi média platformjának a semmiből történő felépítésekor követni kell, az, hogy az alkalmazás összes rétegét meg kell védeni az OWASP által azonosított biztonsági kockázatoktól. Másodszor, integrálja az alkalmazás infrastruktúrájába egy WAF (webes alkalmazás tűzfal)., Ez biztosítja az alkalmazást a külső támadások, mint például az SQL injekciók, XSS (Cross-Site Scripting) támadások, fájl felvétele, stb .. Egy másik hasznos webhelybiztonsági intézkedés a webalkalmazási kódex biztonsági ellenőrzésének rendszeres elvégzése, valamint a weboldal összes szoftverkomponensének időben történő frissítése, beleértve a fejlesztés során kihasznált keretrendszerek és könyvtárak frissítéseit is. Összességében ezek csak az egyik lehetséges módszer a közösségi média webhely biztonságának megerősítésére., Általában a szoftver építész vagy Tech vezető dolgozik a projekt megtervezi a megfelelő stratégiát, és kiválasztja a biztonsági eszközök és gyakorlatok megfelelő a termék.

Vélemény, hozzászólás?

Az email címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük