Sådan oprettes et socialt Medienetværkssite som Facebook: succeshistorien

Sådan oprettes et socialt Medienetværkssite som Facebook: succeshistorien

efter at have observeret alle faldgruberne og i henhold til løsninger relateret til klientsiden i udviklingen af det sociale netværk, lad os se, hvilke vitale aspekter af serversiden skal tages i betragtning.

Back-end development

Hvis du bygger en social medieplatform fra bunden, vil du få den til at fungere problemfrit og sænke procentdelen af brugernes churn., Derfor er det vigtigt at overveje følgende aspekter under back-end-udvikling:

  1. korrekt gengivelse
    • server-side rendering (SSR)

      Dette er en mere traditionel og statisk måde at websiteebstedets indhold rendering, der kan give forsinket side belastning op til et par sekunder. Hvis du opretter blogging eller udgiver sociale medieplatforme, er en sådan mulighed den for dig, da den ikke kræver hurtig og øjeblikkelig reaktion mellem efterfølgende sideindlæsninger.,

      En rendering tilgang er udført af back-end udviklere, der i samarbejde med eller uden HTML/CSS-koder, med hjælp af enten Foråret rammer, Hastighed bibliotek, eller andre effektive Java-teknologier. Husk også, at i modsætning til CSR (klientsiden rendering), microservices back-end arkitektur er ikke gældende for SSR; derfor vælger monolith arkitektur.

    • klientsiden rendering (CSR)

      i tilfælde af Facebook-lignende siteebstedsudvikling er denne type datavisning mere egnet., En sådan tilgang er mere dynamisk og lydhør og giver dig mulighed for at oprette et netværk, der giver dig hurtig renderingebstedsgengivelse efter den første første belastning.

      CSR-løsning udføres af front-end-udviklere og implementeres normalt i JavaScript ved hjælp af AngularJS, React.js eller Vue.js rammer. Afhængigt af dine krav er både monolit og microservices back-end-arkitekturer egnede til dit websiteebsted, hvis du vælger CSR.,

  2. forbedring af sikkerheden
    • struktureret forespørgselssprog (s .l) injektionsforebyggelse

      dine brugeres følsomme data, såsom godkendelsesoplysninger og kreditkortoplysninger, kan være sårbare over for S .l-injektioner i tilfælde af utilstrækkelig sikkerhed. For at forhindre sådanne ondsindede angreb, sørg for at placere sikker Java database driver med forberedt erklæring funktion, der sender forespørgsel og data til databaseserveren separat, undgå indgriben af et sådant angreb i posterne inde i databasen.,

      PHP database driver giver for eksempel ikke sådanne beskyttelser, så udvikleren skal beskytte den ved hjælp af escape inputdata eller anden teknologi.

      som du kan se, har valget af programmeringssprog og/eller rammer indflydelse på stakken af de værktøjer, der sikrer dit produkt, som igen skal bruges korrekt.beskyttelse mod Crossss-angreb (Cross-Site Scripting)

      Hvis dit sociale medienetværk ikke har korrekt sikret validering af inputdata, er dit websiteebsted åbent for attacksss-angreb., I dette tilfælde skal du overveje at integrere inputdatafiltrering ved ankomsten eller kode dine data på output.

    • sikker hosting

      sørg for, At dine brugeres data er sikkert opbevaret, er det ønskeligt at vælge pålidelig, top-rangerede cloud web-hosting-udbydere, som AWS, A2 Hosting, HostGator, eller InMotion.

    • datakryptering

      med hensyn til oprettelse af sociale medier betragtes integrationen af SSL-type datakryptering som en af de mest effektive og obligatoriske sikkerhedsforanstaltninger., Det forhindrer hackere i at få dine brugeres følsomme data, mens de er i transit.

    • programopdatering

      sikkerheden på adskillige websebsteder kompromitteres ofte på grund af forældede soft .arekomponenter. Sørg altid for, at alle dele af dine programmer er opdateret, uanset om det er den nyeste version af plugin eller CMS, så der ikke er nogen åben websiteebsteds sårbarheder for angreb.

  3. Admin panel

    Dette er et af de mest vitale værktøjer til moderering af ethvert socialt medie websiteebsted, der ikke kan overses., Det er et fuldgyldigt program, der fungerer sammen med dit websiteebsted og har til formål at forbedre din virksomheds muligheder ved at:

    • give indsigt i de brugerrelaterede funktioner (brugerens adfærd);
    • opdage overtrædelse af websiteebstedets regler og politik;
    • vise forretningsmetrics (KPI ‘ er).
  4. forbedre ydeevnen
    • vandret skalerbarhed

      jo mere berømt dit netværk bliver, jo mere samtidige arbejdsbelastninger kører på websiteebstedet., I et sådant tilfælde er vedligeholdelse af vandret skalerbarhed et must, hvilket kan opnås ved din leverandørs rigtige valg af belastningsbalancere.

    • content delivery net .ork

      Hvis du sigter mod at popularisere dit netværk ikke kun på et bestemt geografisk sted, men globalt, kan du øge dit performanceebsteds ydeevne ved hjælp af CDN (content delivery net .ork). En sådan løsning giver hurtigere levering af indholdet til dine slutbrugere, der er placeret langt fra den hostede server, ved at bruge nærmeste eller lokale edge-servere.,

      Billede 6. Oversigt over CDN arbejde. Kilde: Contentpbeginner
    • optimering af Indholdsstørrelse

      for at optimere arbejdet på dit websiteebsted kan du kræve soft .are, der komprimerer lyd, video, tekst og andre typer filer. Du kan bruge en G .ip program, der komprimerer og dekomprimerer filer enten statisk eller dynamisk, både forbedre hjemmesiden side belastning næsten med 15%., Desuden er det bedre at gemme komprimerede filer end at komprimere dem på frontendsiden, hver gang anmodningen kommer.

  5. at gøre faultebstedet fejltolerant

    mange faktorer kan have negativ indflydelse på dit websiteebsteds funktion. Fejltolerance er et af de mest vitale aspekter af ethvert socialt netværk, som hjælper med at modvirke sådanne indtrængen., Det kan være forsynet med hjælp af sådanne forebyggende foranstaltninger:

    • aktiver clustering, den proces, der hjælper med at replikere serverens handlinger i tilfælde af dens pludselige manglende funktion;
    • sørg for, at du har en fejltolerant database, som vil overtage arbejdet i den vigtigste i tilfælde af dens udfald;
    • Integrer pålidelige kommunikationskanaler, som vil sikre en sikker og konsekvent udveksling af data og reducere risikoen for tab af forbindelse;
    • sørg for database backup for at eliminere muligheden for følsomme data tab;
    • sikre procedurer for gendannelse af katastrofer., Sådanne procedurer afhænger af, om du vælger cloud computing eller på stedet. I tilfælde af den førstnævnte skal du aktivere cloud migration af data til den anden region. Hvis du vælger sidstnævnte mulighed, skal du sørge for at have en sikkerhedskopiudbyder eller datacenter i et andet geografisk område., Også, hvis du bruger on-premises miljø, du kan skifte til cloud computing-i dette tilfælde;
  6. CI/CD

    Continuous Integration (CI) og Kontinuerlig Installationer (CD) er nødvendig praksis for at muliggøre en effektiv og fleksibel arbejdsgang, der i sidste ende fører til hurtigere og bugless implementering. DevOps-ingeniører er dem, der leverer og opretholder en korrekt fungerende proces med CI/CD-opsætning i udviklingslivscyklussen., Ved at vælge denne tilgang til udviklingen af dit sociale medie websiteebsted, kan du få:

    • minimeret fejlopkomst, når du starter websiteebstedet, da regressioner fanges tidligere under iterative automatiserede tests (CI);
    • reducerede omkostninger til test efter udvikling, fordi CI server udfører adskillige test automatisk;
    • hurtigere frigivelse, da CI/CD pipeline konstant fusionerer koden og distribuerer den til produktion efter den automatiserede test, og dermed altid opretholder den frigivelsesklar.,

