Skracacz linków - Architektura Systemu

แชร์
ฝัง
  • เผยแพร่เมื่อ 27 มิ.ย. 2024
  • Dołącz do społeczności na Discordzie: / discord
    Hej, oto przykładowa architektura aplikacji służącej do skracania linków
    Jeśli film się podobał to zostaw kciuka w górę i suba ❤️
    Inne socialki:
    ✅Instagram: / codingchef_
    ✅TikTok: / coding.chef
    ✅Facebook: profile.php?...
    📩 hello@codingchef.pl
    polecany hosting i zakup domen: seohost.pl/?ref=61854
    [00:00] - wstęp
    [00:14] - wymagania i przypadki użycia
    [00:47] - obliczenia bazodanowe
    [01:57] - model danych
    [02:30] - haszowanie linku
    [04:04] - base62
    [05:18] - snowflake_id
    [05:56] - HTTP 301, 302
    [06:45] - podsumowanie architektury
  • วิทยาศาสตร์และเทคโนโลยี

ความคิดเห็น • 47

  • @sawomirrembiesa2993
    @sawomirrembiesa2993 6 หลายเดือนก่อน +11

    ale ten kanał to jest złoto ❤️

  • @aleksandrapartyka4193
    @aleksandrapartyka4193 6 หลายเดือนก่อน

    Komentarz dla zasięgu, bo strasznie fajny kanał:)

  • @wiktormarkiewicz220
    @wiktormarkiewicz220 6 หลายเดือนก่อน +3

    Film na temat Discorda zainteresował mnie twoim kanałem, ponieważ od dawna się zastanawiałem jak oni dokładnie to robią.
    Teraz zrobiłeś jeszcze lepszy materiały
    Daję suba i czekam na kolejne filmy, dobrze ci to wychodzi, dodatkowo miniaturki są estetyczne

  • @Damian-sq6nj
    @Damian-sq6nj 6 หลายเดือนก่อน

    Zajebisty kanał, czekam na więcej kontentu

  • @damianbieniek1087
    @damianbieniek1087 6 หลายเดือนก่อน

    Mega się cieszę, że TH-cam podsunął mi Twój kanał. Super robota...!

  • @wildrubis9496
    @wildrubis9496 6 หลายเดือนก่อน

    Swietnie sie Ciebie slucha! Chętnie zobaczylbym film na temat robienia systemów rezerwacji w js

  • @lukaszpodgorski
    @lukaszpodgorski 6 หลายเดือนก่อน

    Super materiał :) Dziękuje!

  • @szemek4279
    @szemek4279 6 หลายเดือนก่อน

    Świetny film, świetny kanał! Czekam na więcej :)

  • @doktorku5606
    @doktorku5606 6 หลายเดือนก่อน

    Świetny kanał. Koncepty fajnie wytłumaczone.

  • @mcgregor5130
    @mcgregor5130 6 หลายเดือนก่อน

    Kozak materiał i super kanał, czekam na kolejne filmy

  • @zagrajmer8064
    @zagrajmer8064 6 หลายเดือนก่อน

    Świetny kanał, super odcinek. Oby wiecej takich filmow :D

  • @PiotrSygutPL
    @PiotrSygutPL 6 หลายเดือนก่อน

    Świetnie wytłumaczone 👍

  • @mpowereer6992
    @mpowereer6992 6 หลายเดือนก่อน

    kozackie stary, fajnie tłumaczysz i spoko się Ciebie słucha, dałem suba

  • @zbyszekfrom_biedronka8825
    @zbyszekfrom_biedronka8825 6 หลายเดือนก่อน

    Mega fajne i ciekawe filmy

  • @arturek8217
    @arturek8217 6 หลายเดือนก่อน

    Zajebiste :3

  • @Wigtor
    @Wigtor 6 หลายเดือนก่อน

    Coding Chef is still cooking! Super film

  • @ITeaMorning
    @ITeaMorning 6 หลายเดือนก่อน +2

    Dawno temu pod mój kanał potrzebowałem skracać linków -przez pewną chwilę poważnie zastanawiałem się, czy samemu go nie napisać.
    Po obejrzeniu tego wideo powiem tyle - Cieszę się że tego nie zrobiłem xd.

    • @coding-chef
      @coding-chef  6 หลายเดือนก่อน

      Haha, wiesz - to architektura pod raczej większy system. W przypadku indywidualnego kanału na własne potrzeby byłoby to o wiele prostsze 😁

    • @ITeaMorning
      @ITeaMorning 6 หลายเดือนก่อน +1

      ​@@coding-chef wiem, wiem xd - ale tez prawda ze to jest na tyle skomplikowany system ze pisanie i utrzymywanie tego jako single dev by mnie kosztowało wiecej czasu niż wartość jaką by przyniosło.

    • @coding-chef
      @coding-chef  6 หลายเดือนก่อน

      @@ITeaMorning taa, nie ma co wymyślać koła na nowo jak już są systemy które to robią

    • @madghostek3026
      @madghostek3026 6 หลายเดือนก่อน

      Wydaje mi się że to i tak jest wartościowy projekt nawet w zamyśle na jednego użytkownika, znacznie się to upraszcza bo w sumie to nie trzeba myśleć o niczym poza strukturą bazy i hashowaniem tych linków, ja coś takiego robiłem właśnie jako pierwszy mały serwis internetowy i wyszedł działający projekt, nauczyłem się chociażby stawiać bazę danych 😀

  • @lukaszpiotrluczak
    @lukaszpiotrluczak 6 หลายเดือนก่อน

    Fajny materiał. Tym bardziej bolą błędy jakie się w nim pojawiają :(
    Łap suba :)

  • @kamil7272
    @kamil7272 6 หลายเดือนก่อน

    Dobry materiał. Zdradzisz proszę czego używasz do tworzenia napisów, rysunków i animacji? Może rodzinę Adobe?

  • @Rewolex
    @Rewolex 6 หลายเดือนก่อน +1

    W moim odczuciu bardzo słychać w twoim głosie japoński akcent, stąd moje pytanie czy masz w przodkach Japończyków?

    • @coding-chef
      @coding-chef  6 หลายเดือนก่อน

      🇯🇵🇯🇵

  • @owszystkim5415
    @owszystkim5415 5 หลายเดือนก่อน

    A ja zawsze myślałem, że to jest encodowane, a to jest po prostu zapisywane w bazie danych.

  • @zbyszekfrom_biedronka8825
    @zbyszekfrom_biedronka8825 6 หลายเดือนก่อน

    Planujesz może oprócz teorii pokazać jakieś praktyczne filmy jak tego typu rzeczy się robi?

    • @coding-chef
      @coding-chef  6 หลายเดือนก่อน +3

      praktyczne materiały trwałyby zbyt długo albo ciągnęły się w kilkuodcinkowych seriach czego wolę unikać

  • @bogus1666
    @bogus1666 6 หลายเดือนก่อน +1

    Nagrasz jak działa librus ?

    • @coding-chef
      @coding-chef  6 หลายเดือนก่อน +1

      haha, a co, chcesz sobie oceny dopisać? 😁

  • @mariuszdrabik7119
    @mariuszdrabik7119 6 หลายเดือนก่อน

    Czy MongoDB nie klęknie przy takiej ilości użytkowników?

    • @marcinkeczek4128
      @marcinkeczek4128 6 หลายเดือนก่อน

      W zależności od konfiguracji. Ale można powiedzieć: nie.

  • @cauchyPl
    @cauchyPl 6 หลายเดือนก่อน

    Czy mogę zachęcić Twój film na zajęciach online?
    Pokazać fragment?
    Chodzi o zajęcia programowania dla nastolatków.
    Jako przykład aplikacji?
    Jak mogę potem wysłać Ci link żebyś dał znać czy to jest dla Ciebie ok?

    • @coding-chef
      @coding-chef  6 หลายเดือนก่อน +1

      jasne, możesz pokazać :)

    • @cauchyPl
      @cauchyPl 6 หลายเดือนก่อน +1

      Bardzo dziękuję.
      Wrzucę później link w komentarzu i dasz znać czy jest ok....@@coding-chef

    • @TheMrBazil
      @TheMrBazil 6 หลายเดือนก่อน +1

      Czemu zadajesz takie pytanie? To jest youtube, twórca wrzuca -> ty możesz to wykorzystać oczywiście nie naciągając typu "to ja stworzyłem itp", ale dalej ten temat tu omawiany to "kalka" z it for/redditów, innych yt twórców i nie trzeba się pytać o wykorzystywanie takich materiałów jako dodatek :D. Tak to nigdzie na żadnych zajęciach dużych twórców filmy by nie były wykorzystywane, bo tam w spamie komentarzy nikt by nie odpisał na pytanie o pozwolenie :D

    • @cauchyPl
      @cauchyPl 6 หลายเดือนก่อน +1

      @@TheMrBazil Dzięki! Nie wiedziałem.
      Ale pomyślałem że będzie miło autorowi zapytać.
      Aczkolwiek słusznie - ryzykowne - mógł nie odpowiedzieć!

    • @TheMrBazil
      @TheMrBazil 6 หลายเดือนก่อน +2

      @@cauchyPl na 100% takie pytanie to miła sprawa dla autora także rozumiem też :D. Jedynie jakby czasem ktoś nie odpisał to i tak można wykorzystywać takie publiczne materiały i nimi się posiłkować :D

  • @Ursus50_
    @Ursus50_ 6 หลายเดือนก่อน

    Ciekawy film, jednak czy dodawanie na diagramie obok bazy danych/serwera informacji o tym jak realizujesz funkcję, która skraca link nie jest błędem? Dodatkowo według mnie powinieneś zrobić bardziej formalny diagram korzystając z UML.

    • @coding-chef
      @coding-chef  6 หลายเดือนก่อน +1

      Dlaczego dodanie informacji o haszowaniu miałoby być błędem? To filmik edukacyjny, jak można to robić, a nie tajna architektura jakiejś aplikacji 😄 I nie zgadzam się, że powinienem korzystać z UML, bo to youtube i ten film ma być przyjemny do oglądania i łatwy do zrozumienia

  • @dariuszmion2764
    @dariuszmion2764 6 หลายเดือนก่อน

    Cache przed bazą nie może być jeśli zbieramy statystyki lub logujemy przejścia przez skrócony link.

    • @coding-chef
      @coding-chef  6 หลายเดือนก่อน

      dlaczego? wszystkie dane przed pobraniem z cache przelatują przez serwer, w którym można ogarniać statystyki

    • @dariuszmion2764
      @dariuszmion2764 6 หลายเดือนก่อน +1

      @@coding-chef Ale i tak muszą być aktualizowane na bazie danych przynajmniej w wypadku zapisu ilości odsłon w rekordzie danych skróconego linka. Nie wiem co Masz na myśli "przelatują przez serwer, w którym można ogarniać statystyki" - hmm dodatkowy serwer bazodanowy do statystyk " ?
      --
      Podałeś przykald z Snowflake_ID, który ma np: 1735737809576132608 19 cyfr.
      Zamiana na base62 daje taki skrót 24dHfvustie. Ma on 11 znaków, co nie jest zgodnie z Twoimi założeniami, ze skrót powinien mieć 6 znaków.

    • @coding-chef
      @coding-chef  6 หลายเดือนก่อน +2

      @@dariuszmion2764 tak, np dodatkowy serwer który może pobierać dane z kolejki po zwróceniu linku z cache
      Odnośnie snowflake id to wiem, 6znakowy hash odnosił się do początkowych funkcji haszujących.
      Dzięki za zwrocenie uwagi, taką krytykę lubię. Następne filmy będą dokładniejsze żeby nie pozostawiać niedomówień 🫡

  • @Gienek-pm1zd
    @Gienek-pm1zd 6 หลายเดือนก่อน +1

    Redis wydaje się w tym przypadku niepotrzebnym elementem który komplikuje architekture. MongoDB ma wbudowany system cashowania ostatnich zapytań w pamięci RAM (tak jak by mini redis) przez cą są bardziej wydajne i nie obciążają bazy danych.

    • @coding-chef
      @coding-chef  6 หลายเดือนก่อน +1

      Hmm, na pewno jest to kwestia do przemyślenia. To, co mi teraz przychodzi do głowy to musielibyśmy się upewnić, że serwer z mongo ma odpowiednią ilość pamięci RAM, aby pokryć zapotrzebowanie working set i przy tym działać cały czas wydajnie, co przy 10 milionach rekordów dziennie mogłoby być ciężkie, więc pewnie trzeba by pójść w sharding danych?

  • @marcinkeczek4128
    @marcinkeczek4128 6 หลายเดือนก่อน

    Jeżeli używasz redisa, to po co ci mongo?