Web_programming
رفتن به کانال در Telegram
Sharif web programming If you have any questions, please feel free to ask(@yumcoder)
نمایش بیشتر1 052
مشترکین
اطلاعاتی وجود ندارد24 ساعت
-17 روز
-630 روز
آرشیو پست ها
1 052
یکی از منابع بسیار خوب برای آشنایی با raft در لینک زیر آورده شده است. این پروتکل در پیاده سازی سیستم های توزیع شده کاربرد دارد.
http://thesecretlivesofdata.com/raft/
https://raft.github.io/
1 052
یک کاربر در تلگرام چه تعداد connection با سرور دارد:
۱. یکی برای درخواستهای رایج
۴. چهار تا برای upload
۲. دو تا برای دانلود
۱. یکی برای دریافت internal push
۱. یکی برای کارهای موقتی و حساس
1 052
تلگرام چگونه فایل upload میکند:
- بر اساس سرعت اینترنت شما میزان بافر چانک را مشخص یکند
- در حداکثر ۴ connection فایل را به صورت پارت پارت به سرور ارسال میکند (تعداد پارت ها تابعی است بر اساس حجم فایل)
- پس از ارسال همه فایلها یک api دیگر را فراخوانی میکند که وظیفه ان ایجاد فایل نهایی بر روی media data center است و هچنین تنظیمات مرتبط با cdn برای ان فایل (و البته تهیه چند نسخه از فایل)
به عبارت دیگر در حالتی که اینترنت سرعت مناسب دارد فرایند را میتوانید اینگونه تصور کنید ۴ thread در چانک های موازی یک فایل در پوشه tmp سرور ایجاد میکنند وقتی کار پایان یافت بخشهای مختلف با هم ترکیب شده و در مقصد نهایی نوشته میشود. میدانیم که برای این scale حتما از network file system ها و یا فایل سیستمهای توزیع شده استفاده میکنند.
پ.ن. البته با پیچیدگی های کمی بیشتر :)
اکنون در دسترس! پژوهش تلگرام ۲۰۲۵ — مهمترین بینشهای سال 