Technology stack

valget af den passende tech stack til at programmere et socialt netværk afhænger normalt af den bedst egnede løsning til de fastsatte krav, projektets kompleksitet og soft .areleverandørens ekspertise inden for backend-teknologier.,”>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.,Kantede Front-end programmering sprog Skrivemaskine, JavaScript DevOps GitLab CI, TeamCity, GoCD Jenkins, WS CodeBuild, Terraform

Test

vedligeholdelse af høj belastning på hjemmesiden, ansvar for sikring af brugernes data, og deres betalinger i netværket er de faktorer, der definerer ekstrem vigtighed for tilgang testfasen eftertænksomt.,

test af socialebstedet for sociale medier kræver oprettelse af bestemte testgenstande: teststrategi, testplan, testdata, testsager osv. De udføres for at sikre, at alle kundens krav forstås nøjagtigt af Soft .areleverandøren. De gør det også muligt for både kunden, interessenter og testere at spore ændringerne i projektet, hvilket eliminerer mulige misforståelser blandt parterne.,

normalt udføres følgende typer test, når du udvikler et socialt netværk:

  • funktionel test — hjælper med at sikre, at alle funktioner i dit netværk fungerer i overensstemmelse med kravspecifikationen., Ved at udføre det er teama-teamet opmærksom på følgende aspekter:

    • tester websiteebstedets kernefunktioner;
    • sikrer, at opdateringer og forbedringer ikke påvirker websiteebstedets funktionalitet negativt;
    • kontrollerer interoperabilitet mellem forskellige funktionelle moduler;
    • sørg for, at brugergrænsefladen opfylder slutforbrugerens forventninger.,sikkerhedstest — for at sikre, at dit socialebsted for sociale medier ikke indeholder trusler og sikkerhedshuller, der kan skade dine brugeres følsomme data, fokuserer testere på sådanne områder:
      • sårbarheder i netværksscanning;
      • sikrer, at opdateringer og forbedringer ikke påvirker websiteebstedets funktionalitet negativt;
      • adgangspunkter kontrollerer;
      • svagheder i Soft .arekomponenter.,performance test — mens du udfører det, testes websiteebstedets beredskab til at opretholde mulig belastning ved at kontrollere:
        • forbindelseshastighed;
        • websiteebsteds adfærd under stigende arbejdsbyrde;
        • websiteebsteds adfærd ud over grænserne for forventet arbejdsbyrde;
        • websiteebsteds adfærd under kontinuerlig tung belastning.
      • interface testing — hjælper med at sikre korrekt overførsel af data fra serversiden og gengivelse på klientsiden., QA team, der udfører det med:

        • validering af korrekt samspil af applikation og server interfaces;
        • validering af korrekt samspil mellem web-server og database server interfaces;
      • usability test — QA ingeniører teste, om der er svagheder i client-side en del af hjemmesiden, såsom:

        • fyldestgørende navigation;
        • samlet overblik over design;
        • tid brugeren bruger til at fuldføre opgaven.,-afdelingen i Aimprosoft anvender den mest komplekse tilgang til valget af den passende type testsæt afhængigt af produktets kompleksitet og dine krav. Ved at integrere QA-teamets arbejde helt fra projektets begyndelse reducerer du potentielt udviklingsomkostningerne, sikrer problemfrit arbejde i dit netværk og øger dets muligheder.,få kendskab til vores QA-afdelings tilgang til teststadiet

        frigivelse og promovering

        en række mellemliggende udgivelser (Proof of Concept, MVP, alpha og beta versioner) leveres før produktinstallationen for at kontrollere det nye websiteebsteds funktionalitet og gennemførlighed.

        for at programmere et socialt netværk, går en cyklus af iterative testprocedurer forud for websiteebstedets endelige udgivelse. Efter dette, vi på Aimprosoft fryse kode og fortsætte fastsættelse bugs i 2-3 uger uden at ændre produktet., For at forhindre mulige forretningsmæssige risici, der er relateret til frigivelse, det er også ønskeligt at:

        • test alle de Webadresser, som for at fungere korrekt;
        • kontrollere, om din hjemmeside er browser og mobil-venligt;
        • kontrollere, om din HTML/CSS-kode er errorless;
        • double-check dit websted sikkerhed konstituerende og sørg for, at dit sociale netværk har en backup.,

        yderligere aspekter, der bidrager til en vellykket launchebstedslancering, kan være:

        • implementering af effektive SEO-teknikker;
        • opsætning af Google Analytics til yderligere overvågning;
        • sørg for, at dine Urebadresser er søgemaskinevenlige.

        når dit sociale netværk er godkendt til den faktiske udgivelse, er det tid til at implementere markedsføringsstrategien til promovering af dit websiteebsted., Det kan omfatte:

        • annoncer dit produkt via andre populære sociale netværk, hvis deres koncept adskiller sig fra dit;
        • promover det på Quuora ved at besvare spørgsmålene i relaterede emner og vedhæfte linket til websiteebstedet;
        • forfremmelse ved hjælp af populære influencere;
        • invester i søgemaskinemarkedsføring for at vises på den første side med søgeresultater.

        Når du har lanceret dit websiteebsted, er det vigtigt at overvåge dets ydeevne og dine brugeres adfærd for at opdatere det yderligere i overensstemmelse hermed.,

        Social networking site udvikling omkostningsvurdering

        for At angive en omtrentlig udgift, der er nødvendig for at starte dit eget sociale netværk, så lad os overveje et lignende produkt, som vi har skabt kaldes Chattlez.

        Chattle.inkluderede grundlæggende funktioner, der er forbundet med et standard socialebsted for sociale medier; vi lægger også særlig vægt på responsiviteten af dets design, hvilket ikke var så almindeligt tilbage i 2013. Begrebet Chattle.var at kombinere produkt aggregator med sociale medier netværk og konvertere dem til en markedsplads gør det muligt for folk at kommunikere og foretage indkøb., Det tog næsten 5 måneder at udvikle et socialt netværk som dette, og det gjorde det muligt for os at komme med en grov formel til at estimere både tid og omkostninger for oprettelsen af sociale medie websebsteder.

        Når du bygger dit eget sociale netværks siteebsted, er det nødvendigt at udvikle en MVP først for at identificere produktets svagheder og nøjagtige forbedringer for at investere yderligere., Følgende kerne for alle sociale medienetværksfunktioner blev implementeret i Chattle::

        • brugerregistrering;

        • brugergodkendelse;

        • brugerprofil;

        • abonnement;

        • nyhedsfeed;

        • indholdsdelingsindstilling;

        • indhold udgivelse;

        • kommentarer;

        • søgning;

        • meddelelser.,

        følgende hold stakken er normalt ikke påkrævet, hvis du beslutter dig for at oprette en MVP første:

        • 1 projektleder;

        • brugergodkendelse;

        • 1-UI/UX-ingeniør;

        • 1 Backend udvikler;

        • 1 frontend udvikler;

        • 1 QA-ingeniør;

        • 1 DevOps ingeniør.,

        Når MVP gennemgår den første bølge af kritisk test af dit potentielle publikum, og feedbacken er opnået, kan du fortsætte med udviklingen af det fulde produkt med følgende yderligere funktioner, der også var inkluderet i Chattle::

        • Admin panel;

        • sammenkædning med andre sociale medieplatforme;

        • indholdsmoderering;

        • analytics;

        • avanceret søgning;

        • tilpasning af brugerens profil.,

        Hvis du vælger at oprette et komplet produkt med det samme, har du brug for en sådan omtrentlig stak soft .areudviklere for at kode et socialt netværks siteebsted fra bunden. Det kan variere afhængigt af projektets kompleksitet og lanceringsdato:

        Vi brugte vores ekspertise inden for Chattle. – oprettelse til at udarbejde en sammenlignende tabel nedenfor med omtrentlig tid brugt til udvikling af både MVP af social net .orking websiteebsite og komplet produkt.,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., Med hensyn til backend-udvikling er de mest tidskrævende og komplekse dele relateret til oprettelsen af Admin panel og integreret analyse, der kræver cirka 200 timer hver.,>€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., Således udgør for eksempel hele udviklingsomkostningerne på det sociale netværks websiteebsted i Østeuropa (Ukraine) kun 40% af de samme omkostninger i USA.

        konklusion

        som du måske har observeret, socialeb-univers af sociale medier netværk er temmelig mange-dimensionelle og indbringende. For at få flere fordele ved en sådan lovende industri, skal du have en gennemførlig id., lidt mod og dedikeret soft .arepartner til at implementere de mest komplekse funktioner., Hvis du vil diskutere spørgsmål om, hvordan du opretter et socialt medie websiteebsted, kontakt os, og Aimprosoft vil grundigt hjælpe med din opstart-bestræbelse.

        fa?

        er udviklingen af sociale medie websebsteder stadig relevant i dag?

        mere end 3.81 milliarder mennesker bruger sociale medier i øjeblikket. Det betyder, at efterspørgslen efter sådanne typer websebsteder er højere end nogensinde før. De dybt rodfæstede sociale medie websebsteder kæmper for at imødekomme brugernes konstant voksende krav. Derfor kan den progressive vision af nybegyndere betydeligt bidrage til udviklingen af denne sfære.,

        er der et bestemt sæt teknologier, som du kan anbefale at bruge til at udvikle et robust socialt medie websiteebsted?

        den relevante funktionsstabel varierer afhængigt af projektets kompleksitet, sæt af de ønskede funktioner og budget. Da der er forskellige typer af sociale medier websebsteder, funktionaliteten kan variere betydeligt. Når du identificere de funktioner, som du vil medtage, anbefaler vi rådgivning med den valgte soft .areleverandør om de anbefalede teknologier., Sælgeren skal give dig muligheder og deres sammenligning og derefter vælge de mest egnede soft .areværktøjer.

        Hvordan vælger du det rigtige funktionssæt til et socialt medie websiteebsted? Eventuelle tips til at følge?

        det er altid bedre at definere, hvilke udfordringer der kan møde dine potentielle brugere, når de beskæftiger sig med en sådan platform, og hvilke forventninger de har baseret på deres tidligere erfaring med lignende websebsteder. Dette vil hjælpe dig med at identificere de nødvendige værktøjer til at tilfredsstille din målgruppes behov og udelukke unødvendige funktioner. Udfør også grundig undersøgelse af dine konkurrenter., Identificer hvilke funktioner der hjælper dem med at lykkes, og hvilke svagheder de har, så du kan forbedre dem og omdanne til dine fordele.

        Hvordan kan jeg sikre det højeste sikkerhedsniveau for mit sociale medie websiteebsted?en af de vigtigste sikkerhedsregler, der skal følges, når du bygger en social medieplatform fra bunden, er, at alle applikationens lag skal beskyttes mod sikkerhedsrisici identificeret af O .asp. For det andet skal du integrere en fireaf (fireeb application fire .all) i din apps infrastruktur., Det vil sikre din app udefra angreb, såsom S .l injektioner, attacksss (Cross-Site Scripting) angreb, fil inklusion, etc. En anden nyttig hjemmeside sikkerhedsforanstaltning er regelmæssigt at gennemføre sikkerhedscheck af en web-applikation kode, og rettidig opdateringer af alle software komponenter af hjemmesiden, herunder opdateringer af rammer og biblioteker, der blev benyttet i løbet af udviklingen. Samlet set er dette kun en af de mulige måder at styrke sikkerheden på socialebstedet for sociale medier., Generelt designer Soft .arearkitekten eller Tech Lead, der arbejder på dit projekt, den tilsvarende strategi og vælger sikkerhedsværktøjer og praksis, der passer til dit produkt.

Skriv et svar

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *