cookie

We use cookies to improve your browsing experience. By clicking «Accept all», you agree to the use of cookies.

Advertising posts
2 037
Subscribers
-324 hours
-67 days
-730 days

Data loading in progress...

Subscriber growth rate

Data loading in progress...

Жарайды, сіздерді триггер жасамай ақ қояйын, өшіріп тастадым постты. Көңілдеріңізге алмаңыздар. Одан да өзімнің систем дизайн посттарымды жазып жүре берейін 🙌
Show all...
🔥 17
Телеграм каналды ашқандағы ең алғашқы ойым осындай болған 😅 Абай атамыз блогер болған ғой негізі. Әрбір қара сөзі қазір инстаграм/телеграмда жеке пост болар еді.
Show all...
👍 9🔥 3👏 1😁 1
Эххх, систем дизайн туралы посттардан гөрі осы сияқты қысқа посттар реакция көбірек жинайды. Неге екен? Систем дизайн барлығына қызық тақырып емес ау. Менің жаңдайымда backend инженерге ғана қызық болуы мүмкін.
Show all...
😁 11
Негізі кодты сен жазбайсың, сенің екі қолың жазады. Сен жай ғана отырасың.
Show all...
😁 40 10👍 3
Таңертең ұйқыдан тұрып, leetcode есеп шығарып, MAANG-қа дайындалуға көңіл-күй болмаса тұрса - есепті көңіл-күйсіз шығара бер.
Show all...
😁 78 18🔥 12👍 7
Photo unavailableShow in Telegram
👍 42🔥 3🙏 2
Load balancer Load balancing дегеніміз жалпы желі трафигін белгілі бір ресурстарға бөліп беру әдісі. Қазіргі заманда бағдарлама қолданушылардың миллинондаған запросты бір мезетте қанағаттандыра алатындай болуы қажет. Келіп жатқан үлкен трафиктің барлығын қанағаттандыру үшін бэкте біраздаған серверлер болады. Ал load balancer дегеніміз сол қолданушылар мен серверлердің арасында тұратын құрылғы. Оның негізі мақсаты сол серверлерге қолданушылардан келген запростарды теңдей етіп бөліп беріп отыру. Load balancer-дің плюстарына мыналар кіреді: availability, scalability, security, and performance. Запросты құлап қалған серверге жіберместен істеп тұрған серверге бұрып жібереді. Сервердің тірі өлісін healthcheck арқылы тексереді. Яғни, серверді пинг жасап тұрады “тірісің ба?” деп запрос жіберіп. Серверлерді пулға қосып алу арқылы, трафик көп болса қосымша серверлерді қосады, ботлнек болған серверлерді анықтайды. DDOS шабуылдарға тосқауыл бола алады. Трафикті файрвол арқылы өткізіп тұрады. Трафикті бөліп отыру үшін алгоритмдердің өте көп түрі бар: - round robin: серверлерге трафикті кезектеп жіберіп отыру - weighted round robin: серверлердің мықтылығына қарай салмақтық коэффициент береді. Коэфициенті үлкен серверлерге көберіп трафик баратын болады. - Least connections: ең аз байланысы бар серверге запросты жібереді. - IP Hash: пайдаланушының IP адресіне негізделген тұрақты серверге жібереді. #sytemdesign #loadbalancer @amanutemuratov
Show all...
33👍 20🔥 16👏 2
Тек балғасы бар ұстаға кез-келген мәселе шеге болып көрінеді. ©Poor Charlie's Almanack.
Show all...
🔥 31👍 5
Latency & Bandwidth Жылдамдық өте маңызды болып табылады.Зерттеулер бойынша юзерлер сайтта бір нәрсені 0.2сек күтіп қалса “lag” деп атайды екен. Ал 1 секундқа ұзап кетсе юзердің назары басқа нәрсеге ауысып кетеді екен. Жылдам жұмыс істейтін веб сайттар, қолданушының ыңғайлылығын арттырады, қолданушыларды сайтта ұзағырақ ұстауға жақсы әсерін тигізеді, конверсияны арттырады. Жылдамдықты есептегенде ескеретін екі нәрсе бар: Latency: Жіберіліп жатқан пакеттің(сигнал) жіберілу уақыты мен қабылданып алу уақытының аралындағы ұзақтық. Bandwidth: Өткізу қабілеті. Яғни, бір мезетте бірден максимум сигнал өтіділігі. Қарапайым тілмен айтқанда, интернет "құбырының" көлемі. Құбыр неғұрлым кең болса, соғұрлым көп ақпарат өте алады. Latency Ол мына бөліктерден тұрады: Propagation delay - Сигналдың жіберуші мен қабылдаушының арасында жүруге кеткен уақыт Transmission delay - Пакеттің биттерінің жіберілу уақыты. Мысалы 10MB файлды 1Mbps арқылы 10сек, ал 100Mbps арқылы 0.1сек уақыт кетеді. Processing delay - пакеттің header-лерін процес жасауға кететін уақыт Queuing delay - Пакет процес жасалар алдын кезекте күту уақыты. Latency = Propagation + Transmission + Processing + Queuing delay. Жарықтың таралу жылдамдығы 3*10^8. Ал волокно арқылы 2*10^8 болады деп жуықтап алса болады. Себебі пакеттің жол жөнекей бірнеше роутерлерден өтеді және тб. Ал әрбір роутерге келген сайн айтылған Propagation + Transmission + Processing + Queuing delay барлығына уақыт кетеді. Өте алыс орналасқан қолданушыларға жылдап ақпаратты қалай жеткіземіз? Latency & Bandwidth жылдамдату қолдан келмес, бірақ серверлерді жақынырақ қою әбден мүмкін нәрсе. Жылдамдықты арттыру үшін бұл жерде шешім ретінде CDN қолданса болады. Content delivery network. Яғни, серверлерді барынша юзерлерге жақын қою. Жылмадықты арттыра алмасақ та қашықтықты азайтуға болады. traceroute google.com деп жазсаңыз пакеттің қай серверге неше уақытта баратын жолын толығымен көрсетеді. Ақпараттық басым бөлігі "High Performance Browser Networking (Ilya Grigorik)" кітабынан алынған. #systemdesign @amanutemuratov
Show all...
👍 42🔥 14 2👏 1
URL терген кезде не болады? Cіз url-ге http://amanworld.kz/path/resource деп терген кезде не болады? Оны түсіну үшін бірінше url дегенді түсініп алайық. URL бірнеше бөліктен тұрады. - http - Бұл сервермен байланыс орнату үшін қолданылатын протокол. - amanworld.kz - домен, яғни сервердің адресі - path - ресурстың сервердегі орналасқан жері - resource - сервердегі ресуратың өзі Қай сервермен байланыс орнату керек екенін түсіну үшін ең алдымен DNS деген сервиске хабарласады. Серверлер өзара тек IP адрестер арқылы сөйлеседі. amanworld.kz деген ол адамдарға түсінікті болсын деп істеп қойған. Сонымен, DNS дегеніміз қысқаша айтқанда телефоный справочник сияқты. amanworld.kz - 192.168.1.2 деген сияқты форматта барлық сайттың IP адрестерін сақтайды. Бірінші, адресті браузерді кэшінен, онда болмаса ОС кэшінен, онда да болмаса IPS-ке(интернет сервис провайдер) запрос жіберіп алады. DNS-тен IP адресті біліп алған соң сол IP адреске http запрос жіберіп байланыс орнатады. Байланыс TCP протоколы арқылы орнатылады, 3 way hand-shake (Толығырақ өздеріңіз оқып аларсыздар) тәсілі арқылы. Байланыс орнатқан соң сол серверге (192.168.1.2, яғни amanworld.kz-ке) path/resource деген запрос жібереді. Жауабын http күйінше алып, браузерде сізге қажетті ақпаратты көрсетіп береді. #systemdesign @amanutemuratov
Show all...
🔥 84👍 10👏 1